From d22bdff9706b7d8895d176faff13f39dc78d7519 Mon Sep 17 00:00:00 2001 From: Trinity Bee Date: Tue, 6 Oct 2026 00:30:13 +0000 Subject: [PATCH 1/4] Add test blocks to MCP specs for t27b coverage Each spec now has a test block with 4 assertions that verify basic constants. This moves these specs from pass_vacuous to checked passes in t27b coverage. Closes #6500 --- specs/tools/mcp/gitbutler.t27 | 7 +++++++ specs/tools/mcp/inngest-dev.t27 | 7 +++++++ specs/tools/mcp/needle.t27 | 7 +++++++ specs/tools/mcp/neon.t27 | 7 +++++++ specs/tools/mcp/notebooklm.t27 | 7 +++++++ specs/tools/mcp/railway-mcp-server.t27 | 7 +++++++ specs/tools/mcp/t27-traceability.t27 | 7 +++++++ 7 files changed, 49 insertions(+) diff --git a/specs/tools/mcp/gitbutler.t27 b/specs/tools/mcp/gitbutler.t27 index f69843669d..ab7c2d7bde 100644 --- a/specs/tools/mcp/gitbutler.t27 +++ b/specs/tools/mcp/gitbutler.t27 @@ -39,3 +39,10 @@ pub const AGENTS : [1]str = ["T"]; pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool, and who holds a skill\" binds every tool to the Queen (T). No card states what this tool is for in this project, so no bee is named a domain lead."; pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/gitbutler"; + assert ENABLED == true; +} diff --git a/specs/tools/mcp/inngest-dev.t27 b/specs/tools/mcp/inngest-dev.t27 index 095d3a046a..b8d3bb9e87 100644 --- a/specs/tools/mcp/inngest-dev.t27 +++ b/specs/tools/mcp/inngest-dev.t27 @@ -46,3 +46,10 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool ; help-output is the nearest witness the catalog vocabulary has for 'diffed against the server's own tools/list on a named host'; no workflow runs it yet, so nothing here claims runtime. pub const WITNESS : str = "help-output"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/inngest-dev"; + assert ENABLED == true; +} diff --git a/specs/tools/mcp/needle.t27 b/specs/tools/mcp/needle.t27 index 8349bd621f..d0c2e085c6 100644 --- a/specs/tools/mcp/needle.t27 +++ b/specs/tools/mcp/needle.t27 @@ -39,3 +39,10 @@ pub const AGENTS : [2]str = ["T", "C"]; pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool, and who holds a skill\" binds every tool to the Queen (T). Domain lead C: Held: ABOUT is \"Zig MCP server for AST-aware code editing ... structural search and replace, quality gates, preview\" and needle_quality_gates is \"Run quality gates: parse check, AST analysis, violation detection\" -- parser/AST is C's ground (KEY_FILES t27/compiler/parser/, EXIT_INVARIANT \"Generated code compiles, AST is valid\"). No second letter: the card lists six tools, all editing/parse tools."; pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/needle"; + assert ENABLED == true; +} diff --git a/specs/tools/mcp/neon.t27 b/specs/tools/mcp/neon.t27 index 82b5c50ba2..42cfa08ddd 100644 --- a/specs/tools/mcp/neon.t27 +++ b/specs/tools/mcp/neon.t27 @@ -39,3 +39,10 @@ pub const AGENTS : [1]str = ["T"]; pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool, and who holds a skill\" binds every tool to the Queen (T). No card states what this tool is for in this project, so no bee is named a domain lead."; pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/neon"; + assert ENABLED == true; +} diff --git a/specs/tools/mcp/notebooklm.t27 b/specs/tools/mcp/notebooklm.t27 index 0eb8d5d2a3..f233676c24 100644 --- a/specs/tools/mcp/notebooklm.t27 +++ b/specs/tools/mcp/notebooklm.t27 @@ -39,3 +39,10 @@ pub const AGENTS : [1]str = ["T"]; pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool, and who holds a skill\" binds every tool to the Queen (T). No card states what this tool is for in this project, so no bee is named a domain lead."; pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/notebooklm"; + assert ENABLED == true; +} diff --git a/specs/tools/mcp/railway-mcp-server.t27 b/specs/tools/mcp/railway-mcp-server.t27 index f19a0406c5..1ab461f917 100644 --- a/specs/tools/mcp/railway-mcp-server.t27 +++ b/specs/tools/mcp/railway-mcp-server.t27 @@ -39,3 +39,10 @@ pub const AGENTS : [1]str = ["T"]; pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool, and who holds a skill\" binds every tool to the Queen (T). No card states what this tool is for in this project, so no bee is named a domain lead."; pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/railway-mcp-server"; + assert ENABLED == true; +} diff --git a/specs/tools/mcp/t27-traceability.t27 b/specs/tools/mcp/t27-traceability.t27 index 030642ed70..3cdb1ae931 100644 --- a/specs/tools/mcp/t27-traceability.t27 +++ b/specs/tools/mcp/t27-traceability.t27 @@ -39,3 +39,10 @@ pub const AGENTS : [3]str = ["T", "W", "S"]; pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool, and who holds a skill\" binds every tool to the Queen (T). Domain lead W, S: Held: ABOUT \"checks L1 TRACEABILITY (Closes #N) in commit messages and PR descriptions, generates compliant commit messages ... serves the PHI LOOP stacked-branch template\" is the commit/branch side W owns (EXIT_INVARIANT \"Hash is verified, commit is signed\"), and validate_branch_name \"Validate branch name follows t27 naming conventions\" is almost verbatim S's EXIT_INVARIANT \"Standards are consistent, naming rules followed\"; the constitution resource gives A a lesser claim than either."; pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; + +test basic_constants { + assert KIND == "tool"; + assert FAMILY == "mcp"; + assert ID == "mcp/t27-traceability"; + assert ENABLED == true; +} From 3c0679707048d965002b162cf6537293936872c4 Mon Sep 17 00:00:00 2001 From: "queen-publisher[bot]" Date: Tue, 6 Oct 2026 12:50:53 +0000 Subject: [PATCH 2/4] docs: the coordination entry this branch needs to land 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 #6500 Co-Authored-By: Claude Opus 5 --- ...test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md diff --git a/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md b/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md new file mode 100644 index 0000000000..6496e6b56d --- /dev/null +++ b/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md @@ -0,0 +1,11 @@ +# NOW -- t27b checked: test blocks for 7 specs in specs/tools/mcp (1 of 2) (published 2026-10-06) + +## A bee's work on #6500, published from `queen-6500` (Closes #6500) + +- The branch changes 7 file(s): `specs/tools/mcp/gitbutler.t27`, `specs/tools/mcp/inngest-dev.t27`, `specs/tools/mcp/needle.t27`, `specs/tools/mcp/neon.t27`, `specs/tools/mcp/notebooklm.t27`, `specs/tools/mcp/railway-mcp-server.t27` and 1 more. +- `git diff --stat origin/master...queen-6500` reads: 7 files changed, 49 insertions(+) +- This entry is written by the publisher, not by the bee. 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. +- What this entry does NOT establish: that the work is correct. The gates on the + pull request judge that, and they are the same gates every other change meets. From 2a5f9ebeb4895e5387ad09ae79633deb8762d144 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Sat, 10 Oct 2026 16:53:55 +0700 Subject: [PATCH 3/4] t27b checked: per-spec test blocks for 7 specs in specs/tools/mcp Revive #6500 after 19 days stale. Each of the 7 mcp specs keeps a verify__constants test (the pattern the four already-covered specs in this directory use) and now asserts the rows only its own card holds: TRANSPORT (http only for inngest-dev), REPO/QUALIFIED_ID split across gHashTag/t27 and gHashTag/trinity, EXTERNAL, agent letters beyond T, TOOLS/RESOURCES/ENV lengths, names and indexes. 89 asserted values crosschecked against the const declarations in the same files. Merge of origin/master picks up the fixes this branch was red on in 2026-10-06: orbitofrontal_value.t27 parse (#6861), repo-relative t27a seals (#6861), the devhome-path scan fixes (#8375) and the dupe-bodies ledger rows for carries_src2/sample_imm/sample_reg. Co-Authored-By: Claude Opus 5.5 (1M context) --- ...-blocks-for-7-specs-in-specs-tools-mcp-1-of.md | 2 +- specs/tools/mcp/gitbutler.t27 | 12 ++++++++++-- specs/tools/mcp/inngest-dev.t27 | 14 ++++++++++++-- specs/tools/mcp/needle.t27 | 13 +++++++++++-- specs/tools/mcp/neon.t27 | 12 ++++++++++-- specs/tools/mcp/notebooklm.t27 | 12 ++++++++++-- specs/tools/mcp/railway-mcp-server.t27 | 12 ++++++++++-- specs/tools/mcp/t27-traceability.t27 | 15 +++++++++++++-- 8 files changed, 77 insertions(+), 15 deletions(-) diff --git a/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md b/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md index 6496e6b56d..4cd21c1f7f 100644 --- a/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md +++ b/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md @@ -3,7 +3,7 @@ ## A bee's work on #6500, published from `queen-6500` (Closes #6500) - The branch changes 7 file(s): `specs/tools/mcp/gitbutler.t27`, `specs/tools/mcp/inngest-dev.t27`, `specs/tools/mcp/needle.t27`, `specs/tools/mcp/neon.t27`, `specs/tools/mcp/notebooklm.t27`, `specs/tools/mcp/railway-mcp-server.t27` and 1 more. -- `git diff --stat origin/master...queen-6500` reads: 7 files changed, 49 insertions(+) +- `git diff --stat origin/master...queen-6500` reads: 8 files changed, 87 insertions(+), 14 deletions(-) -- revived 2026-10-10: each test now asserts its own spec's card (transport, repo, qualified id, tool list facts), not just the four constants every mcp spec shares - This entry is written by the publisher, not by the bee. 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. diff --git a/specs/tools/mcp/gitbutler.t27 b/specs/tools/mcp/gitbutler.t27 index ab7c2d7bde..c20633e9a5 100644 --- a/specs/tools/mcp/gitbutler.t27 +++ b/specs/tools/mcp/gitbutler.t27 @@ -40,9 +40,17 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; -test basic_constants { +test verify_gitbutler_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/gitbutler"; + assert SERVER_VERSION == ""; + assert TRANSPORT == "stdio"; + assert SCHEMA == 2; + assert REPO == "gHashTag/t27"; + assert QUALIFIED_ID == "gHashTag/t27:mcp/gitbutler"; assert ENABLED == true; + assert EXTERNAL == true; + assert AGENTS[0] == "T"; + assert len(TOOLS) == 0; + assert ENV[0] == "GITBUTLER_REPO"; } diff --git a/specs/tools/mcp/inngest-dev.t27 b/specs/tools/mcp/inngest-dev.t27 index b8d3bb9e87..985fca13d5 100644 --- a/specs/tools/mcp/inngest-dev.t27 +++ b/specs/tools/mcp/inngest-dev.t27 @@ -47,9 +47,19 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "help-output"; pub const ENABLED : bool = true; -test basic_constants { +test verify_inngest_dev_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/inngest-dev"; + assert SERVER_VERSION == "1.0.0"; + assert TRANSPORT == "http"; + assert SCHEMA == 2; + assert REPO == "gHashTag/t27"; + assert QUALIFIED_ID == "gHashTag/t27:mcp/inngest-dev"; assert ENABLED == true; + assert EXTERNAL == true; + assert AGENTS[2] == "J"; + assert len(TOOLS) == 20; + assert TOOLS[0] == "cancel_run"; + assert TOOLS[19] == "send_event"; + assert ENV[0] == "INNGEST_SIGNING_KEY"; } diff --git a/specs/tools/mcp/needle.t27 b/specs/tools/mcp/needle.t27 index d0c2e085c6..78e52952b5 100644 --- a/specs/tools/mcp/needle.t27 +++ b/specs/tools/mcp/needle.t27 @@ -40,9 +40,18 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; -test basic_constants { +test verify_needle_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/needle"; + assert SERVER_VERSION == ""; + assert TRANSPORT == "stdio"; + assert SCHEMA == 2; + assert REPO == "gHashTag/trinity"; + assert QUALIFIED_ID == "gHashTag/trinity:mcp/needle"; assert ENABLED == true; + assert EXTERNAL == false; + assert AGENTS[1] == "C"; + assert len(TOOLS) == 6; + assert TOOLS[0] == "needle_structural_replace"; + assert TOOLS[5] == "needle_autonomous_refactor"; } diff --git a/specs/tools/mcp/neon.t27 b/specs/tools/mcp/neon.t27 index 42cfa08ddd..a652a4c015 100644 --- a/specs/tools/mcp/neon.t27 +++ b/specs/tools/mcp/neon.t27 @@ -40,9 +40,17 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; -test basic_constants { +test verify_neon_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/neon"; + assert SERVER_VERSION == ""; + assert TRANSPORT == "stdio"; + assert SCHEMA == 2; + assert REPO == "gHashTag/trinity"; + assert QUALIFIED_ID == "gHashTag/trinity:mcp/neon"; assert ENABLED == true; + assert EXTERNAL == true; + assert AGENTS[0] == "T"; + assert len(TOOLS) == 0; + assert ENV[0] == "NEON_API_KEY"; } diff --git a/specs/tools/mcp/notebooklm.t27 b/specs/tools/mcp/notebooklm.t27 index f233676c24..0ea02c5c07 100644 --- a/specs/tools/mcp/notebooklm.t27 +++ b/specs/tools/mcp/notebooklm.t27 @@ -40,9 +40,17 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; -test basic_constants { +test verify_notebooklm_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/notebooklm"; + assert SERVER_VERSION == ""; + assert TRANSPORT == "stdio"; + assert SCHEMA == 2; + assert REPO == "gHashTag/t27"; + assert QUALIFIED_ID == "gHashTag/t27:mcp/notebooklm"; assert ENABLED == true; + assert EXTERNAL == true; + assert AGENTS[0] == "T"; + assert len(TOOLS) == 0; + assert ENV[0] == "NOTEBOOKLM_STORAGE_STATE"; } diff --git a/specs/tools/mcp/railway-mcp-server.t27 b/specs/tools/mcp/railway-mcp-server.t27 index 1ab461f917..7cb43fcdce 100644 --- a/specs/tools/mcp/railway-mcp-server.t27 +++ b/specs/tools/mcp/railway-mcp-server.t27 @@ -40,9 +40,17 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; -test basic_constants { +test verify_railway_mcp_server_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/railway-mcp-server"; + assert SERVER_VERSION == ""; + assert TRANSPORT == "stdio"; + assert SCHEMA == 2; + assert REPO == "gHashTag/trinity"; + assert QUALIFIED_ID == "gHashTag/trinity:mcp/railway-mcp-server"; assert ENABLED == true; + assert EXTERNAL == true; + assert AGENTS[0] == "T"; + assert len(TOOLS) == 0; + assert len(ENV) == 0; } diff --git a/specs/tools/mcp/t27-traceability.t27 b/specs/tools/mcp/t27-traceability.t27 index 3cdb1ae931..3096a45463 100644 --- a/specs/tools/mcp/t27-traceability.t27 +++ b/specs/tools/mcp/t27-traceability.t27 @@ -40,9 +40,20 @@ pub const AGENTS_NOTE : str = "docs/agents/AGENTS_ALPHABET.md \"Who holds a tool pub const WITNESS : str = "source-parse"; pub const ENABLED : bool = true; -test basic_constants { +test verify_t27_traceability_constants { assert KIND == "tool"; assert FAMILY == "mcp"; - assert ID == "mcp/t27-traceability"; + assert SERVER_VERSION == "1.0.0"; + assert TRANSPORT == "stdio"; + assert SCHEMA == 2; + assert REPO == "gHashTag/t27"; + assert QUALIFIED_ID == "gHashTag/t27:mcp/t27-traceability"; assert ENABLED == true; + assert EXTERNAL == false; + assert AGENTS[2] == "S"; + assert len(TOOLS) == 4; + assert TOOLS[0] == "check_traceability"; + assert TOOLS[3] == "get_phi_loop_template"; + assert RESOURCES[0] == "docs/T27-CONSTITUTION.md"; + assert ENV[1] == "ENFORCE_L1"; } From 032c78f9b847b678842ecdf0b09093e9eca6e98b Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Sat, 10 Oct 2026 17:02:02 +0700 Subject: [PATCH 4/4] docs(now): the revived branch's real diff stat Co-Authored-By: Claude Opus 5.5 (1M context) --- ...b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md b/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md index 4cd21c1f7f..dc90f162bf 100644 --- a/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md +++ b/docs/now/2026-10-06-published-t27b-checked-test-blocks-for-7-specs-in-specs-tools-mcp-1-of.md @@ -3,7 +3,7 @@ ## A bee's work on #6500, published from `queen-6500` (Closes #6500) - The branch changes 7 file(s): `specs/tools/mcp/gitbutler.t27`, `specs/tools/mcp/inngest-dev.t27`, `specs/tools/mcp/needle.t27`, `specs/tools/mcp/neon.t27`, `specs/tools/mcp/notebooklm.t27`, `specs/tools/mcp/railway-mcp-server.t27` and 1 more. -- `git diff --stat origin/master...queen-6500` reads: 8 files changed, 87 insertions(+), 14 deletions(-) -- revived 2026-10-10: each test now asserts its own spec's card (transport, repo, qualified id, tool list facts), not just the four constants every mcp spec shares +- `git diff --stat origin/master...queen-6500` reads: 8 files changed, 122 insertions(+) -- revived 2026-10-10: each test now asserts its own spec's card (transport, repo, qualified id, tool list facts), not just the four constants every mcp spec shares - This entry is written by the publisher, not by the bee. 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.