Claude Code said "all tests pass". It had skipped them. So I built a fail-closed gate. A developer built BuildProof, a fail-closed verification gate that independently checks an AI coding agent's claim that tests pass, rejecting changes it cannot prove are sound. The tool runs as a Claude Code hook after each turn or as a GitHub Action on pull requests, targeting the known failure mode where agents skip, delete or weaken tests and still report a green build (referenced in anthropics/claude-code#7074). BuildProof is distributed via npm as a commercial product with a 14-day free trial rather than open source. If you use an AI coding agent long enough, you will see this: the agent says "Done - all tests pass" , and it's true only because a test was skipped, deleted, or quietly weakened in the same change. It's a known failure mode see anthropics/claude-code 7074 https://github.com/anthropics/claude-code/issues/7074 . Asking the agent nicely in CLAUDE.md doesn't fix it, because the agent is the one grading its own work. I built BuildProof around one rule: the agent's claim is never accepted on its word. A separate check decides, and it fails closed - if it can't prove the work is good, the change is rejected. After Claude Code finishes a turn as a hook , or on a pull request as a GitHub Action , it: The demo page shows real output - a change that "passes" by weakening a test, and how it gets rejected: 👉 https://buildproof.mgrprosnetwork.com/demo https://buildproof.mgrprosnetwork.com/demo npm install -g buildproof Package: https://www.npmjs.com/package/buildproof https://www.npmjs.com/package/buildproof Full disclosure: I'm the maker. It's a commercial tool with a 14-day free trial, not open source. I'd really like feedback from people who run agents on real codebases: what other ways have you seen an agent "fake" a green build? Every trick you've seen becomes a new check.