Skip to content

queen(app): t27-bees reacts to issue events, so a new issue is dispatched on the webhook, not the next poll (Closes #10399) - #10476

Merged
gHashTag merged 1 commit into
masterfrom
queen-app-issue-events-10399
Oct 18, 2026
Merged

gHashTag merged 1 commit into
masterfrom
queen-app-issue-events-10399

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

Closes #10399

Lane 6 of the TRI CLAW queue epic (#10393). t27-bees is the App that has a server; its card now knows the issue events, so a new or relabelled issue is a dispatch reaction when GitHub sends it, and the poll becomes the backstop.

What changed

  • specs/queen/app.t27: EVENT_PAIRS gains issues.opened, issues.reopened, issues.labeled, issues.closed. Codes GE_ISSUE_OPENED..GE_ISSUE_CLOSED = 13..16 are appended after APP_EVENTS_CI (APP_EVENTS_ISSUES = 17); no earlier code moves.
  • New dispatch_reaction(event, from_a_bot, served) answers DR_DISPATCH (opened, reopened, labeled), DR_DROP (closed) or DR_IGNORE (a bot sender, an unserved repository, any other event).
  • APP_SUBSCRIBED_EVENTS and tools/bees/manifest.json default_events add issues (APP_PERMISSIONS already has issues:write). tools/bees/README.md prose updated.
  • .trinity/seals/queen_QueenApp.json remade. The card has no tracked gen output (seal hashes only, gen=c,rust,verilog,zig).

Evidence (Railway lab)

  • t27c test specs/queen/app.t27 exit 0; t27c test-report: 24/24 pass, 0 vacuous, 5 invariants proved. The 19 existing tests are untouched and pass unchanged.
  • 5 new tests: the issue pairs are read by event and action; dispatch/drop; negative control for a bot sender (all four events, closing included) and a stranger repository; a supervisor built before this change ignores the new codes in app_reaction and ci_reaction; old webhooks keep their codes. 1 new invariant pins codes 13..17 and the DR codes.
  • tri mutate spec --fn dispatch_reaction: 12/12 killed. --fn app_event_of: 11/14 killed, 3 hung, all three the mutant's own endless loop (lines 225 x2 and 238, the pair walker, unchanged by this PR); 0 survived.
  • t27c seal --verify: all hashes MATCH after the save.

Not changed

  • The GitHub App's actual event subscription (App settings on GitHub) is not changed by this PR: the manifest only matters when the App is created or re-registered.
  • The supervisor wiring in BrowserOS (calling dispatch_reaction) is out of scope; until it lands, the new codes are ignored by a supervisor that does not know them, and the poll still serves as the path.

Inherited reds that also fail on other recent PRs (claw-sarif, Corpus ratchet, Verilog widths, t27b-native-*, withdrawn-live) are not from this change.

🤖 Generated with Claude Code

…ched on the webhook, not the next poll (Closes #10399)

specs/queen/app.t27 gains the issue events: issues.opened, issues.reopened,
issues.labeled and issues.closed in EVENT_PAIRS, codes 13..16 appended after
APP_EVENTS_CI (no earlier code moves), and dispatch_reaction answering
DISPATCH / DROP / IGNORE (never for a bot sender or an unserved repository).
APP_SUBSCRIBED_EVENTS and tools/bees/manifest.json default_events add `issues`.
Five new tests (24/24, 0 vacuous), two new invariants; the 19 existing tests
are unchanged. Seal queen_QueenApp remade on the Railway lab.

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

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-18 13:46:44 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 49
PRs with All Checks Green 1
READY 0
FAILING 49
PENDING 0
NO CHECKS YET 0

These columns do not partition: 0 + 49 + 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.

queen(app): t27-bees reacts to issue events, so a new issue is dispatched on the webhook, not the next poll

1 participant