docs: adopt L0 PURPOSE, and make the backlog no bee can take visible - #4606
Merged
Merged
Conversation
The board's source cited "trios CLAUDE.md, law L0" in two places. That file carries L1-L9 about shell scripts, Closes #N, clippy, tests, port 9005, a GB fallback, an experience log and push-first. There is no L0 in it, in this repository, or anywhere else - the citation did not resolve. The cause is a real gap rather than a typo. L1-L7 govern how work ENTERS the repository and each one has a live gate; none of them says what the work is FOR. The .t27 rewrite is the stated goal, measured on the ROADMAP view and named as the win condition in onboarding.t27, and it had no constitutional standing. So L0 PURPOSE is adopted as an ADDITION, not a rewrite: everything below the interface is written once in .t27 and generated to its target, with two named exceptions - the seed (t27c stays hand-written Rust) and the interface (Swift for trios, TSX for the web). It sits OUTSIDE the Asimov ordering on purpose and may never be cited to excuse breaking L1-L7. Work that reaches the goal faster by merging untraced, hand-editing generated files or shipping an untested spec has not reached it. Enforcement is a measurement that already exists rather than a new one: the .t27 share of the stack, computed by roadmap-stack.mjs from the GitHub tree API and published at /roadmap/stack.json, must not fall. A law nobody can check is decoration, which the honesty rule forbids. THE BACKLOG WAS UNREACHABLE, NOT EMPTY. Measured today: 563 of 654 open issues carry no `## Boundary` section, so nothing can be reserved for them and the Queen skips every one - her tick reported missingBoundary for 565 candidates while the swarm sat at 2 of 20 lanes. .github/ISSUE_TEMPLATE/swarm-task.md carries the section, so the class stops growing, and explains why it is not paperwork. tools/queen/needs_boundary.py labels the ones missing it: 553 to label, with the 10 roadmap goals and epics held back, because a goal is not a task. Its self-test passes and its dry run was taken against the live repository. Neither writes a boundary into an issue body: which paths a task may touch is a judgement about the work, and a WRONG boundary is worse than a missing one because it reserves the wrong files. The existing issue-template config is added to, not replaced: blank_issues_enabled stays false and the SOUL.md link stays, because an issue opened outside a template is an issue with no boundary. Closes #4605 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Contributor
|
📓 NotebookLM Notebook linked to this PR
This notebook contains session context, decisions, and artifacts for this work. |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The law the board cited before it existed
QueenRoadmap.tsx:2androadmap-stack.mjs:5both cite "trios CLAUDE.md, law L0". That file carries L1–L9 — no.shfiles,Closes #N, clippy, tests, port 9005, a GB fallback, an experience log, push-first. There is no L0 in it, in this repository, or anywhere else. The citation did not resolve, which is precisely what the honesty rule removes.The cause is a real gap rather than a typo. L1–L7 govern how work enters the repository — traced, generated, ASCII, tested — and each has a live gate. None of them says what the work is for. The
.t27rewrite is the stated goal, measured on ROADMAP and named as the win condition inonboarding.t27, and it had no constitutional standing at all. So a law was cited into existence to fill the hole.L0 PURPOSE — an addition, not a rewrite
L1–L7 work and hold real gates; nothing is removed or reordered.
It sits outside the Asimov ordering on purpose and may never be cited to excuse breaking L1–L7: work that reaches the goal faster by merging untraced, hand-editing generated files or shipping an untested spec has not reached it.
A law nobody can check is decoration, which the honesty rule forbids — so enforcement is a measurement that already exists rather than a new one: the
.t27share of the stack, computed byroadmap-stack.mjsfrom the GitHub tree API and published at/roadmap/stack.json. The share must not fall. It is 5.6% today.The backlog was unreachable, not empty
Measured 2026-09-23: 563 of 654 open issues carry no
## Boundarysection, so the Queen can reserve nothing for them and skips every one. Her tick reportedmissingBoundaryfor 565 candidates while the swarm sat at 2 of 20 lanes..github/ISSUE_TEMPLATE/swarm-task.mdcarries the section and explains why it is not paperwork — the class stops growing.tools/queen/needs_boundary.py+needs-boundary.ymllabel the ones missing it. Live dry run: 553 to label, 10 roadmap goals and epics held back, because a goal is not a task. Self-test passes; the parser is the Queen's own rule (boundaryPathsOf), not a wider one, so the label cannot say "dispatchable" about an issue she will keep skipping.Neither writes a boundary into an issue body. Which paths a task may touch is a judgement about the work, and a wrong boundary is worse than a missing one because it reserves the wrong files and blocks whatever really owns them.
The existing issue-template config is added to, not replaced:
blank_issues_enabledstaysfalseand the SOUL.md link stays, because an issue opened outside a template is an issue with no boundary.Still to do, in trinity
The two citations point at the wrong document and will be corrected to name the constitution.
Closes #4605
🤖 Generated with Claude Code