Skip to content

EPIC: PR merge sweep 2026-10-19/20 -- handoff to the Queen (state, requests out, how to resume TRI CLAW) #11259

Open

Description

@gHashTag

Report channel for the pull-request merge sweep of 2026-10-19/20, handed to the Queen at 07:20Z because the working session ends. This epic deliberately carries none of the four dispatch headings, so it is never dispatched as bee work. Sub-issues are filed under it only if bee-shaped work appears.

Goal

Owner order (2026-10-18/19): merge every open pull request in gHashTag/t27 that passes the repository's rules, and let TRI CLAW do it around the clock.

The rules the sweep applied

  • Required checks green: validate, check-linked-issue, parse-ratchet, own-language.
  • Every other red must be inherited: the PR's failure set is a subset of master's newest finished run of the same check. A red master has since fixed is not inherited; update the branch and rerun.
  • Closes #N present (L1), not a draft, no conflict, no no-auto-merge label. Bee PRs (queen-*) are merged only by auto-merge-ready-prs.yml.
  • Foreign-line budget of the own-language gate respected.

State at 07:20Z on 2026-10-20

TRI CLAW lane: why it is not merging yet

The claw-merge job of gate-topology.yml is plan-only. Its App token cannot be minted: every run since 2026-10-19 shows "The level of access for permissions requested are not granted to this installation". The repository variable CLAW_MERGE_LIVE is unset (HTTP 404).

Requests out

Who What Default
Repository owner On the TRI CLAW App (https://github.com/settings/apps/tri-claw/permissions) set Contents to Read and write, save, then accept the new permissions on the installation. The lane stays plan-only.
Repository owner After that, run gh variable set CLAW_MERGE_LIVE --body 1 --repo gHashTag/t27. A session watcher used to do this automatically; it ends with the session. Lane stays plan-only; unset the variable to stop it later.
dmitrii-f-t27 Fix or bless the duplicate bodies on #11086 to #11093 and #11184 to #11191 (shared helper module, or tools/dupe_scan.py --bless). The PRs stay open; nobody edits his branches.
Whoever merges next (any session) Master's duplicate-bodies has been red on every master commit since at least 04:46Z (read the failing group names in the job log of the newest master run); find the merge that added the copy and ledger or factor it. Left for the next sweep; the sweep did not investigate.
Lab or steward A real Linux t27c seal --save for specs/ml/host_io_model.t27 (the value in #11105 was set by hand because --save refuses on macOS, #11103). The hand-set value stays; seal --verify is clean.
Repository owner Revoke the OSF token at osf.io (it is still in git history); give the TRI CLAW App security_events: write (#10501). Both stay open.
Repository owner (optional) Decide on an external heartbeat that dispatches gate-topology.yml about every 10 minutes (#11132): GitHub ran the */10 cron 2.1 to 7.5 hours apart. The lane runs on pushes to master and on the slow cron.

How to check the lane once it is live

  • The first claw-merge run after the grant has no "level of access" annotation; its step summary lists G lines (merged) and a reason for every other open PR.
  • It merges squash, pinned to the judged head sha, at most 5 per run, and leaves PRs younger than 10 minutes alone.

What bees can and cannot do here

Bees run in containers without a GitHub credential by design, so they cannot merge a PR, update a branch or set a repository variable. The continuing worker for this epic is the claw-merge lane in GitHub Actions, once it is live. No bee-shaped work is open right now.

Traps learned (short)

  • A watcher can judge a PR in the seconds before GitHub creates the update-branch commit; re-judge after the new head appears.
  • A verdict "REVIEW" means a human check is pending: compare the failing seal or row sets against master's run by hand before merging.
  • A PR that moves a Linux-only seal must not be merged before the Linux re-save; an owner-token merge bypasses that.
  • tools/check_elab_ratchet.py --update-baseline run on macOS writes iverilog-version 13.0; CI measures 12.0, so keep the 12.0 line.
  • The cron cadence claim in the docs was never measured; it is now corrected (claw README: the */10 cron is best effort, measured gaps are hours (Closes #11132) #11134).

Refs: #10978, #10973, #11094, #11100, #11105, #11132, #11134.

Activity

  1. gHashTag commented on Oct 20, 2026

    @gHashTag
    OwnerAuthor

    Update 07:30Z: the TRI CLAW merge lane is LIVE.

    • The repository owner set CLAW_MERGE_LIVE=1 at 07:25:00Z (gh variable set CLAW_MERGE_LIVE --body 1). The variable reads back as 1.
    • First live pass, workflow_dispatch run 39386458257 of gate-topology.yml: claw-merge ran with LIVE: 1 and finished green. It found nothing it may merge (no G line), so it merged nothing; master's newest commit is unchanged.
    • The TRI CLAW App token still cannot be minted (CLAW_TOKEN is empty; annotation "The level of access for permissions requested are not granted to this installation"). Consequences, read from the job script: merges fall back to github.token, which works for the squash merge but starts no workflow runs on master for the merge commit; and the branch-refresh half of the job (update-branch) is skipped, because it needs the App token. Saving Contents: Read and write on the App and accepting it on the installation removes both limits.
    • Rows 1 and 2 of "Requests out" above are therefore half done: row 2 (the variable) is done; row 1 (the App permission) is still open.
    • Cadence is unchanged: the cron runs hours apart ([spec] claw README: the */10 cron is best effort -- measured gaps are hours, not 10 minutes #11132), so pushes to master and manual dispatch are what start the lane.
    • All 20 non-bee, non-draft, unheld PRs were still BLOCKED by their own failures at 07:2xZ.

    🤖 Generated with Claude Code

  2. gHashTag commented on Oct 20, 2026

    @gHashTag
    OwnerAuthor

    Update 07:40Z: the cause of master's red duplicate-bodies is found and the request is sent. Measured with python3 tools/dupe_scan.py on master ae97ff06d: four new unledgered groups, chan, clamp01, flag_bit, scale, in specs/t27f/petal_glass.t27 (#10783) and specs/t27os/glass_window.t27 / doctor.t27 (#11254, #11256). Request to the lane author with two options (reuse the existing bodies, or bless) is on #11254 (comment 6285795172). Default: nobody edits their files; the check stays red until one lands.

    This also answers the earlier open row "master's duplicate-bodies red, not investigated".

    🤖 Generated with Claude Code

  3. gHashTag commented on Oct 20, 2026

    @gHashTag
    OwnerAuthor

    Update 07:50Z: the bee bucket, measured (open PRs read at 07:2xZ).

    So no bee PR passes the rules today either; nothing is waiting on the merger.

    🤖 Generated with Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions