The two dated log sections had never been split, so every one of their 29 entries sat inline and the startup index had grown to 372 lines — which is the cost the two-tier scheme exists to remove, paid on every session that reads the file. 27 entries were over threshold. All 29 now have a detail file under persistent-memory.d/ and a one-line index entry that routes rather than restates. Index: 372 -> 93 lines. No archival. The soft cap fired, but every entry in this repo is dated 2026-09-21 or later, so the under-14-days guard held all of them back — and the split alone took the index well under the target without moving anything out of the active file. The in-flight section is rewritten for the post-release state: nothing is in flight, no gate is outstanding, and the next unit is explicitly recorded as the operator's undecided call rather than as a plan. The session's recommendation (U4, on three grounds) is written down so it does not have to be re-derived, alongside the two alternatives and why they are alternatives. Two dated predictions are carried forward with their dates and their instruments: the U5 adoption re-measure on 2026-09-29, which already reads 3 of 24 announced and 2 with a why from peers told nothing, and the .forever re-count a fortnight AFTER U4 lands, which is U4's own success criterion and is destroyed by running it early.
940 B
U2 (marks) landed — one primitive for three mechanisms
2026-09-21 · booth
U2 (marks) landed. One primitive replacing three
mechanisms. pick / note / flag in one .marks.json per booth, one read
path (marks_for), one openness predicate (open_marks), rendered beside the
artifact on the tile, at full size in the zoom, and in the panel. flag and
note had no write path at all before this — the selection loop
(golden-candidates, sindra-finalists, the pancake-* ladders) was running
through chat. 242 tests. Details worth carrying: asks.py kept normalize_ask
and gained build_answer (the 2026-09-09 partial-answer semantics preserved by
moving, not rewriting) and LOST its five sidecar-storage functions;
GET /b/<n>/marks.json was added because remote sessions polled
<stem>.answer.json over HTTP and the sidecar's removal would have taken that
capability with it; /b/<n>/asks 308s to /marks.