Tier 1 (everharden.com/gate) is the conviction demo against a mock agent — it earns the meeting. Tier 2 (this sheet) is the gate wired in front of the customer's real agent in shadow mode: it blocks nothing, logs everything it would have stopped, and the deliverable is the customer's own evidence report. Do not promise a guarantee until Stage 1 returns zero ungated paths.
PHASE0_WORKSHEET.md against the customer's actual agent. A small tool list is a snapshot — the day they add a tool, completeness silently breaks, which is exactly what CHOKEPOINT.md + the CI drift-check exist to catch.CHOKEPOINT.md. CI: python run.py check-chokepoint must pass.adapters/mock_support_agent.py with a real adapter at the interception point. Shadow is the default (Interceptor(mode="shadow")): log the decision it would make, let the action proceed.Action). Intent/words are stripped here — the gate only sees facts.BypassError by design (no side doors).python run.py test (incl. test_no_inference_in_engine) green.WOULD BLOCK/HOLD and still proceed (shadow).CHOKEPOINT.md. Tuning during shadow costs nothing.gate/report.py → render_html (self-contained, screen-shareable).mode="enforce", agree the rollout (BLOCK-only first, then HOLD→human-review queue), define who handles held actions.| Stage | Done | Date | Note |
|---|---|---|---|
| 0 · Qualify | |||
| 1 · Phase 0 complete (YES) | |||
| 2 · Wired in shadow | |||
| 3 · Shadow window run | |||
| 4 · Evidence report delivered | |||
| 5 · Enforce decision |
Outcome: Enforce (won) Extended shadow Disqualified — reason: