Skip to content

Build [one affiliation relation each] and [filter label is the method name] - #278

Merged
jesshaley merged 4 commits into
V2from
claude/build-other-10
Oct 29, 2026
Merged

jesshaley merged 4 commits into
V2from
claude/build-other-10

Conversation

@jesshaley

Copy link
Copy Markdown
Collaborator

Builds two decisions recorded in did-schema schemas/V_eta_go_forward_class_audit.md (Jess Haley, 2026-10-27).

[one affiliation relation each] (answers did-schema #148). A metadata_editor author with several affiliations now gets one affiliated_with relation per affiliation, in v1's order. Before, the whole document was carried as v1 (carry-054). AuthorData.addAffiliation grows the field into a struct array.

  • +migrators_j/metadata_editor.m: reads every affiliation, not only a scalar one. The carry-054 check and the header's "OPEN" note are removed.
  • +roundtrip/metadata_editor.m: rebuilds the struct array; one relation still rebuilds a scalar struct.

[filter label is the method name] (answers did-schema #136). A filter label that differs from its type is written verbatim to the filter method's name. Before, the pyraview was carried whole as v1. The term and parameters still come from the type and the v1 parameters. An all-pass filter builds no method, so a differing label there still carries (carry-007).

  • +migrators_j/private/jFrequencyFilter.m: passes 'Name' to did2.build.method.
  • +roundtrip/pyraview.m: reads the label back from method.name, falling back to the type.

Tests:

  • Inverted, not deleted (the carry tests are now the build tests): testMigratorsJ/testMetadataEditorAuthorWithTwoAffiliationsGetsARelationEach and testMigratorsJMeasurementFilter/testALabelThatDiffersFromItsTypeIsTheMethodName.
  • New round-trip cases on writer-shaped documents: a two-affiliation form in testRawV1RoundTripSession/testWriterFormsConvertAndRoundTrip, and a named filter in testRawV1RoundTripPyraview/testWriterShapesRoundTrip.
  • Written without MATLAB, so this PR's CI is the first run.

After merge, did-schema will drop carry-054, close OPEN_WORK #141, and mark both decisions Built.


Generated by Claude Code

… name]

metadata_editor: an author with several affiliations gets one affiliated_with
relation per affiliation, in v1's order, instead of carrying the document whole
as v1 (carry-054); the round trip rebuilds the struct array. Decided by Jess
Haley, 2026-10-27 [one affiliation relation each] (did-schema #148).

filter (pyraview): a label that differs from its type is written verbatim to
the filter method's name instead of carrying the pyraview (carry-007 stays for
the all-pass, which builds no method); the round trip reads it back from
method.name. Decided by Jess Haley, 2026-10-27 [filter label is the method
name] (did-schema #136).

Tests: the two carry tests are inverted; the writer-shaped round-trip suites
gain a two-affiliation form and a named filter.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FxKLA8Tbf9cpvDe7fuVeKf
The migrator no longer writes [carry-054] (one affiliated_with relation per
affiliation), so tools/check_carry_citations.py R4 failed on the marker that
still listed it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FxKLA8Tbf9cpvDe7fuVeKf
…nal order

The test needs a carried pyraview; it used a label that differs from its type,
which [filter label is the method name] now converts (the label is the method's
name), so the run made 5 documents, not the 1 carried source. A fractional
filter order still carries ([small unread settings] (2)).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FxKLA8Tbf9cpvDe7fuVeKf
@jesshaley
jesshaley marked this pull request as ready for review October 29, 2026 04:55
@jesshaley
jesshaley merged commit dde94c4 into V2 Oct 29, 2026
11 checks passed
@codecov

codecov Bot commented Oct 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 0.00%. Comparing base (8552835) to head (49cb0b7).
⚠️ Report is 19 commits behind head on V2.

Additional details and impacted files
@@    Coverage Diff    @@
##   V2   #278   +/-   ##
=========================
=========================

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants