Repository navigation
kind-isolation :testkit: a battery that invokes the published conformance suite is a live battery - #541
Merged
Conversation
…ance suite is a live battery busbar-plane-decisions' tests/conformance.rs runs busbar's published suite through busbar_plugin_loader::conformance_suite!, which expands to the suite's #[test] entries (crates/plugin-loader/src/conformance/mod.rs). The battery counter read only #[test] attributes, so it scored that running battery as one with no entry (battery-ignored), while nextest on the same sha passes busbar-plane-decisions::conformance's entries. The counter now counts each invocation of the published macro that names a door: subject. An invocation with no subject expands to nothing and still scores battery-ignored, and a file that defines its own conformance_suite macro is not the published suite. Three self-test cases: the live invocation is green; the empty invocation and the file-local shadow are red. Coordinator ruling (b), 2026-10-07.
MattJackson
enabled auto-merge
October 7, 2026 09:41
promote into
|
| crate | test | step | first panic |
|---|---|---|---|
| `` | nextest xtask::cli::selftest_runs_every_registered_gates_red_proof |
test:workspace |
DENY rows (12)
| gate | row | detail |
|---|---|---|
| construction | one-pick-site |
3 production call site(s) of 'pick_among(' (ceiling 2): crates/busbar-kernel-egress/src/walk.rs:298; crates/busbar-llm/src/engine/exhaustion/fallback.rs:120; crates/busbar-llm/src/engine/pipeline.rs:8 |
| kind-isolation | kind-isolation:deps |
3 finding(s), 76 shipped edge instance(s) over 27 class(es), 76 declaration(s); 61 '[[dep]]' row(s), 0 question(s): unlisted-dep-edge legacy -> plane busbar-llm -> busbar-plane-llm is a shipped edge w |
| kind-isolation | kind-isolation:test-deps |
5 finding(s), 36 test edge instance(s) over 19 class(es), 36 declaration(s); 22 '[[dep]]' row(s), 0 question(s): unlisted-dep-edge cleanliness -> legacy busbar-core-admin -> busbar-a2a is a test edge |
| kind-isolation-ship | kind-isolation:deps |
15 finding(s) over 76 shipped edge(s): ship-edge kernel -> hooks busbar-kernel -> busbar-hooks-ranking is 'not-allowed': the architecture grants no kernel -> hooks edge, and the ship criterion is the |
| kind-isolation-ship | kind-isolation:test-deps |
13 finding(s) over 36 test edge(s): ship-edge cleanliness -> legacy busbar-core-admin -> busbar-a2a is 'not-allowed': the architecture grants no cleanliness -> legacy edge, and the ship criterion is t |
| kind-isolation-ship | kind-isolation:faces |
4 finding(s) over 31 crate(s): foreign-entry crates/busbar busbar is kind 'root' and implements 'Store' 2 time(s) in shipped source — the entry face of kind 'store'. A trait implementation is a claim |
| kind-isolation-ship | kind-isolation:testkit |
1 finding(s) over 12 crate(s): no-implementor crates/hooks-ranking busbar-hooks-ranking is kind 'hooks' and implements 'Hooks' (its 'impl' blocks, or the exported door built over them) nowhere in ship |
| kind-isolation-ship | kind-isolation:legacy-drain |
5 finding(s): transitional-live qa/kind-isolation.toml 'busbar-a2a -> busbar-core-admin' (legacy drain: the retiring A2A engine's tests drive the admin surface that drained into the cleanliness tier) |
| kind-isolation-ship | kind-isolation:control-path |
73 finding(s) over 3 control surface(s): upstream crates/busbar-core-admin/src/admin_codec/meta.rs:84 busbar-core-admin names 'egress' — a control surface has no upstream to reach, so the vocabulary o |
| ship-ready | ship-ready:ship-twin |
'kind-isolation-ship' is not green: kind-isolation:deps (a dependency the architecture does not grant is still in the graph); kind-isolation:test-deps (a dependency the architecture does not grant is |
| instance-noun-neutrality | instance-noun-neutrality:voice |
tracked known-debt census — 8: crates/busbar-plane-llm/src/codec/gemini/handler.rs×7 [cross-plugin] | crates/busbar-plane-llm/src/codec/gemini/tests/handler_tests.rs×2 [cross-plugin] | crates/busbar |
| structure-lint | structure-lint:plane-dup:unledgered |
23 finding(s): PLANE-DUPLICATE (module): 'config.rs' — a2a:crates/busbar-a2a/src/a2a/config.rs mcp:crates/busbar-mcp/src/mcp/config.rs voice:crates/busbar-voice/src/config.rs (the ledger row signs for |
Judged against base 70776f1d3: 0 new red, 0 worse, 7 standing (excused).
tests passed: 21942, failed: 0. Run: https://github.com/GetBusbar/busbar/actions/runs/37602371822 . Artifact verdict-5d3cdc33ba596b3a3feedcda923fda8c404b488d (failures.json, junit.xml, raw.log; 90 days).
MattJackson
added a commit
that referenced
this pull request
Oct 7, 2026
…ces-2: the SDK's Services imports both sides' service names (session.emit and trust.state beside this branch's verify/content/hook); the served-money rig's one composition takes both the screened hooks and a bound node (governed_full), with governed_hooked and governed_over as its two named entries
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.
GATE-BURN (/status row 88, spec exit point 3:
cargo xtask gate --allgreen on predev).What
kind-isolation:testkit(ship twin) flagged busbar-plane-decisionsbattery-ignored. That was a false positive: the coordinator ruled (b) on 2026-10-07 that it's a gate defect, not a case for a rename.crates/busbar-plane-decisions/tests/conformance.rsruns busbar's published suite throughbusbar_plugin_loader::conformance_suite!. The macro expands to the suite's#[test]entries (crates/plugin-loader/src/conformance/mod.rs:1445-1485). The battery counter read only literal#[test]attributes, so it scored this running battery as one with no entry. In the merge-group verdict for d526455, nextest PASSesbusbar-plane-decisions::conformancethe_linked_and_the_dropped_in_door_are_one_pluginandred_*.Fix: the counter counts every invocation of the published macro that names a
door:subject. Two cases staybattery-ignored: an invocation with no subject, which expands to nothing, and a file that defines its ownconformance_suitemacro, which isn't the published suite.Self-test, 3 new cases:
Proof (Latchkey, base predev d07eaf7)
kind-isolation-ship:testkitnow has onlyno-implementor crates/hooks-ranking, which P5: extract webhook-signature, hook-ranking, auth header/sigv4/oauth; delete plane-example; outbound auth conformance suite #484 deletes.battery-ignoredis gone.gate --all: no row worse than predev.gate kind-isolation-ship --selftest: 144 cases, exit 0.gate kind-isolation --selftest: 238 cases, exit 0.cargo clippy -p xtask --all-targets -- -D warnings: clean. fmt: clean.cargo test -p xtask, unfiltered, exit 0. That includesselftest_runs_every_registered_gates_red_proof, which passes undercargo test; the hop's nextest budget for it is xtask at opt-level 2; self-test budgets re-measured; over-budget batteries re-taken serially #520.