Repository navigation
Drop the legacy experiment_design.csv migration (PP-03) - #274
Merged
Merged
Conversation
Spec ADR 0002 AR10 (9) and experiment-v1 section 7 (MorphoBricks-Spec PR 25): an experiment_design.csv in an output folder is never read to propose or prefill a draft. - Re-vendor the Spec at cc9820f with tools/vendor.py (--check identical); SPEC_COMMIT follows. - Remove migrate_legacy_design, LegacyMigrationRefused, MigrationNote, the legacy rule check, Draft.origin/legacy_missing/notes/unresolved_controls, the legacy_folder_missing and control_unresolved questions, and their sites in describe and the notebook text table. - Keep parse_design_bytes and design_issues (the written file's tests and the run's check use them). - P30 follows the amended Spec; migration tests deleted; add tests that an orphan experiment_design.csv is ignored by draft creation, describe and the notebook. - Docs and CHANGELOG (Breaking). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc # Conflicts: # CHANGELOG.md
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01G3qp9AxjpGPw9xfWAUJNqc
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Removes the one-way migration of a legacy
experiment_design.csvinto a draft (inventory row PP-03), following MorphoBricks-Spec PR 25 (merged542c936; ADR 0002 AR10 (9), experiment-v1 §7/§11/§12, conformance P30). Preprocessing never reads an output-folderexperiment_design.csvto propose or prefill a draft or description. The derived file stays an output.Changes
cc9820f5b84f01bbbb5c8e3f54e70ee13cb5e9ebwith the Spec'stools/vendor.py;--check: "identical to the Spec at its pinned commit".PIN.tomlupdated by the tool;draft_format.SPEC_COMMITfollows the pin (an answers draft saved under1bed024is refused as before,spec_commit_mismatch). The tool also rewrotetests/spec_fixtures/README.mdin its standard form.draft.py, about 165 lines):migrate_legacy_design,LegacyMigrationRefused,MigrationNote,_check_legacy_rules(and_probe,_legacy_groups,PLACEHOLDER_DATE, used only by it),Draft.origin,Draft.legacy_missing,Draft.notes, andDraft.unresolved_controlswith thecontrol_unresolvedquestion (only the migration produced it). Thelegacy_folder_missingquestion and its texts incli_describe.pyandnotebook_check_view.py; thedescribe"cannot be drafted from experiment_design.csv" branch; docstring mentions indraft_answers.pyandrun/draft_file.py. Notebook files: removals of two text-table lines only.design.parse_design_bytesanddesign_issues.design_issuesis the run's reconcile check.parse_design_byteshas nosrc/caller left but is exported and is the strict reader of the written file intest_design,test_design_file,test_spec_derived_designandtest_dataset; docstrings now say so. Say if you want it removed with those tests.test_spec_derived_design) follows the amended Spec:v13derived twice with a frozen clock moved by a day, both equal thev13golden, every row carries its repeat'sconfirmed_on, clock reads 0. Deleted the migration tests (11 intest_draft.py, 3 intest_cli_describe.py, 1 intest_draft_answers.py). Addedtests/test_orphan_design_csv.pyand atest_cli_describecase: an orphanexperiment_design.csvin the output folder (confirmed repeats, a control, odd groups, or a malformed file) is ignored by draft creation,describe(with and without--publish; output unchanged, file untouched) and the notebook (open and reopen).Verification
python tools/check.py: ruff, format, code rules and pytest: 5150 passed, 4 skipped, 0 failed. The 4 skips are environmental (case-insensitive file system x3, file-mode permissions x1), none intest_spec_*.main(a87f524) against this branch on the same vendored Spec fixtures: 37 valid fixtures run throughrun_experiment: 31 written, 6 refused identically on both (v04,v05,v06,v17,v28,v29: the test tree helper does not build their layouts).plane_histograms.csv,experiment_design.csvand the manifest minus time keys are byte-identical (SHA-256) for all. The refusal codes of the 135 invalid fixtures are unchanged. Result files: JSON of both runs compared equal.Not changed
Another agent's
claude/redesign-*notebook branches: no notebook UI file is touched beyond the two removed text-table lines.Generated by Claude Code