Skip to content

feat(t27b): tri t27b watch merges a stacked PR chain as steward.t27 decides (Closes #6285) - #6287

Merged
gHashTag merged 2 commits into
masterfrom
claude/t27b-watch
Oct 4, 2026
Merged

gHashTag merged 2 commits into
masterfrom
claude/t27b-watch

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 4, 2026 •

Copy link
Copy Markdown
Owner

Closes #6285

What

tri t27b watch N... merges a t27b PR stack in order. Each look at the first open PR:

tri t27b ready verdict stacked parent action
READY any gh pr merge --merge, next PR
WAIT any look again after --interval (150 s)
RETARGET MERGED gh pr edit --base master + gh pr update-branch (merge commit, no force-push)
RETARGET OPEN wait
RETARGET none / closed unmerged stop
RED, CONFLICT, BLOCKED any stop and print why
CLOSED any next PR

The table is watch_action(verdict, parent) in specs/tri/t27b/steward.t27, with 10 new tests (91 in all). Python reads GitHub and runs the action. It has no verdict branch of its own, and a CI check enforces that.

Why

On 2026-10-04 the steward merged #6247 -> #6249 -> #6254 -> #6258 with throwaway watchers under /tmp. One of them guessed: a single unreadable ready read skipped the retarget of #6254, and the watcher then stopped at RETARGET (skill slip Q33). Here the parent's state is read from gh pr list --head <base> --state all on every look, and an unreadable read means no action and a second look.

Evidence

  • gen/c/tri/t27b/steward.c is t27c gen-c output from the t27c Railway lab, sha256 75f0557421494de87305da65b0cfa673a40ba1e4a71569fcc35468e1760ef34e. On the lab, t27c test-report specs/tri/t27b/steward.t27 gives pass 91, FAIL 0, rate 100.0%. Locally, t27b test --check gives 91 passed and 1 invariant held.
  • scripts/ci/test_the_t27b_steward_decides_in_t27.py: PASS. scripts/ci/test_a_t27b_tick_reads_before_it_acts.py: PASS, with 4 new watch checks: each planted PR's action, a fixture never merges for real, a stack walked in order (done -> merged -> red stops it), and an unreadable parent is no action.
  • Mutation control: parent == 1 -> parent == 9 in the generated C fails 3 checks across the two tests. The file is restored to the lab's sha.
  • Live dry run against GitHub: tri t27b watch 6286 --dry-run --once printed #6286 WAIT parent=NONE -> WAIT validate=QUEUED, ....

Refs #6063

🤖 Generated with Claude Code

gHashTag and others added 2 commits October 5, 2026 04:41
…ecides (Closes #6285)

watch_action(verdict, parent) in specs/tri/t27b/steward.t27 says what to do
with one PR now: merge on READY, wait, retarget once the stacked parent
merged, stop on red, skip a closed PR. t27b.py reads GitHub and runs the
action; an unreadable read is no action (Q30). gen/c steward.c is the t27c
lab's gen-c output (sha256 75f05574...), test-report 91/91.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… first) (Closes #6285)

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 21:43:49 UTC

Summary

Status Count
Total Open PRs 44
PRs with Failing Checks 32
PRs with All Checks Green 12
READY 11
FAILING 32
PENDING 0
NO CHECKS YET 0

These columns do not partition: 11 + 32 + 0 + 0 = 43, and there are 44 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).

@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-04 21:44:27 UTC

Summary

Status Count
Total Open PRs 44
PRs with Failing Checks 32
PRs with All Checks Green 12
READY 11
FAILING 32
PENDING 0
NO CHECKS YET 0

These columns do not partition: 11 + 32 + 0 + 0 = 43, and there are 44 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 aa57ba4 into master Oct 4, 2026
25 of 27 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 watch: merge a stacked t27b PR chain, decided in steward.t27

1 participant