1. Claude Code lied to me once. Seven subsystems — described, referenced, built upon across sessions — that were never committed. They existed in package.json and the AI's memory. Nowhere else. Here's what I did about it. 🧵
2. This wasn't a hallucinated API. It was entire subsystems asserted as done, internally consistent, fictional. The failure mode: session memory treated as repo state. Every new session inherited the claim. None inherited the code.
3. The fix wasn't "review harder." You can't deep-review 35 PRs/day — and that's the genuine velocity of AI-assisted dev. The fix was making lies build-breaking: a capability ledger 322 CI gates, every claim must resolve to committed code or the build fails.
4. One month later: 255K LOC, every gate resolves to real files, zero recurrence. AI coding at this speed is a trust system. Build the trust architecture or inherit the fiction. Verify, then trust — enforced by the build.