PROCITY/tools
m3ultra 3e1ff312a5 Lane D R40 §40.5: the peds come in the front door — 100% on every real town
Verification first, and B's R39 heading fix did NOT clear the gate alone. Measured today
(tools/qa/door_footpath_check.mjs, new): synthetic 447/493 foot (90.7%) · katoomba 71/72 ·
fitzroy 138/139 · bowral 28/30 (93.3%) — from R39's 0/493, 0/72, 0/139, 0/30.

Two residue species, handled differently ON PURPOSE:
1. A 0.85m kerb miss on real towns — plan_osm's setback puts the facade past the corridor
   edge, so the shell's d/2+0.6 door point lands just off the verge. Fixed by new D-owned
   door_snap.js, applied in sim.setShops: clamps each door into the registry vergeBand of
   its nearest footpath-bearing edge, 6m cap. Corpus: fixes 4, breaks 0. Live-shell verified
   (493 points, 2 moved, max 5.41m — matches node exactly). Real towns now 72/72, 139/139, 30/30.
2. The synthetic's 36 strict misses are market stalls and arcade shops WHOSE FRONT IS THE
   MARKET SQUARE. An uncapped snap would 'pass' them by teleporting a door 59.85m to a street
   they do not front — passing the gate by breaking the truth it measures. The gate instead
   scores walkable front ground (footpath ∪ market/arcade block ground) = 473/493 (95.9%) and
   reports the strict number alongside.

The check ships its own falsifiability CONTROL (the R8-R39 back point must score under the
floor: reads 0.4-13.3%) and a fix-only arm (clamp breaks 0, asserted forever). Deterministic.
Remaining 20 synthetic misses are artefacts of the fixed nudge at index.html:433-437 — not
D's file; measured, exact fix documented for F. Goldens untouched.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-07 12:28:25 +10:00
..
qa Lane D R40 §40.5: the peds come in the front door — 100% on every real town 2026-08-07 12:28:25 +10:00
deploy_digalot_procity.sh Fable: digalot.fyi/procity private-test deploy script — noindex/no-listing, _raw excluded, licence flag stays armed 2026-07-17 21:36:18 +10:00
flags_check.py Lane F R38 (v8 WAVE 1, CLOSE): the budget did NOT move — 292/300 stands, and four gates ship with four controls 2026-08-03 19:48:45 +10:00
qa.sh Lane F R39 (v9 WAVE 1, CLOSE): QA GREEN 10/0/0/0 — and the interior margin is 162, not 21 and never 6 2026-08-03 22:47:03 +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 R9 F3+F4: v2.0 tour (11 shots) + full-default & all-on soaks + docs freeze 2026-07-15 11:57:11 +10:00
v2_tour.py Lane F R10: verify giant-rig fix + re-shoot tour + re-frame night_crowd 2026-07-15 13:56:23 +10:00