A demo, documented like a receipt
The car-seat test.
The worst-case photo — the one you've taken yourself. Paperwork on the console, keys on the page, bad angle, no scanner. Read by the box, offline, with every doubtful field handed back to the owner instead of guessed.
The complete read
Verbatim pipeline output. Nothing edited, nothing omitted — flags included, because the flags are the product.
Verdict: confirm_required · confidence: low — on a photo like this, that IS the correct answer. Every decision-grade number above (amber) landed in the suspect lists; zero numbers were silently committed.
· The date came back truncated (5/2) — and flagged itself as a misread suspect. An honest miss, routed to human eyes.
· The masked fields (name, VIN, account) came back blank — nothing invented, nothing guessed into the holes.
· The thermal slip in frame reads $479.98 while the statement applies $466.00 — the classic trap where a summarizing read merges the two. The slip came back unreadable and was dropped, not merged.
· And the part that's the design, not a failure: when it can't be sure, it doesn't pretend. The doubtful fields come back to the owner to actually vet and enter — your books stay yours to certify. Worst case, the box did the reading and you did the judging. That's the deal.
The arithmetic guard fired, verbatim: “line items sum to 11989.00 but the total reads 0.00 (off by 11989.00) — verify a misread digit or a tax/fee line.”
Grade-school math, no AI involved — the same class of dumb deterministic check that caught the nameplate lie. It doesn’t know what a Hummer is. It knows the column doesn’t add.
Against ground truth
Scored against the pre-written ground truth (masked fields excluded): store, address, phone, receipt number, every dollar figure, vehicle and year — exact. One truncated date and one dropped region — both flagged, neither silent. On the FLAG class this photo belongs to, that’s a pass: errors are allowed; silence is not.
The second dashboard shot ran the same gauntlet in 11.88 s — same verdict, same discipline, one misread street digit (3048 for 3648), flagged.
And one more thing it found
On the unmasked originals (kept on the box, never published), the pipeline was asked to locate sensitive fields. It found the person’s name, the VIN, the VIN barcode, the card digits on both slips, the account number, and the handwritten signature — 6 of 6 categories on this photo.
Stated with the same care we’d want from anyone else: on the companion photo it missed one category (payment terminal codes), and locating a field is not the same as promising never to repeat one. Detection is measured; anything more waits until it’s proven. The misses live on the ledger like everything else.
When the tech gets better on photos like this one, you'll hear it from us — if not first, close. We measure, we publish, and the receipts move when the numbers do. Not before.
Measured 2026-07-10 on the reference box — Qwen2.5-VL-7B on the AMD Radeon 780M iGPU (Vulkan) · OCR + guards on CPU · the production 35B untouched throughout · photo-in → transcript-out in 26.38 s · pipeline: two readers that fail differently + deterministic cross-checks · fixtures never ingested into any real corpus · every claim on this page: the receipts.
ThirdShift R&D
The other dare →