feat(review): add fail-closed local review cascade (clean replacement for #26) - #33
Merged
aurascoper merged 6 commits intoJul 27, 2026
Merged
Conversation
This was referenced Jul 27, 2026
Owner
Author
|
Prerequisite chain for this PR is now open:
Once #35 lands, this branch needs its base advanced so the module is present, after which the full 26-test set should pass. Holding as draft until then. |
The structured-state replay test wrote its state manifest to root/manifest.json — the same path test_pipeline._manifest writes the *source* manifest to. That silently clobbered the fixture until #35 made the shadow bridge refuse to overwrite an existing artifact that differs. Same collision, same fix as #35 applied to its own suite: publish under root/shadow/. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Owner
Author
|
Correcting one figure in the description before merge. CI collected 86 eval tests, not the 62 I originally recorded: 62 was the staging baseline. This PR adds Description updated. Nothing failed — the number moved because the suite grew with this PR's own tests. |
aurascoper
marked this pull request as ready for review
July 27, 2026 17:02
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.
Clean replacement for #26, which had accumulated unrelated EEG research, Android
operations, and infrastructure work and was no longer reviewable as one change.
What this contains
The minimal tested dependency closure for the fail-closed local review cascade —
the first four commits of the original branch, with their identities preserved:
No cherry-picking or path surgery was needed. On the original branch the seven
unrelated commits were appended after these four rather than interleaved with
them, so the review cascade is a contiguous prefix and this branch is a lossless
extraction of it.
Diff scope (12 files):
Scripts/quarantine_dialectic_corpus.py(landed in #25) is modified by exactlyone line — adding
eligible_for_science: Falseto theDISPOSITIONcontract,which the cascade depends on.
Deliberately excluded
Preserved on the original branch, not transferred here:
Verification
Run against this branch:
Final verification
The structured-state prerequisite landed in #35. The branch was then merged
forward onto the current
docs/eeg-methods-scopehead without rewriting itsfour review-cascade commits.
Focused review-cascade suite:
Full Python CI:
83 passed
The eval collection is 86 rather than staging's 62 because this PR adds the
review-cascade suites: 62 on the base, plus the 24 new tests in
test_local_dialectic_review.pyandtest_local_open_weight_review.py(the focused set is 26, two of which already existed in
test_dialectic_corpus_quarantine.py).Additional gates:
The three deselections are pre-existing statistical-contract questions tracked
in #38. No entire module or file is excluded because of them.
One test change was required by the new base
5117a9erepoints the shadow replay test's output underroot/shadow/.It had been writing its state manifest to
root/manifest.json— the same pathtest_pipeline._manifestwrites the source manifest to — so every runsilently clobbered the fixture. #35's immutable-publication guard turns that
into an error rather than a silent overwrite, which is how it was found. The
identical collision existed in #35's own suite and was fixed there the same way.