Verify

Reach for Verify the moment anyone, including you, says something is done.

Verify never skips. It is number one because it audits the other four.

Number one is not the clever habit. It is the plainest one in the kit, and it ranks first because it is the only one whose job is catching the other four lying to themselves.

The Four Tiers Of Done

Tier Means Catches
1. Exists The file is at the expected location and is not empty Missing files, failed writes. Most done claims stop here.
2. Substantive Real content: no placeholders, stub returns, or hardcoded sample data Phantom implementations that look complete
3. Wired Connected: imports present, calls made, handlers bound, the thing reached Orphaned work that exists and is never used
4. Functional Works end to end, right now, evidence in the same message Integration failures, the gap between compiles and ships

The Iron Law

No completion claim without fresh verification evidence in the same message.

Not evidence from earlier in the session. Not evidence from a similar case. Never a claim plus a request that someone else go check.

The Red-Flag Words

Should. Probably. Seems to. Every one is an admission that nobody ran the thing. Verify watches for them.

What Evidence Looks Like

Evidence Not Evidence
Test output, pasted "Tests pass"
Row count from the live table A count from the sample
Screenshot of the rendered page "It renders"
File size, exit code, the exact changed line "I updated it"

If you cannot paste it, you did not check it. The honest sentence is "built, not yet verified", which is a respectable place to be as long as you say so.

Why It Audits The Other Four

Every one is a tier-one claim dressed up as tier four. Most trust is lost exactly there.

The One Question

Which tier did you actually check?