Skip to content

test(claw): pin push_gate's reason-7 clamp boundary (#10746) - #10748

Merged
gHashTag merged 1 commit into
masterfrom
claw-mut-sweep31
Oct 19, 2026
Merged

gHashTag merged 1 commit into
masterfrom
claw-mut-sweep31

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

What

The mutation sweep of specs/claw/push_gate.t27 caught 5 of 6 mutants. The one that survived was k >= R_COUNT changed to k > R_COUNT in push_line. The existing out-of-range test used reason 42, which both versions clamp. This PR adds one test, the_first_reason_past_the_tables_writes_the_hold_line, which calls push_line(7, ...) and expects the 31-byte hold line. The production code is unchanged.

Seals

  • Resealed claw_ClawPushGate. It is the only seal that records push_gate.t27.
  • push_gate has no committed gen/c file.

Verification (Railway lab, master 2ee0cb6; #10745 since then touches none of these dependencies)

  • t27c test-report: 15 of 15 tests pass, with 0 vacuous passes.
  • t27b: 15 passed, 0 failed.
  • The line 92 mutant is now caught. t27c fails the new test, and t27b reports index out of bounds at line 93 (index of [7]u8). The sweep is now 6 of 6.
  • seal --verify: 32 of 32 over specs/claw/*.t27 and specs/verified/gen_file_check.t27.
  • python3 tools/dupe_scan.py: "no new duplicate body".
  • Stale-dependency scan over every seal that records a specs/claw/ spec: 2 entries, both in t27f_frame_cache and both already listed in seal --verify never checks dependency hashes; 21 claw seals record stale ones #10727 (claw/sarif, claw/text). None comes from this PR.

Closes #10746.

🤖 Generated with Claude Code

The mutation sweep of push_gate.t27 caught 5 of 6 mutants. The survivor,
k >= R_COUNT changed to k > R_COUNT, let reason 7 index the 7-entry tables
out of range. One test now writes reason 7 and expects the hold line.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@gHashTag
gHashTag enabled auto-merge (squash) October 19, 2026 01:12
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-19 01:12:26 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 44
PRs with All Checks Green 6
READY 5
FAILING 44
PENDING 0
NO CHECKS YET 0

These columns do not partition: 5 + 44 + 0 + 0 = 49, and there are 50 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=fad12492937a != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

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.

claw: push_gate.t27 mutation sweep leaves the reason-7 clamp boundary untested

1 participant