Pattern: Evidence before claims (verify, then assert)

Before making any statement that work is complete, fixed, or passing — including a mere expression of satisfaction (“Great!”, “Done!”) — run the command that would prove it, read the full output (exit code, failure count), and only then state the claim with that fresh evidence. The discipline treats an unverified success claim as dishonesty, not optimism: “If you haven’t run the verification command in this message, you cannot claim it passes.”

Superpowers makes it a first-class skill (sp-verification-before-completion, the Iron Law “no completion claims without fresh verification evidence”) with a mechanical gate function and a table mapping each claim to what actually proves it — tests pass ⇒ the test command’s 0-failures output (not “should pass”); agent completed ⇒ the VCS diff (not the agent’s own success report).

Why it’s distinctive

It is adjacent to but distinct from its neighbors. pattern-anti-rationalization stops the agent talking itself out of a process; evidence-before-claims stops it declaring a process finished without proof — the two often ship together in the same skill but target different lies. It differs from spec-conformance verification (gsd-verifier, openspec-verify, which check the build against a goal/spec) by checking the agent’s own assertions against reproducible command output — a cross-cutting honesty gate, applied at every “done”, not a single validate step. It is the concrete technique behind Superpowers’ “Evidence over claims” philosophy pillar, and kin to addy-doubt-driven-development’s adversarial self-review.

Superpowers:

See Also