blueprint-verify-report · git:20260929.75e1de1 · 2026-09-29 · sha256 8f2135e3b3b596e4
blueprint-verify-report git:20260929.75e1de1A
Immutable. This exact content never changes and is served at /api/v1/blob/8f2135e3b3b596e4.
--- name: blueprint-verify-report description: "Report every problem the machine found in the extracted facts, in plain words, with where it is and how to fix it." --- # Report what the machine found A person has read the extracted table in `.blueprint/facts.json`. If they asked for a correction, make it and run the extract check again before this step, because the report step refuses facts changed since that check. Run `node <usecase pack>/checks/report.mjs` once first. It decides by machine what is wrong with `.blueprint/facts.json` and writes the list to `.blueprint/verification.json`. It fails until the report exists. The machine's rules are these: - `weekday-mismatch`: the weekday written beside a date is not that date's weekday. - `end-before-start`: an event ends before it starts. - `out-of-order`: an event comes later in the document but earlier in time than the one before it. - `overlap`: on one day, an event starts before the previous one ends. - `total-mismatch`: a total is not the sum of its parts. Its `detail` says which way: `writtenIs` is `"more"` when the written total is larger than the sum of the parts, `"less"` when smaller, by `by`. Say it that way round (「書かれた合計は、内訳を足した額より 500円 多い」) — never work the direction out yourself. - `unit-mismatch`: a total and its parts are in different units. You cannot add or drop a problem. Explain each one; if you think one is not really wrong (an overnight leg read as ending before it starts, say), say so under that problem, but still name it. Write `.blueprint/verify-report.md` for the person, in their language and in plain words: - `## 見つけたこと` / `## Problems`: every problem by its `id` from `verification.json`. Say what is wrong in the document's own words, quote where it is (the event's or amount's quotation, and the place named as the document does — a section's heading in 「」, not chaff's index such as `h1`), and propose a fix (the weekday that date really is, the sum the parts really make). When there are none, say that the machine found none. - `## 確かめたこと` / `## What was checked`: how many events, amounts and totals were extracted. Each value was found in its quotation, and each quotation in the document (`chaff cite`). Then name the rules that ran. - `## 確かめきれなかったこと` / `## Not checked`: what a machine cannot confirm. That the extraction is complete; travel time between places; time zones; dates written as `MM-DD` because no year was known (their weekdays were not checked); prices, availability and anything outside these files. ## Done when `node <usecase pack>/checks/report.mjs` passes. The originals are unchanged.