Skip to content

feat(t27b): tri t27b gen-check proves steward.c against master t27c on the t27c lab - #6233

Merged
gHashTag merged 1 commit into
masterfrom
claude/t27b-gen-check
Oct 4, 2026
Merged

gHashTag merged 1 commit into
masterfrom
claude/t27b-gen-check

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 4, 2026

Copy link
Copy Markdown
Owner

Closes #6231
Refs #6063 #6226

What

tri t27b gen-check [--spec specs/tri/t27b/steward.t27] [--gen gen/c/tri/t27b/steward.c] [--json] (scripts/tri_loop/t27b.py). The local spec goes to the Railway lab t27c-lab as base64 inside railway ssh (chunked at 64000 chars; one kernel argument is capped at 128 KiB -- 80 KB went through, 133 KB returned "Argument list too long"). The lab runs its master /data/target/release/t27c gen-c in /tmp/t27b-gen-check-<token> (removed by an EXIT trap) and answers sha256 + byte length; the tool compares with the local gen file.

  • SAME <sha12> exit 0, DIFFERS lab <sha12> local <sha12> exit 1, UNREACHABLE <reason> exit 2 (ssh failed, partial answer, garbled digest, or gen-c itself failed -- never a guess).
  • Second line: lab binary path, mtime, sha, and the lab checkout commit; STALE? when the binary is older than the checkout.
  • Overrides: T27C_LAB_RAILWAY, T27C_LAB_DIR (+ T27C_LAB_SERVICE, T27C_LAB_ENV, T27C_LAB_BIN, T27C_LAB_SRC); T27B_GEN_CHECK_FAKE for tests.

Live

$ tri t27b gen-check
SAME 7ab146aa8a9d
lab t27c /data/target/release/t27c mtime 2026-10-04T18:21:13Z sha f5815984182e; lab source 88862a949 (2026-10-04T18:18:36+00:00)

Also live: chunked path (3 commands) SAME; a local copy with one extra byte DIFFERS; a missing railway CLI UNREACHABLE exit 2; no scratch dir left on the lab.

Test

scripts/ci/test_the_t27b_gen_check_asks_the_lab.py (loop-tools-gate, loop-tools-tracked), no network: SAME, DIFFERS (incl. a same-length byte flip), five UNREACHABLE cases, chunk reassembly byte for byte, CLI exit codes 0/1/2 through T27B_GEN_CHECK_FAKE. Mutation control: a copy comparing lengths only calls the flip SAME. 21/21 ok. The three existing t27b tests and loop-tools-tracked.sh still pass.

Census: shell run: steps 285 -> 286 (the new step), re-blessed.

Not touched: specs/tri/t27b/steward.t27, gen/c/tri/t27b/steward.c, t27b_rules.py.

🤖 Generated with Claude Code

…n the t27c lab

gen/c/tri/t27b/steward.c is t27c gen-c output (L2), and t27c runs on the
Railway lab t27c-lab, never on the Mac. The byte-identity proof was a
hand-run railway ssh per PR. tri t27b gen-check sends the local spec to the
lab (base64, chunked under the 128 KiB argument cap), runs the lab's master
t27c gen-c in a scratch dir it removes, and compares sha256 and length:
SAME 0, DIFFERS 1, UNREACHABLE 2 (never a guess), plus the lab binary's
path, mtime, sha and the lab checkout commit.

Live: SAME 7ab146aa8a9d (lab t27c 18:21:13Z, source 88862a9).

Census: shell run: steps 285 -> 286 (and runner-named 264 -> 265): the new
loop-tools-gate step for scripts/ci/test_the_t27b_gen_check_asks_the_lab.py.

Closes #6231
Refs #6063 #6226

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-04 18:40:53 UTC

Summary

Status Count
Total Open PRs 43
PRs with Failing Checks 30
PRs with All Checks Green 13
READY 12
FAILING 30
PENDING 0
NO CHECKS YET 0

These columns do not partition: 12 + 30 + 0 + 0 = 42, and there are 43 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=8597b6ded596 != 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).

@gHashTag
gHashTag merged commit d54ef2d into master Oct 4, 2026
21 of 25 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

Development

Successfully merging this pull request may close these issues.

tri t27b gen-check: prove gen/c/tri/t27b/steward.c byte-identical to master t27c gen-c on the t27c lab

1 participant