Skip to content

Test audit 3: finish the test policy cut (the owner's five answers) - #1727

Merged
tamashi095 merged 9 commits into
mainfrom
codex/batch-test-policy-2
Oct 19, 2026
Merged

tamashi095 merged 9 commits into
mainfrom
codex/batch-test-policy-2

Conversation

@tamashi095

@tamashi095 tamashi095 commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Test audit 3: finish the test policy cut (the owner's five answers)

Closes #1726

The second owner-approved policy cut of the 2026-10 test audit. It applies the owner's answers (2026-10-19) to the five questions that test audit 1 (#1722) left open. The spec lists every change by answer.

What changed

  1. The 3 scalar-oracle pairing tests that were the only readers of the initial-matrix trace are deleted, together with that trace and the scalar state trace that only they read (about -1,100 lines). The oracle's render arithmetic is unchanged.
  2. The math EXP2/LOG2 digest is kept. It is the native witness of the open AArch64 defect Make the compressor's AArch64 release build bit-identical to the browser (LANE-3) #1019, and the PR that fixes Make the compressor's AArch64 release build bit-identical to the browser (LANE-3) #1019 deletes it.
  3. The host-core limiter_linked_session pin, which claimed to be a second cross-target corpus owner, is deleted. Its case moves into the G5 corpus, the single owner: the new case maximum/link_unlink_relink covers the limiter's link decision. G5's 5 earlier limiter cases all ran unlinked. The new pin is the same at Scalar, Simd4 and Simd8, and in the wasm leg (153 cases, 0 mismatches). The session checks of the old test stay.
  4. gain_pan_profile phase_profile is deleted, together with the graph and rack phase-profile probes and a tool example that used them. No product code used them. Rack's test-support feature is now empty, so it is removed.
  5. One-line size_of counts inside larger tests are trimmed. Where a line guarded a product relation, it is now that relation, and each one is red on its mutant. A new test-support accessor, graph::test_only_carry_counts, gives successor_swap exact carry-table counts. capi resource_lifecycle is unchanged: its 3 size_of lines feed exact caps.

21 files; -2,808 / +631 lines. No product code changed.

Review

An adversarial verifier gave READY, with 3 minors and 2 nits. All are folded in.

Evidence

On the tree merged with main fdb1c44, all of these pass: fmt, clippy -D warnings --all-features on 9 packages, 1,207 tests, check-workspace-policy.sh, run-wasm-gates.sh --without-v8-spill and both test-support CI scripts. After the fold, 675 tests passed again.

Residual risk

The new G5 case runs the linked limiter body on NEON under G5 for the first time, and nobody has checked its pin on AArch64 yet. If the AArch64 release leg goes red, the cause is an arm64 digest difference that the new case exposes, not a regression this PR makes.

CI folds

  • The first CI run failed in the lint job on two private intra-doc links in crates/true-peak-limiter/src/corpus.rs. ea1273a makes them plain code spans; all 31 steps of that job then passed locally.
  • The second run's workspace debug test job hit its 15-minute timeout while still passing tests (recent main runs take 14.5-14.7 minutes). One rerun of the failed job passed in 10.5 minutes. The timeout margin is tracked as its own issue.

🤖 Generated with Claude Code

tamashi095 and others added 9 commits October 19, 2026 13:52
…3 item 1)

The owner chose ASK 1 option A. Deleted from builtins-compiler: the three
actual_scalar_nonadjacent_* tests that read SCALAR_INITIAL_MATRIX_TRACE, the
initial-matrix trace, the scalar state trace and witness words they alone read,
the test_only_owner plumbing, their helpers and the two BoundaryVariant
variants nothing constructs any more. The oracle's render path is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
G5 did not cover the case: its limiter cases are one limiter_block call each,
with no retarget, no unlink and no relink. New true-peak-limiter corpus case 5,
maximum/link_unlink_relink, drives the prepared core block by block. Its pin is
the scalar oracle's (31b09672...), equal at Scalar, Simd4 and Simd8, natively and
in the wasm simd128 leg, and equal to a never-linking kernel's words. K2, K1,
M1, M2 and M6 turn it red at every width. The host-core PIN, its hashing and
its re-pin switch are deleted; the session checks stay. Appending the case
moves the compressor, builtin-tail and automation G5 indexes up by one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… item 4)

phase_profile was an ignored measurement no workflow runs. The graph and rack
phase probes had no product consumer: only test-support harnesses (gain_pan_profile,
the bus_send_profile example) and their own tests. All are deleted, with rack's
now empty test-support feature.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
successor_swap: the fourteen move-table byte formulas become carry-table
counts through a new test-support accessor, graph::test_only_carry_counts, so
every exact move count stays. host-core prepare: the field-by-field
effect-control formula becomes "the report is effect_control_resources of the
producers handed out". submix_strip: the by-hand vector bytes become "a bus
insert is charged as the same track insert". route_mute: the LatestCell layout
line goes; the allocator ceiling stays. graph-compiler launch fixtures: the
literal slot reservation becomes the product's checked_for total. capi
resource_lifecycle is unchanged: its size_of lines feed exact-cap peaks no
ABI report exposes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Residual-risk note for the new G5 case on aarch64; the host-core prepare row names
the effect-compiler charge tests; the G5 append rule allows a delegated block to
grow; 996-K2's old digest marked historical; comment order in support/successor.rs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
rustdoc -D warnings refused intra-doc links from the public corpus module
doc to the private LimiterCore::process_block and LINKED_RETARGETS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tamashi095
tamashi095 merged commit b913500 into main Oct 19, 2026
42 of 44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant