Skip to content

feat(skills): evidence-bar false verdict; done means the tests discriminate - #2816

Draft
pbean wants to merge 1 commit into
devfrom
feat/triage-evidence-bar-and-ledger
Draft

feat(skills): evidence-bar false verdict; done means the tests discriminate#2816
pbean wants to merge 1 commit into
devfrom
feat/triage-evidence-bar-and-ledger

Conversation

@pbean

@pbean pbean commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Why

Two places in the review pipeline spend effort on work that produces nothing.

Triage verifies every finding a layer reports, including the ones that make no claim — a "consider extracting this", a "this could be simplified". There is no bad outcome to check, so triage either invents one on the reviewer's behalf or rejects it with a reason it has to compose. Either way it pays for a finding that was never a defect.

Verification gaps reach review that step-03 could have closed. A test the change added that would still pass with the change reverted, or a helper the change introduced that a touched site does not use, is not done — but step-03's definition of done did not say so, so the gap layer raised it, triage verified it, and a patch pass fixed what the implementer could have finished in place.

What changed

Instruction text only, six files. The two step-04 review files stay in lockstep.

A finding with no demonstrated outcome is false. At all four triage sites — bmad-build step-04 and one-shot, bmad-build-auto step-04, bmad-code-review step-03 — a finding that names no bad outcome, or no input or state that reaches one, gets false with "no demonstrated outcome" as the refutation. Triage does not build the claim for the reviewer. The row still exists; it just costs nothing to write.

Done means the tests discriminate. Step-03 in bmad-build and bmad-build-auto adds two things to done: a test this change added or changed must fail with the change's production code reverted (or under the wrong behavior it exists to catch, when the change is the test itself), and a helper or chokepoint this change introduced must be adopted at every site this change touched. Judge from what the test asserts, or revert and run when that is cheap. When finishing either changes code, the diff file is rewritten and re-read.

Verification

npm test green: renderer 24/24, skill validator, lint, markdownlint, prettier.

…minate

Two triage-economics changes.

1. A finding that names no bad outcome, or no input or state that reaches one, is `false` with "no demonstrated outcome" as the refutation. Triage does not build the claim on the reviewer's behalf. Applied at all four triage sites.

2. Step-03 in bmad-build and bmad-build-auto adds two things to done: a test this change added must fail with the change reverted, and a helper this change introduced must be adopted at every site the change touched. Findings the verification-gap layer would otherwise raise at review are closed before review starts.
@pbean
pbean force-pushed the feat/triage-evidence-bar-and-ledger branch from 1c13775 to 3f5e4ad Compare September 2, 2026 01:20
@pbean pbean changed the title feat(skills): evidence-bar false verdict, one deferred-work ledger contract, done means the tests discriminate feat(skills): evidence-bar false verdict; done means the tests discriminate Sep 2, 2026
@bmadcode
bmadcode changed the base branch from main to dev September 5, 2026 19:09
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.

1 participant