"If a sentence in the analysis cannot point at the crumbs it stands on, the engine is not allowed to say it."
Rule One: No Claim Without Evidence
The first of the three analysis rules is the strictest: every claim carries its crumb IDs, and the interpreter generation it read. An analysis statement that cannot be traced to specific dated crumbs is an unfalsifiable summary, and an unfalsifiable summary is a bug — not a stylistic lapse. The reader must always be able to ask "how do you know that?" and get an answer that resolves to Dad's own words on specific days. Analysis that cannot answer that question is exactly the guessing-machine failure the whole surface is designed to avoid.
Enforced at the Storage Boundary
This rule is not a request to the model; it is a wall in the code. When narration is produced, the storage boundary checks it: a narration with no crumb citations, or one that cites an ID outside its own window, is refused — nothing lands. The artifact is only stored if every claim it makes is anchored to crumbs inside the window it analyzed. Putting the check at the storage layer, not in a hopeful prompt, is the same lesson as Track 4's rubric boundary: when a rule must always hold, enforce it where the data becomes durable.
The Reader Sees the Receipts
For Dad, the inline [crumb:ID] markers render as small [n] references keyed to a Sources legend, where each entry shows the cited crumb's date and words. The stored artifact keeps the real IDs; the UI shows the human-readable receipt. So an analysis is not a wall of assertions to take on faith — it is a set of observations, each with a visible "here is the note this came from" attached. That is what turns a summary into something a doctor, or Dad, can actually check.