docs: a GET of a booth page records a look, so live checks must not sweep :8090

Two sessions' post-deploy sweeps on 2026-09-23 recorded a look at every booth,
which emptied "new since you looked" and collapsed the Desk's last section
into reverse name order. CLAUDE.md now says how to check the live service
without recording anything, and persistent-memory records the Desk ruling and
the three booths it hid.
This commit is contained in:
vh
2026-09-23 23:08:19 -07:00
parent 1d31ab05de
commit 0781aa5ee5
2 changed files with 10 additions and 0 deletions
+9
View File
@@ -250,6 +250,15 @@ curl -s localhost:8090/healthz # the live service (systemd --user)
systemctl --user restart booth.service # after a code change, to see it live
```
⚠ **A GET of a booth page, its marks page or a review page RECORDS A LOOK**
(`.viewed`, and `.seen` for a review page). A post-deploy check that fetches
every booth on `:8090` tells the service the operator looked at all of them at
once: it empties "new since you looked", marks items seen on the tape, and
pushes every expiry out a day. Two sessions did exactly that on 2026-09-23.
Check the live service with requests that record nothing (`/healthz`, the Desk
at `/`, `?thumb=1` file fetches), and check pages against a COPY of the data
(`rsync` it into the scratchpad, `TestClient(create_app(copy))`).
```sh
.venv/bin/python scripts/mutation_check.py # prove the falsifiers still falsify
```
+1
View File
@@ -116,6 +116,7 @@ _As of 2026-09-23:_
## Recent decisions
- `[2026-09-23]` ✅ **The Desk's "Everything else" sorts by last UPDATE, not last activity** (operator: "last activity can just be last time the booth was updated"). The section had been reverse-alphabetical because two sessions' post-deploy GET sweeps (17:48 and 21:46) each recorded a look at every booth. That also emptied "new since you looked": 3 booths (`dfa-landing`, `ldp-polish`, `pewpew-ui-brief`) had never been opened from an operator device. The operator chose the simpler fix and declined repairing `.viewed` from the access log. READ BEFORE CHECKING THE LIVE SERVICE: see CLAUDE.md "Working in here".
- `[2026-09-23]` ✅ **The four flow rulings, and what they cost the beta** — all four taking design-dev's recommendation; READ BEFORE CUTTING ANY RELEASE, because `v1.0.0b1`'s "no new features" promise no longer describes the arc and an alpha drop-back is illegal → `persistent-memory.d/2026-09-23-the-flow-rulings-and-what-they-cost-the-beta.md`
- `[2026-09-23]` ✅ **Creation dates came from a syscall, after three guesses wearing a fact's clothes** — READ BEFORE REACHING FOR A PROXY; the system already recorded what looked unavailable, and one of the rejected proxies was a shape we had just finished paying for → `persistent-memory.d/2026-09-23-dates-and-the-guess-wearing-a-facts-clothes.md`
- `[2026-09-23]` ⚠ **The browser suite is flaky under load — OPEN, owned by design-dev** — three tests, two real defects fixed, NEITHER proven causal; do not read a green suite as proof → `persistent-memory.d/2026-09-23-the-browser-suite-is-flaky-under-load.md`