PROCITY/tools/qa
m3ultra 6a35b29352 Lane F R15 (v3.0): the release money-shot tour (ledger #4) + settled measurements (ledger #5)
tools/qa/tour_shots.py: one deterministic run capturing the release set into docs/shots/release_v3/
(+ contact.html), grouped by the flags each shot needs, all seed 20261990:
- venue_night, district_posters, queue_night (John's HERO — now with A's flipped frontage poster VISIBLE
  by the door), gig_interior (the 4-piece + real instruments + a roster crowd — 2 punters carried through),
  rain_verandah, tram_stop
- settled discipline (ledger #5): every shot measured after the async instrument GLBs / poster textures /
  chunk stream land (shoot-twice), from a clean per-group load; the queue is driven LIVE (explicit admits,
  not rAF auto-drain which automation throttles)

The hero confirms ledger #1: the frontage poster reads from the street for the first time. Interior settles
35k->182k tris (draws 56 <= 350 gate). All street shots <=300 draws / <=200k tris. 0 page errors.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 11:35:27 +10:00
..
consistency_check.mjs Lane F R4: wire citizens.setExposure (F1) + permittedMax storeys-checker fix (F2) 2026-07-14 18:15:42 +10:00
gig_shot.py Lane F R15 (v3.0): retire the R12 single-venue alias (ledger #2) 2026-07-16 11:14:19 +10:00
interior_scale_check.py Lane F R13 (v3.0-beta, the district): per-venue gig state + walla/applause + queue wiring; qa --strict 6/6 2026-07-16 00:22:03 +10:00
scaffold_check.mjs Lane F R11: wire interior audio beds + audio smokes + gate scope 2026-07-15 17:13:19 +10:00
tour_shots.py Lane F R15 (v3.0): the release money-shot tour (ledger #4) + settled measurements (ledger #5) 2026-07-16 11:35:27 +10:00
week_soak.py Lane F R15 (v3.0): full-week gig soak (ledger #3) — leak/cover/roster over 7 nights 2026-07-16 11:29:43 +10:00