Repository navigation
Trinity GitHub App: install -> t27o workflow -> golden-spec PRs, plus the golden criteria in .t27 - #11154
Trinity GitHub App: install -> t27o workflow -> golden-spec PRs, plus the golden criteria in .t27#11154gHashTag wants to merge 2 commits into
Conversation
specs/tools/mcp/trinity.t27: add the app section. The app proposes the t27o workflow PR on the installation event and reads scan reports on the workflow_run event; the install contract itself stays owned by specs/tools/t27o/install.t27 and is only called (use + install::), never restated (#8963). specs/tri/pipeline/workflow.t27: add the scan-report model the pipeline hands the app. A ScanReport carries the oracle evidence per spec; the golden verdict, refusal reason, and badge percentage are decided by the golden criteria (specs/tools/t27o/golden.t27) and only called (golden::refusal / refusal_name / is_golden / coverage_percent). The badge is the floored coverage: 5 of 8 evaluated specs reads 62. Verification: t27c parse and t27c typecheck pass on both files (0 errors); t27c test-report runs 13 new tests, 6 in trinity.t27 and 7 in workflow.t27, all non-vacuous (17 total: 13 new + 4 pre-existing, 0 failed, 0 vacuous). The golden-grep count across the two files is 35 (>= 4 required). No files outside the permitted boundary were touched. LLM/bee fallback stays opt-in only and is not referenced by these specs. Closes #8997
A pull request must add exactly one docs/now entry and a bee has no way to know that: its brief names a boundary file and acceptance criteria, and docs/now/ is neither. The publisher adds it rather than failing the gate. Closes #8997 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Reviewer bee verdict for head d61277762d7fd7008a4f7a686801d37dceef4006 (tools/bees/reviewer.py, zai glm-4.7-flash, 13 turns, 437 s).
BEE-VERDICT: REQUEST_CHANGES
summary: The change introduces 3 new specs with absurd Verilog widths (2097151 bits), and fails claw-suggest which now requires the gen/c/claw/suggest_feed.c file
criterion: FR-001, FR-002, FR-003, FR-004, FR-005 -- met -- evidence: trinity.t27:89-112; workflow.t27:193-264
criterion: Success Criteria 1-6 -- met -- evidence: trinity.t27:48-117; workflow.t27:189-191; grep output ≥ 4
discounted-check: coverage -- <evidence: brief.md:88-137> master succeeded
discounted-check: spec-guards -- <evidence: brief.md:139-189> master succeeded
blocking-check: Verilog widths (absurd-width ledger) -- <evidence: brief.md:191-241> new specs emit 2^21 bit widths
blocking-check: t27b-native-ratchet -- <evidence: brief.md:243-293> ratchet verdict red
blocking-check: claw-suggest -- <evidence: brief.md:295-345> gen/c/claw/suggest_feed.c not found, compilation terminated
Evidence
Now I have all the information I need. Let me analyze:
Issue #8997 asks for:
- Trinity GitHub App to propose t27o workflow PR upon installation (FR-001)
- Collect scan reports via webhook (FR-002)
- Evaluate specs against golden criteria (FR-003)
- Publish golden coverage badge (FR-004)
- Record refusal reasons (FR-005)
- LLM/bee fallback opt-in only (FR-006)
- Rollout to owned repos first (FR-007)
Success Criteria:
t27c check specs/tools/mcp/trinity.t27exits 0 ✓t27c check specs/tri/pipeline/workflow.t27exits 0 ✓- 5 tests for installation webhook triggering workflow PR ✓
- 5 tests for scan report webhook ingestion with golden criteria ✓
- 5 tests for golden coverage badge updates ✓
grep -r "golden" specs/tools/mcp/trinity.t27 specs/tri/pipeline/workflow.t27 | wc -l≥ 4 ✓
Red checks analysis:
- coverage - FAILED on this head, SUCCEEDED on master → Doesn't count (pre-existing)
- spec-guards - FAILED on this head, SUCCEEDED on master → Doesn't count (pre-existing)
- Verilog widths - FAILED on both master and this head → Counts! New specs
bit_diff.t27andlut_treemap.t27have absurd widths (2^21 = 2097151) - t27b-native-ratchet - FAILED on both master and this head → Counts! Ratchet verdict is red (331,068 bytes artifact)
- claw-suggest - SKIPPED on master, FAILED on this head → Counts! Missing
gen/c/claw/suggest_feed.cfile
The change introduces 3 new specs (specs/t27f/token_floor.t27, specs/t27f/why_card.t27, and the new specs/widgets/bit_diff.t27, specs/widgets/lut_treemap.t27) that trigger Verilog width errors.
Regarding the coverage/badge calculation:
The test scan_reports_badge_floors_when_the_division_is_not_exact with 2 golden / 1 unmet shows 66%, which is correct: 2 * 100 / 3 = 66 (floor division). The unmet report is counted in the denominator (evaluated=3) because it's a slot in the report array, even though it's not golden.
Closes #8997
Written by a bee on
queen-8997and published bytools/queen/publish.py. The branch itself is the bee's; the second commit is the coordination entry every pull request must add, which a bee has no way to know about.🤖 Generated with Claude Code