PROCITY/tools
m3ultra 5a24f8aa52 Lane F R9 F1+F2: interior presence + tram + buy-anywhere wiring; harness graduated + new smokes
Wiring (F owns index.html + interior_mode.js):
 • Interior presence (C->D->F seam): occupancyOf closure -> interior_mode spawns browser rigs at
   C's room.browsePoints (one per patronage occupant, cap 3); freed by exit()'s keepers.disposeAll.
   Door points now carry shopId for D's occupancy truth.
 • Tram (Lane B, ?tram=1): createTram + update in loop (2 draws, non-blocking).
 • Buy-anywhere (Lane C C2): E aimed at a book-spine/toy-box buyMesh buys over the same wallet
   (collapseBuyItem + toast); preload book+toy packs too. Records keep the dig.

Harness: graduated buy-v0 / patronage / book-toy stock warn->STRICT (katoomba golden already
strict). New warn smokes: interior presence (browsers==min(occ,3), dispose clean), shelf-buy
(book spine bought, cash drops), tram (present). Book-stock check now counts isStock OR buyMesh
(C2 tags book spines buyMesh, not isStock). flags_check GREEN 0/0; qa.sh --strict GREEN 5/5.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-15 11:42:44 +10:00
..
qa Lane F R8: wire town/weather/patronage/buy + graduate harness + new smokes 2026-07-15 09:09:11 +10:00
flags_check.py Lane F R9 F1+F2: interior presence + tram + buy-anywhere wiring; harness graduated + new smokes 2026-07-15 11:42:44 +10:00
qa.sh Lane F R7 F2: harness → strict + wire ?stock=real (real GODVERSE covers in the crates) 2026-07-15 01:56:14 +10:00
shots.py Lane F R4 finalize: gate table all-6-green + v1 tour shots + interior-shot fix 2026-07-14 20:22:23 +10:00
soak.py Lane F R3: hours/closed-shops + manifest/rig-fleet/?noassets + --depot + QA harness fixes 2026-07-14 17:19:11 +10:00