Draft: content in review, not yet public.
← back
Receipt · June 2026

Any AI can write a summary. The hard part is proving it didn't invent anything.

Python · Claude Agent SDK · deterministic page-anchored retrieval

Plenty of tools will summarise a long document for you. The risk is always the same: an invented fact, or a citation that sends you to the wrong page. For anything that has to hold up under scrutiny, either one is a serious problem.

So I built it in two halves. The first reads the document and pulls out the key points under fixed headings, tagging each one with the exact words it came from and the page they sit on. Nothing enters the summary without that anchor.

The second half is the one that matters. It treats the summary as a set of separate claims and tests each on its own: it finds the source sentence, confirms it is on the cited page, and returns one of four verdicts, from fully supported through to not in the document at all. The retrieval is mechanical, a direct lookup against the page markers, so that part never depends on a language model’s judgement.

A flow diagram. A source document feeds a summariser, which produces a structured summary with each claim tagged to a page. A separate checker then tests every claim against the original and returns one of four verdicts: supported, borderline, wrong page cited, or not in the source. A dashed line shows every claim being re-checked against the original.
The writer produces the summary; a separate checker traces every claim back to the source and grades it.

The first time I ran it, it caught a real error in my own summariser, a reference one page out. I fixed that, re-ran, and it cleared seventy-two claims on the worked example with nothing invented and nothing mis-paged.

It is built to be honest about its limits. Right now the writer and the checker are the same family of model, so the next step is a second, independent one. The point it proves is simple enough: a summary is only worth anything if you can check it, and the part worth building is the check.