diff --git a/C-progress.md b/C-progress.md index f7b9ec4..913e0da 100644 --- a/C-progress.md +++ b/C-progress.md @@ -3,7 +3,28 @@ *Status: **v1 complete & verified**. Standalone interiors library + test page. Every shop door opens into a unique, seeded, themed interior, generated on demand in ~4ms, byte-identical every revisit.* -Last updated: 2026-07-16 (round 16) · owner: PROCITY-C · reviewer: Fable +Last updated: 2026-07-16 (round 17) · owner: PROCITY-C · reviewer: Fable + +--- + +## Update 2026-07-16 (round 17, v3.2 THE TAIL) — backline handshake CLOSED + real-town type fallback + +R17 §Lane C (ledger #3): close the R16-pending render-verify of D's wired amp. D landed the wiring +(`ab7a8d0`): `band.js _addBackline` reads `stage.backline[0]` with an immediate primitive `ampPrim()` fallback +(asset-free) + GLB upgrade. **Handshake CLOSED — verified fresh (seed 20261990), 3 archetypes × 2 modes:** +- amp plants at `backline[0]` **exactly** (offset 0.00 GLB / 0.01 prim — rounding); **1 amp per stage** (no + more C primitive → the double-amp is gone). +- **no interpenetration** — amp↔nearest-band AABB edge gaps all positive: pub **0.40/0.44 m**, band_room + **0.27/0.29 m** (tightest; the bass extends downstage away from the up-stage amp), rsl **0.54/0.57 m** + (GLB/primitive). Rendered band_room gig confirms the read (amp up-stage-right behind the bassist, clear). + +**On-call (proactive, for A/E's real-map scout):** confirmed C's interior type fallback eats real OSM shop +types. 18 real `shop=` values (hairdresser/bakery/convenience/supermarket/chemist/butcher/… + ''/null/ +undefined/`SHOP`/`Op_Shop`/`antiques`) all build with **0 throws, all pathOK**, resolving to `opshop` +(theme.js `canonicalType`) or a mapped alias — so a player entering any real-town shop gets a valid interior. +Venue types (pub/band_room/rsl) are recognized; everything else degrades to opshop. No C change needed for v4. + +Docs-only round (verification confirmed shipped behavior). C otherwise on-call. ---