A dark editorial workbench where notes and a finished page are being compared.
Completion is a stack of claims. Each layer needs its own evidence.

The most dangerous failure is not a red error. It is a plausible success signal attached to an incomplete outcome. An endpoint returns 200 while downstream storage rejects the payload. A workflow run finishes while a final action is skipped. An agent says “done” because its command exited cleanly, even though it never inspected what a user sees.

§1Use an outcome ladder

  1. 01TransportDid the request reach something?
  2. 02AcceptanceDid the receiving system accept it?
  3. 03CompletionDid every required step finish?
  4. 04StateDid the authoritative record change?
  5. 05ExperienceCan a person observe the expected result?
  6. 06Live truthDoes production serve that result now?

A signal from one rung cannot silently stand in for the rungs above it. HTTP 200 is transport evidence. A visible record in the owning data store is state evidence. A real browser completing the path is experience evidence.

§2Why agents overclaim

Agents compress. They see a successful command, a familiar response shape, or a generated file and infer the rest of the causal chain. The fix is not “be more careful.” The fix is an acceptance contract that names the required final observation before work begins.

FAILURE NOTE

The agent was not necessarily lying. It answered the wrong question: “Did my step finish?” instead of “Did the user outcome become true?”

§3Write the proof before the change

CLAIM
The intended result is visible and usable.

REQUIRED EVIDENCE
- production build succeeds
- authoritative state changes
- browser completes the path
- live artifact matches the tested revision

NOT ENOUGH
- command exited 0
- request returned 200
- agent said “done”

§4The guardrail now

Every consequential task closes with positive completion proof: an observed end state plus an independent signal. If the downstream truth is unavailable, the conclusion stays partial. Confidence is not promoted to completion.

Steal this

  • Separate transport, completion, state, and user experience.
  • Write the final observable before implementation.
  • Require an independent signal for consequential claims.
  • Say “partial” when downstream truth cannot be observed.
  • Download the verification checklist.