Repository navigation
XL-0 - #9894
XL-0#9894gunbai-bot[bot] wants to merge 7 commits into
Conversation
…key use-line derivation on the resolved kernel identity Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GXfYKNQTD3VfYyQcnJpxNU
…ion_equal=true) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GXfYKNQTD3VfYyQcnJpxNU
…llows-resolution witness The infer-side rewire guard and the emit-side use-line decision were each re-deriving "is this resolved node the kernel identity for this name" from the ident_span file marker. That is one semantic fact with two readers, which is the shape of the defect they exist to repair. Hoist it to v1.compiler.infer_env resolved_node_is_kernel_identity_for_name and have both consume it; the emitter's additional structureless-scalar condition composes beside it rather than folding into it. Enrol emit_import_lines_follow_resolved_binding_identity as the discriminating RED with two positive controls (a non-kernel import keeps its use-line; a kernel-SPELLED name whose kernel binding is structural keeps its use-line). Declare the rung drop recording that it executes in rust-unit-tests, outside the required aggregate, with the restoration trigger named at capability grain. Note: compiler_tests.rs is regenerated after the origin/main merge in the following commit; the authority here is the .dag. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BDnHQs9oE5AKJXe1vReU8v
Resolves six unmerged paths from the squash-merge of #9850. Two were genuine .dag authority conflicts, resolved toward this branch's newer content. One mattered beyond recency: main's side of 05_emit_rust.dag still carried string_contains(sp.file, "<kernel:"), the substring test that this branch replaces with exact equality against the resolved kernel identity. Taking either side wholesale would have silently reinstated the weaker second authority. Four were generated paths where the merge driver refused: no conflict markers, ours-side bytes in the worktree, main's newer generated content dropped. A marker grep reads that tree as clean; git ls-files -u does not. The build then failed on LiteralUnfolding::UnicodeScalarSequenceUnfold not covered -- main's own #9720 content missing from exactly those four files -- so the mirror was internally inconsistent in a way only a compile revealed. Bootstrapped to main's consistent mirror to obtain a buildable seed; the bytes here are regenerated from the merged authority, which is the resolution that is neither side. #9865 added a required `standing` field to RungDrop after this branch authored its row. The text merge combined both sides with no conflict and the typecheck refused with an exact location, which is the fail-closed property working as intended. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BDnHQs9oE5AKJXe1vReU8v
…erified) Round 2 after installing the round-1 candidate and rebuilding from the installed seed: first_generation_equal=true, and --required-regen-fixed-point reports fixed_point_equal=true referenced_first_generation_equal=true at 20e5f08. The rebuild matters: the first pass runs a binary that predates the change it emits, so a single pass can self-verify at divergence 0 for the wrong reason. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BDnHQs9oE5AKJXe1vReU8v
#9867 and this branch each added a witness to compiler_tests_rust.dag. The .dag authority merged cleanly and carries both; only the two generated projections conflicted, and the driver refused them with no conflict markers and ours-side bytes in the worktree. Regenerated from the merged authority rather than picking a side. The candidate carries both ct_import_lines_follow_resolved_binding_identity_test and ct_shell_service_output_projection_known_hole_probe_test -- taking either side would have dropped the other silently. Two rounds were needed because v1_compiler_compiler_tests_rust.rs is the emitter and compiler_tests.rs is what it emits, so each install reveals the next layer on rebuild. first_generation_equal=true at round 3. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BDnHQs9oE5AKJXe1vReU8v
Third mirror-touching merge this cycle. The .dag authorities merged cleanly; the three generated projections were refused by the driver with no conflict markers, and were resolved by regenerating from the merged authority rather than by taking a side. Verified intact after the merge: the consolidated kernel-identity predicate in both consumers, the emitted mirror carrying the renamed emit-side predicate, both this branch's witness and #9867's shell-service probe, and the rung-drop row. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BDnHQs9oE5AKJXe1vReU8v
|
Closing as a verified no-op. #9862 landed this branch's content at
The remaining commits on the branch are a merge of — sent from bold-carp-449 |
Auto-opened by session-dashboard for session
bold-carp-449.Pushing to
session/bold-carp-449advances 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