v0.2.10
folio 0.2.10 — an inbox item's extent is syntactic
An item's extent is decided by indentation, not inferred from content. The read path's inference was safe (a wrong guess missed an item); the write path's inference destroyed (a wrong guess deleted prose). Removal can now only ever take indented lines, so headings, prose and config are unremovable by construction rather than by the heuristic being careful.
This closes the multi-line burial that hid 25+ items since April, one of them a live CI blocker that sat unreachable while the daily notes cited it.
Also: an independent integrity scanner (no shared code with the parser), a gated backfill that can no longer mint a phantom id onto a headless line, a migration tool that dry-runs and refuses phantom pairs rather than guessing, and refusal of captured text containing tool-call markup.
Adversarial review found eight defects including two data-loss blockers the sabotage suite had not imagined; all closed red-first.
17d29bb74c31424bc9daabf61f9e2c20c1b99435
This commit is older than the 20 that keep a page here, so it has none. It is in the clone.