Un-break CI: restore the DOC-04 banner, re-arm the disarmed gates, revert a stale merge's silent ledger regression - #744
Open
hyperpolymath wants to merge 3 commits into
Open
Conversation
3661d98 removed the DOC-04 banner from README's "Status" section, which tools/check-doc-truthing.sh requires. That failure has held the `build` job red on main since 2026-06-28. Also repoints three references to `SOUNDNESS-LEDGER.adoc` -- a file that does not exist -- at docs/SOUNDNESS.adoc. tools/check-doc-truthing.sh now exits 0. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
GitHub Actions skips all later steps in a job once one fails, so the
doc-truthing failure silently disarmed the soundness-ledger gate, the
capability-anchor gate and the formatting check. Those report `skipped`,
not `failure` -- worse than red, because `skipped` reads as absence of news
rather than as a gate that never ran.
`if: ${{ !cancelled() }}` makes the four gates independent: each reports its
own verdict regardless of the others, while a cancelled run still stops.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
… merge 152d959 merged origin/claude/capability-test-anchors, a branch whose copy of docs/SOUNDNESS.adoc predated three fixes that had already landed on the main line. The merge took the branch's whole file, reverting all three (27 insertions, 51 deletions, none of them new content): 1. The #555 row was re-pointed at `test_resume_nontail_known_shallow`, a name that was only ever planned and has never existed in the tree. The pin that does exist -- `test_resume_nontail_xfail`, test/xfail/test_xfail_pins.ml:56, over the same fixture and the same behaviour -- is what the seal hashes. 2. The "Pinned-residual discipline" section was deleted -- the section naming the XPASS hand-off as the one place the anti-drift machinery relies on a human. 3. Two claims regressed to being false. #624 was restated as "flagged but not yet fenced" although f020a6f fenced it, and the mechanisation paragraph was rolled back to "#620/#621", dropping P-2, P-3, F-3 and F-4. The row also reverted to `|*residual (pinned)*` markup, which the gate's row parser cannot see at all, so property 5 reported "no pinned/open rows found (fail closed)". This is a revert of that revert: docs/SOUNDNESS.adoc is restored to 808e859, the main-line parent of the merge. Nothing has touched the file since, so no later work is lost. The seal is unchanged and was never wrong -- the ledger was the side that drifted -- so tools/soundness-anchors.sha256 is NOT resealed. tools/check-soundness-ledger.sh now exits 0 on all five properties. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Warning Review limit reachedNext included review available in 2 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (3)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
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.



The
buildjob has been red onmainsince 2026-06-28. Three separable causes, one commit each.1. The red itself (
3d25fb6)3661d98removed the DOC-04 status banner fromREADME.adoc, whichtools/check-doc-truthing.shrequires. Restored, plus three references toSOUNDNESS-LEDGER.adoc— a file that does not exist — repointed atdocs/SOUNDNESS.adoc.2. Why nothing else reported (
5c0366a)GitHub Actions skips every later step in a job once one fails. The doc-truthing failure therefore disarmed the soundness-ledger gate, the capability-anchor gate and the formatting check for ten weeks. They reported
skipped, notfailure— worse than red, becauseskippedreads as absence of news rather than as a gate that never ran.if: ${{ !cancelled() }}on all four makes each report its own verdict.3. What the disarmed gate was hiding (
f3a70ae)With the gates re-armed, the soundness-ledger gate failed on three of its five properties. The cause is not a soundness regression:
152d959(2026-08-18) mergedorigin/claude/capability-test-anchors, a branch whose copy ofdocs/SOUNDNESS.adocpredated three fixes already on the main line. It raised a real conflict, and the conflict was resolved by deleting main's side. Replaying the merge shows this directly:Git's own auto-merge output still contained both of main's fixes next to the conflict markers. Diffing that replayed tree against what was committed gives 60 deletions, 0 insertions — the six marker lines plus 54 lines of main's side, nothing added: the signature of a pure "take theirs" resolution. Against its first parent the merge is 27 insertions / 51 deletions with no new content, reverting all three:
test_resume_nontail_known_shallow, a name that was only ever planned (in the 2026-06-17 handoff) and has never existed in the tree. The pin that does exist,test_resume_nontail_xfail(test/xfail/test_xfail_pins.ml:56), covers the same fixture and the same behaviour and is what the seal hashes.XPASShand-off as the one place the anti-drift machinery relies on a human.returncontrol flow — early returns silently mis-emitted #624 restated as "flagged but not yet fenced" althoughf020a6ffenced it, and the mechanisation paragraph rolled back to "feat(formal): stand up Coq formal/ track + mechanize the K-1 Wave-0 seed #620/feat(formal): F-1 preservation + grow K-1 (let/vars) + state P-2/P-3/F-3/F-4 #621", dropping P-2, P-3, F-3 and F-4.This commit restores the file to
808e859, the main-line parent of that merge. Nothing has touched it since, so no later work is lost.The seal was never wrong — and was NOT resealed
Property 3 fails with a message offering
--reseal (if intentional). Taking that offer would have hashed a test that does not exist: the computed digest wase3b0c442…— the SHA-256 of the empty string.tools/soundness-anchors.sha256is unchanged. The ledger was the side that drifted, and it is the side that was fixed.Verification
All three gates run locally from a clean tree:
Property 5 exercises the xfail harness, so its pass is a live confirmation that
test_resume_nontail_xfailstill fails-as-expected — the #555 hole is still pinned, not silently closed.🤖 Generated with Claude Code