Repository navigation
Retract the false compiler-floor claims published in docs/design-ledgers.md: fix the ledger producer + persisted phase series so a regen at main renders the honest board - #9822
Merged
Conversation
…nd copy of the row layout and read the wrong field docs/design-ledgers.md on main published "typeck PASSES / borrowck PASSES" over a census of 233 typeck errors. The projection is generated and the tree was at its byte fixed point, so every mechanical check passed while the document asserted the compiler floor was met. THE PHASE MODEL IS SOUND. #9745's error-code -> phase rows are correct, and the live derivation `cargo_phase_board` classifies `RustcCodedDiagnostic` values directly and is unaffected. What shipped broken is the OTHER route to a board: a persisted receipt carries raw identity ROWS, and `phase_board_from_census_identities` re-derives the board by parsing them. That parser hard-coded field index 3 of a row `rustc_diagnostic_row` writes with three fields, so the code lived at index 1 and every identity came back Absent. Absent is read as "no code", never as "this reader cannot parse the row", so all 233 identities became unattributable, every checked phase counted zero, and zero rendered as PASSES. Two fixes, both at the root: - `rustc_diagnostic_row_code` lands beside `rustc_diagnostic_row` in extdeps.cargo_diagnostic. The field order is one fact; a reader that re-derives its own index is a second authority for it, and this one stayed silently wrong. - A zero count may render PASSES only when the census partition is complete. While identities remain unattributed, each is a candidate member of every phase and the zero establishes nothing -- rendering it as a pass is the absorbing arm of section 5 aimed at the compiler's own self-description. Nothing was transcribed: the genesis board is folded from the persisted identity rows and the seal digests are recomputed. The regen diff is one line, "typeck PASSES / borrowck PASSES" -> "typeck 233 remaining / borrowck not yet reached". EVIDENCE. Every existing test in the witness built its board by hand, which is why the census fold had no consumer. Five tests now execute that path: a typeck census row must be attributed and must not render PASSES (RED on the old reader), an empty census must still render PASSES (positive control), an unplaced code must forbid every phase from claiming a pass, the persisted genesis census must be fully attributed with its count joined to the identity list rather than to a literal, and the published standing must not claim typeck or borrowck passed. Revert arm run: restoring index 3 turns the first and fourth red. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VD4eDFDaUMy9vc4d1wAbG7
Picks up main@2bfb7df9 (dissolve stale INTAKE-AGENT-0A namespace admissions). The required-witnesses-floor lane failed on this branch's previous head for five STALE ADMISSION rows on BootArtifact / IntakeLinuxEnvironment / IsoImage relocating to gunbc.boot_artifact -- a tree-wide condition unrelated to this change, repaired on main after this branch's base. This branch's own namespace delta was already clean in that run: both new import edges (-> extdeps.cargo_diagnostic, -> tools.emission_entry_instrument) adjudicated ExplicitlyEvaluatedZeroDelta with a zero-module blast radius, the floor verdict was FloorClean, and all six changed witnesses passed. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VD4eDFDaUMy9vc4d1wAbG7
This was referenced Aug 31, 2026
Merged
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.
Auto-opened by session-dashboard for session
crisp-crab-162.Pushing to
session/crisp-crab-162advances this PR.Worker attestation
Before flipping this PR to ready for review, confirm each item:
npm test,cargo test) and the result.Closes #Ndirective.Summary
TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.
Test plan