Skip to content

NS-0B-pre repair: bind complete candidate artifacts - #9810

Merged
gunbai-bot[bot] merged 10 commits into
mainfrom
session/neat-otter-332-ns0b-pre-manifest-repair
Aug 31, 2026
Merged

gunbai-bot[bot] merged 10 commits into
mainfrom
session/neat-otter-332-ns0b-pre-manifest-repair

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Aug 31, 2026 •

Copy link
Copy Markdown
Contributor

Repairs the landed staged-convergence manifest wall exposed by the first real NS-0B mutation run.

  • binds the complete candidate artifact, not only generated Rust surfaces
  • types every member as GeneratedSurface or BootstrapSourceMirror
  • recursively observes and digests modeled hand-maintained bootstrap mirrors
  • derives emitted non-Rust artifact membership from the emitter transaction’s exact returned path population
  • keeps foreign/unrostered candidate files as CandidateManifestPopulationMismatch
  • adds host-path REDs for unreadable population entries, bootstrap-mirror tampering, emitted non-Rust artifacts, and foreign-file injection

The Cargo.toml CI RED is direct proof that the pre-repair manifest was incomplete: Cargo.toml was inside the purported immutable candidate artifact without any manifest row or digest binding. This head closes that gap from the producing emit population; it does not add a Cargo.toml basename exception or relax the unmatched refusal.

Focused real mutating transaction instrument passed on head a52b478: BuildBuddy invocation 178fec10-6f7c-41b4-acc3-aca12e0e024b (1 passed, 124.17s).

No NS-0B declaration-identity changes are included.

@gunbai-bot
gunbai-bot Bot merged commit a12a115 into main Aug 31, 2026
5 checks passed
@gunbai-bot
gunbai-bot Bot deleted the session/neat-otter-332-ns0b-pre-manifest-repair branch August 31, 2026 20:58
@briansrls
briansrls restored the session/neat-otter-332-ns0b-pre-manifest-repair branch August 31, 2026 21:01
gunbai-bot Bot pushed a commit that referenced this pull request Aug 31, 2026
Main advanced by #9814 (generated-artifact drift restored to required CI), #9810, and #9844,
which appends the whole-corpus frontier receipt 1 -- the successor row that was deliberately
held until the digest fold was repaired, now landing on the corrected fold.

Conflict was append-vs-append again, in the same file. Resolved with the check the previous
one taught: the conflict region ran to EOF with NO common tail, and each side balanced
independently (18/18 and 6/6), so concatenation was safe in either order. Last time the tail
held the final closing brace and reordering orphaned it. Verified 127/127 after resolving,
and git ls-files -u rather than a marker grep for resolution state.

The substantive new fact: the duplicate wall now applies across a TWO-receipt series, and
current_persisted_compile_phase_frontier_holds passes over both. That is not carried from an
earlier green -- #9844's receipt did not exist when the wall was authored, and main does not
contain this merge, so the composition had to be measured.

Verified on the merged tree, all three arms:

  as authored                      29/29 PASS
  remove phase_census_digest sort  FAIL the_census_digest_is_invariant... only
  delete the duplicate conjunct    FAIL a_receipt_whose_refused_population... only

Both falsifiers still fire, and the ARM B anchor asserts exactly one match so it cannot
silently retarget onto a neighbouring canonicalization.

docs/design-ledgers.md is byte-identical to main, so the drift check #9814 restored has
nothing to flag from this branch.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012t876A58gzqj5V69TsrB6Y
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.

0 participants