Skip to content

spec(queen): the GitHub App (t27-bees) as the Queen's front door, in .t27 (Closes #7682) - #7683

Merged
gHashTag merged 1 commit into
masterfrom
spec/queen-app
Oct 8, 2026
Merged

gHashTag merged 1 commit into
masterfrom
spec/queen-app

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 8, 2026

Copy link
Copy Markdown
Owner

Closes #7682.

specs/queen/app.t27 holds what t27-bees does once GitHub sends it webhooks:

  • event → reaction: register, unregister, review, forget, command, quota or ignore. There are no loops on its own comments.
  • free tier: 200 reviews a day per installation for public repositories, 30 for private ones.
  • summary-only above 4000 changed lines.
  • one review per pull request head.
  • @t27-bees review|summary|help|pause|resume commands.

It runs as generated code. t27c gen-c and then zig cc --target=wasm32-wasi give a 1637-byte module with no imports, and its functions answer the test vectors. This follows the owner's rule "t27-bees is also written in .t27".

Verified:

  • 7 of 7 tests pass.
  • tri mutate spec kills 64 of 66 mutants. The 2 survivors are equivalent, and the card records why.
  • tri hooks pre-commit and L1 pass.

🤖 Generated with Claude Code

….t27 (Closes #7682)

Owner 2026-10-08: any repository installs our app and gets the Queen's work
for free, the way CodeRabbit won its users. Owner, same day: "t27-bees is
also written in .t27".

specs/queen/app.t27 decides, for one GitHub webhook:
- what the Queen does: register, unregister, review, forget, command, quota
  or ignore. She never answers a bot and never serves an unregistered repo.
- the free tier per installation per day: 200 public, 30 private.
- review depth: a diff over 4000 lines is summarized rather than invented.
- one review per pull request head, unless a person asks again.
- the comment commands after @t27-bees: review, summary, help, pause and
  resume. Nothing is read past the text's end.

Tests: 7 of 7. tri mutate spec: 64 of 66 killed. The 2 survivors are
equivalent (a >= vs > at equality that both answer 0, and a loop bound that
mentions_at's own bound check makes moot); the card records why.

It runs as generated code, not a hand mirror. t27c gen-c and then
zig cc --target=wasm32-wasi -Oz give a 1637-byte module with no imports.
Called from Bun, app_reaction, free_reviews_left and command_of answer the
test vectors.

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

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-08 04:54:50 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 47
PRs with All Checks Green 3
READY 2
FAILING 47
PENDING 0
NO CHECKS YET 0

These columns do not partition: 2 + 47 + 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)=39fa3908f9fd != 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 3cce0ac into master Oct 8, 2026
28 of 29 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.

queen: the GitHub App (t27-bees) as the Queen's front door, in .t27

2 participants