Checkpoint
One last thing before we move on. Same surface as a write step — but the lesson doesn't complete until this passes.
Checkpoint: the gate itself. Two drafts are queued for filing.
Write cite_check_gate(citations, citator) returning a three-tuple
(status, kept, failures):
- Run each citation through the five-rule pass from the last step
(not found →
"STRIKE — not found"; quote missing →"STRIKE — quote not in source"; negative treatment →"STRIKE — negative treatment"; pin mismatch →"FIX — wrong pinpoint"; else"KEEP"). kept= number of KEEP verdicts.failures= list of"case: verdict"strings for every non-KEEP citation, in draft order.status="FILE"whenfailuresis empty, else"DO NOT FILE".
The report loop (provided) prints one summary line per draft and indents each failure under it. Expected output:
draft-A: FILE — 2/2 verified
draft-B: DO NOT FILE — 1/3 verified
Harlow v. Denton Mills: STRIKE — not found
Grigsby v. Talis Energy: FIX — wrong pinpoint