Skip to content

v2 manual tests: stop referencing test fns - #11579

Merged
gunbai-bot[bot] merged 9 commits into
mainfrom
conv-manual
Sep 20, 2026
Merged

gunbai-bot[bot] merged 9 commits into
mainfrom
conv-manual

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

The manual area of the v2 references to test code, cleared before the v2 refusal lands (node adhoc-f8d8160b-c82; owner decision: fix outright, no ledger). This clears every v2.test.manual.* row of the census in #11505's ledger except typescript_descriptor_node_run_support, which another PR takes.

  • field_access_emit_test, record_construct_emit_test: deleted six *_keystone test fns. Each only called another enrolled test fn in the same module. Each deletion has a typed WitnessDeleted removal in floor_grandfathered_roster.

  • sg_rc_layering_test: sg_rc_f1_dual_boundary_holds no longer conjoins the enrolled sg_rc_f1_value_dual_boundary_holds. That test still asserts its own fact.

  • inhabitant_neutralization_test: DELETED inhabitant_neutralization_same_language_cross_language_compile_accepts_holds, its import, and its conjunct in the 03_ingest_regression_guard. Routing the same assertion through the plain fn would have kept the reach while shedding only the marker the wall refuses, which is an escape hatch; ingest_bridge.ingest_cross_language_compile_accepts_holds stays the sole owner of that fact.

  • rust_wire_serde_naming_policy_test: deleted three UnifiedTestClaim data rows whose only content was a reference to this module's own test fns, which are already enrolled as themselves.

  • src/v1/compile.dag: dropped the twelve test_reference_debt rows this cleanup pays down (3 field_access_emit, 2 inhabitant_neutralization, 3 record_construct_emit, 3 rust_wire_serde, 1 sg_rc_layering). The two cross_language_add_python_to_typescript rows stay: that cleanup is NOT in this PR and belongs to another change.

  • src/v1/stage0/src/v1_compiler_compile.rs: the regenerated mirror, so the Rust seed Cargo builds carries the same ledger as the authored .dag. Verified by a local regen reaching first_generation_equal=true -- NOT by the heal job, whose green says a repair candidate could be produced inside its own checkout and carries no clean-tree assertion about the committed mirror.

Evidence, from a freshly built claim_batch with PASS counts checked against each file's roster: field_access_emit 3/3, record_construct_emit 3/3, sg_rc_layering 9/9, inhabitant_neutralization 6/6, rust_wire_serde 3/3, and floor_eval_step_budget_witness_test (the roster's removal fold) 27/27.

Left as they are: two witness_row_cost_basis.tsv rows still name deleted keystones. That file already holds stale rows (e.g. src/v2/lens/idempotency/…), so it is not an enrolment authority.

🤖 Generated with Claude Code

gunbc-ci-auto-heal and others added 2 commits September 18, 2026 04:31
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
… witness)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@gunbai-bot

gunbai-bot Bot commented Sep 18, 2026

Copy link
Copy Markdown
Contributor Author

Split: the cross_language_add_python_to_typescript row moved to #11593 (held pending an operator ruling on touched cost-debt witnesses). This PR now clears the other 10 manual-area rows, and its floor failure was that row alone.

— sent from snappy-koi-46

# Conflicts:
#	src/v2/workflow/floor_grandfathered_roster.dag
@briansrls
briansrls added this pull request to the merge queue Sep 19, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch Sep 19, 2026

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

REQUEST CHANGES — exact head bbf993e

The deletion-only conversions are sound, but two blockers remain.

  1. inhabitant_neutralization launders the same test verdict through an ordinary fn.

v2.test.manual.ingest_bridge.ingest_cross_language_compile_accepts_holds is exactly:

check_ingest_cross_language_compile_accepts()

This PR changes inhabitant_neutralization_same_language_cross_language_compile_accepts_holds from calling that test fn to calling the same Boolean helper, and inhabitant_neutralization_03_ingest_regression_guard_holds still conjoins the result. The production path and assertion are unchanged; only the marker that #11580 will refuse has been bypassed. That still re-runs the ingest/infer claim inside an inhabitant-neutralization claim, contrary to the one-interface rule, and it establishes an escape hatch where any test-to-test composition can survive by moving the callee body behind a plain fn.

Remove the imported helper, the local forwarding helper, and that conjunct. The enrolled ingest_bridge.ingest_cross_language_compile_accepts_holds remains the sole claim for the ingest fact. If the neutralization claim genuinely needs an input from that boundary, supply the boundary value rather than invoke the other claim's complete Bool oracle.

  1. The branch predates the live shrink-only ledger and would strand twelve paid-down rows.

This head is 58 commits behind current main. Current main's v1.compiler.compile test_reference_debt() still carries the exact rows this diff removes:

  • 3 field_access_emit rows;
  • 2 inhabitant_neutralization rows (<import> and the call);
  • 3 record_construct_emit rows;
  • 3 rust_wire_serde_naming_policy_test rows;
  • 1 sg_rc_layering row.

After this cleanup they are declared=1, observed=0; the ledger's equality ratchet requires their deletion. The six WitnessDeleted rows in floor_grandfathered_roster answer witness enrollment, not test-reference debt. Merge current main, delete these twelve rows from src/v1/compile.dag, and regenerate src/v1/stage0/src/v1_compiler_compile.rs. Keep the two cross_language_add_python_to_typescript rows; that cleanup remains in #11593.

Gate note: the exact-head run attached to bbf993e is the older four-job workflow and did execute the floor. Current main has since changed the required witnesses status to aggregate hosted compiler and clippy lanes, with no floor lane. After integrating main, the landing claim should name that current gate rather than call this historical exact-head run build-only.

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

REQUEST CHANGES — exact head de4d48e

The two semantic blockers from my prior review are closed correctly:

  1. inhabitant_neutralization no longer reaches the ingest-bridge claim through either the test fn or its ordinary Boolean helper. The import, forwarding helper, and conjunct are deleted, so this PR does not establish the ordinary-helper escape hatch.
  2. src/v1/compile.dag deletes the twelve paid-down debt rows while retaining the two cross_language_add_python_to_typescript rows assigned elsewhere.

One blocking generated-source mismatch remains.

src/v1/stage0/src/v1_compiler_compile.rs still contains all twelve rows removed from src/v1/compile.dag (the field-access, inhabitant-neutralization, record-construction, rust-wire-serde, and sg-rc identities). The ledger commit 431ec8db36bad57765b1784694d98c133658a0d3 touched only src/v1/compile.dag; the stage0 mirror is not in the PR diff.

That means the authored compiler source and the Rust seed used by cargo build -p v1-compiler disagree about the live admission ledger. The green compiler/clippy jobs only prove the stale mirror compiles. The green heal job is not proof of source/mirror equality: its workflow regenerates in its checkout and produces a sealed repair candidate; it does not fail merely because this stage0 file differs, and on this head the committed mirror demonstrably still carries the deleted rows.

Required repair:

  • regenerate and commit src/v1/stage0/src/v1_compiler_compile.rs from the updated src/v1/compile.dag so those same twelve rows disappear from the executable mirror;
  • update the PR body, which still says inhabitant_neutralization calls the plain helper and still claims the cross_language_add_python_to_typescript cleanup is in this PR. Neither statement describes this exact head.

The exact-head compiler, clippy, aggregate witnesses, and heal jobs are green. No floor ran and no floor receipt is claimed. I found no additional semantic defect in the manual-test cleanup.

…nce ledger as the authored .dag

The 'drop the twelve rows' commit changed only src/v1/compile.dag, so the Rust
seed Cargo actually builds still carried all twelve identities. Verified by
regeneration reaching first_generation_equal=true, not by the heal job: that
job regenerates inside its own checkout and carries no clean-tree assertion,
so a committed mirror difference does not fail it.

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVED at exact head c44f293.

Both prior source holds are closed. The neutralization guard now deletes the cross-test re-assertion rather than routing it through an ordinary helper, so it does not create the lexical-marker escape hatch. The authored test-reference ledger removes exactly the twelve paid-down rows while retaining both cross_language_add rows assigned elsewhere.

The stage0 fixed point is now committed. v1_compiler_compile.rs removes the same five identity families as src/v1/compile.dag; the full regeneration also carried the independently owed crate-layout and std_measure outputs. This is not being inferred from the former heal workflow: the exact-head required floor's Generated artifacts match their authorities step succeeded over the committed checkout.

The current gate shape has changed. On this exact SHA, required witnesses depended on successful floor, compiler, and clippy jobs. The floor built the compiler and witness executor, ran Nominal witnesses (one prepared subject, one fold), and checked generated artifacts against their authorities. All four jobs, including the aggregate status, succeeded.

That restoration does not by itself recreate the old materialization-cost instrument: this run published no required_floor_claim_cost/shared-fill artifacts. It establishes nominal witness execution and committed generated-artifact equality, not a present-versus-absent serve-cost comparison.

No remaining source-level hold.

@gunbai-bot
gunbai-bot Bot added this pull request to the merge queue Sep 20, 2026
@gunbai-bot

gunbai-bot Bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor Author

Enqueued at c44f293 with the side chat's approval and all four required jobs green.

What that green proves on this exact head, stated precisely because the gate shape changed mid-flight: the required workflow ran floor, compiler, clippy and the aggregate witnesses. The floor job checked out this commit, built the compiler and witness executor, executed the nominal witness fold, and verified that committed generated artifacts match their authorities — the clean-tree function that used to live in the separate heal workflow. That last step is what now stands behind the regenerated stage0 mirror, alongside the local first_generation_equal=true pass over 157 modules.

What it does not prove: this run published no required_floor_claim_cost.tsv, no shared-fill ledger and no present-versus-absent materialization receipt. So the floor's return does not reverse the warm-row deletions on #11573 or #11683 — those rows were unmeasured when deleted and remain unmeasured now. Nor does this retire gunbc.rung_drop witness_floor_off_the_required_gate: its trigger wants an observed required run over the enrolled population on the revision that lands, and this was a pull-request-head run.

— sent from proud-tern-736

Merged via the queue into main with commit 730a5c5 Sep 20, 2026
4 checks passed
@gunbai-bot
gunbai-bot Bot deleted the conv-manual branch September 20, 2026 08:28
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.

1 participant