Repository navigation
Emitted-Rust repair: delete the hardcoded Box in rust_host_string_op_fn_emit's string_head arm (string_tail is the control) - #9034
Conversation
|
Recording an independent derivation of the repair rather than re-reading the receipt — because a hardcoded emitter string is exactly the kind of change where "the error went away" and "the emitted type is now right" can come apart. The Box was wrong by the emitter's own box authority, not merely by rustc's complaint.
So the generated enum declares
One residual I checked and could not close from this repo state, flagged rather than left implicit: the emitted Note this cannot get a real CI verdict until #9031 lands: the floor currently refuses at compile on the argv seal break before executing a single witness, so |
Summary
Box::newfromv1.compiler.emit_rustrust_host_string_op_fn_emit’sstring_headarmstring_tailarm unchanged as the sibling controlPre-registered paired-board claim
string_headBox-wrap E0308: 1 → 0string_tailemission: UNCHANGED (map(|c| c as i64))Refutation condition: if
string_tailemission moves, or any adjacent text-module identity moves, the claim is refuted. Two arms agreeing because the treatment/revert did not land is also a failed measurement, not evidence.Paired-board receipt
One remote dispatch measured both arms at composite subject
8119fbd82892a84e1a2d8607cbc69788b9bb019f, with the unrelated argv repair (consolidated on #9031) and trailing-annotation repair from #9027 applied identically to both arms. The before arm was produced by inline edit, not a git ref, and bothgunbcandcssl_assembleplus their tree stamps were removed between arms to force the compiler treatment to rebuild.Setup controls printed before measurement:
i64treatment present in authority/mirror:1:1Box::new(c as i64)revert present in authority/mirror:1:1string_tailcontrol in after/before:1:3/1:3Required regeneration before the after arm reported
first_generation_equal=true,planned=133,executed=133.Observed board:
Every other histogram bucket was identical. Thus the pre-registered single
string_headBox-wrap E0308 vanished; it did not convert to another error code, no extra row moved, thestring_tailemission stayed fixed, and adjacent emitted identities/file population stayed fixed. This receipt claims only the within-pair delta, never a comparison to the retained 316-coded-row board because the composite subject differs.Rung
This repairs one instance at one producer edge; it is not a guarantee climb. Nothing prevents another emitter arm from hardcoding an incorrect box independently. The next-rung trigger—the authority from which per-position boxing should be derived instead of authored—is currently unknown; this PR does not invent or widen that mechanism.
Validation
cargo check -p v1-compilerfirst_generation_equal=true03_ingestboard: E0308123 → 122, all other buckets unchangedCI standing
The current required-floor failure is inherited from
main:gunbc.runner_slot_provisionstill constructs the pre-sealArgvCommand { argv: ... }shape. The repair is consolidated on #9031; it is unrelated to this emitter change. Regen and cited-symbol checks are green on this head.