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.
17 lines
940 B
Markdown
17 lines
940 B
Markdown
# 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`.
|