not-tonight/tests
type-two 0d3ce80c6b Six defects from the adversarial review: two softlocks, a dead door, and a bar that punished the right call
- DJ post stood the player inside the sealed djbooth (same class as the taps
  softlock): every direction blocked, and since the sweep needs you to walk to
  the entry, the night could never be paid. DECKS_SPOT moves to the booth's west
  counter, which is where the map comment always said the gear faces from.
- Role stations are now DATA (venueMap POSTS/PROBES) with tests/floor/stations.test.ts
  pinning the whole bug class: posts must be walkable AND escapable, probes must
  have somewhere walkable within interact range. Written as a MOVEMENT test, not
  a tile-name test — the question is whether the player can leave.
- DoorScene.busy is released by a delayedCall on the scene clock, and stopping a
  scene discards pending events, so a ruling in the last 2.6s of a night left it
  stuck true: a dead door — no rope, no verdicts, no way inside — for the rest
  of the run. Now reset per night, along with seenCards/kebab/franko/retiredRules.
- Bar WATER and CUT OFF never settled the patron, so watering a maggot from
  behind the taps left them ticking as unhandled and re-logging every grace
  period: the call that fixed the problem kept being charged for it.
- Every bar verb logged as 'barServe', putting drinks in the record that were
  never poured. One kind per verb; the report system takes unknown kinds by design.
- carpetMsFor() is consumed on read: a regular parked, recalled and knocked back
  came round again later and was paid the entrance dividend a second time.
- Sweep state joins resetNightState() so an interrupted floor score cannot carry
  its cash, or its previous-night pay callback, into the next night.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 03:13:09 +10:00
..
floor Six defects from the adversarial review: two softlocks, a dead door, and a bar that punished the right call 2026-07-22 03:13:09 +10:00
sim The whole shelf: 9 scripted characters (cop/celebrity/sovereign/rider/promoter/neighbour/hens/twins/ex-doorman) + 5 floor systems (vomit/phone/water/first-aid/kebab run) 2026-07-20 19:27:43 +10:00
arc.test.ts LANE-JUICE2: ear-pass mix desk, ambience beds, night arc in the engine 2026-07-19 21:47:53 +10:00
arrivalCurve.test.ts Economy tuning pass: sim harness + 9 feel-bands, Dazza rule cap, natural churn, capacity strike fix, hype decay, vibe cooling 2026-07-20 05:35:47 +10:00
beatclock.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
clock.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
dazzaSchedule.test.ts Late game: 1:30 lockout law, ID passback (SEEN TONIGHT), regular step-up lines, yard fence-jumpers 2026-07-20 18:45:50 +10:00
dollplan.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
dressCode.test.ts Economy tuning pass: sim harness + 9 feel-bands, Dazza rule cap, natural churn, capacity strike fix, hype decay, vibe cooling 2026-07-20 05:35:47 +10:00
dressCodeShuffle.test.ts ROOM boss week: venue 4 — seeded 15-min dress-code shuffle (the board is the law), lip-read rope dialogue, ROOM crowd/knobs; SCENARIOS shelf cleared 2026-07-21 02:06:16 +10:00
encounters.test.ts The whole shelf: 9 scripted characters (cop/celebrity/sovereign/rider/promoter/neighbour/hens/twins/ex-doorman) + 5 floor systems (vomit/phone/water/first-aid/kebab run) 2026-07-20 19:27:43 +10:00
eventbus.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
filterCurve.test.ts LANE-JUICE: audio engine, SFX set, five UI widgets, JuiceDemoScene 2026-07-19 18:52:43 +10:00
floorScore.test.ts The floor score: lights on at close — sweep the notes, the shrapnel, the untouched kebab; the baggie is a choice and the pay line knows 2026-07-21 03:40:24 +10:00
generator.test.ts Cross-night regulars with disguises, venue crowd identities, retractions as texts 2026-07-20 16:43:40 +10:00
guestList.test.ts LANE-CONTENT: the guest list, the moral encounters, the inspector, the paperwork 2026-07-19 21:32:37 +10:00
idCheck.test.ts Late game: 1:30 lockout law, ID passback (SEEN TONIGHT), regular step-up lines, yard fence-jumpers 2026-07-20 18:45:50 +10:00
incidentReport.test.ts LANE-CONTENT: the guest list, the moral encounters, the inspector, the paperwork 2026-07-19 21:32:37 +10:00
inspect.test.ts LANE-DOOR: land the adversarial review findings 2026-07-19 19:06:31 +10:00
inspector.test.ts LANE-CONTENT: the guest list, the moral encounters, the inspector, the paperwork 2026-07-19 21:32:37 +10:00
judge.test.ts Late game: 1:30 lockout law, ID passback (SEEN TONIGHT), regular step-up lines, yard fence-jumpers 2026-07-20 18:45:50 +10:00
lipRead.test.ts ROOM boss week: venue 4 — seeded 15-min dress-code shuffle (the board is the law), lip-read rope dialogue, ROOM crowd/knobs; SCENARIOS shelf cleared 2026-07-21 02:06:16 +10:00
memory.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
meters.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
mix.test.ts LANE-JUICE2: ear-pass mix desk, ambience beds, night arc in the engine 2026-07-19 21:47:53 +10:00
nightSummary.test.ts The floor score: lights on at close — sweep the notes, the shrapnel, the untouched kebab; the baggie is a choice and the pay line knows 2026-07-21 03:40:24 +10:00
queueManager.test.ts The red carpet: 3-slot velvet holding pen — park them, they pay hype; patience by archetype, storms, and the entrance dividend on admit 2026-07-21 02:32:15 +10:00
regularCast.test.ts Cross-night regulars with disguises, venue crowd identities, retractions as texts 2026-07-20 16:43:40 +10:00
rng.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
roster.test.ts The roster board: role × venue level select — six shifts, wages on the card, the night opens wherever the shift stands you 2026-07-21 03:10:17 +10:00
save.test.ts Phase 0: scaffold, contracts, core systems, patron generator, paper-doll renderer, Parade demo (49 tests) 2026-07-19 16:20:53 +10:00
scheduling.test.ts LANE-JUICE: audio engine, SFX set, five UI widgets, JuiceDemoScene 2026-07-19 18:52:43 +10:00
sobriety.test.ts LANE-DOOR: the full v0.1 Door night — queue, ID minigame, dress code, stamps, summary 2026-07-19 18:49:27 +10:00
staff.test.ts Radio command: the Head of Security verb — Bump sorts the mess, Shan waters the worst, Kayden holds the rope (Elevate+, competence not guaranteed) 2026-07-21 02:49:14 +10:00
tutorialFade.test.ts Door tween leak: tutorial fade spawned an 800ms tween per frame — now pure tutorialAlpha() driven from update() 2026-07-21 01:41:21 +10:00
typo.test.ts LANE-JUICE: audio engine, SFX set, five UI widgets, JuiceDemoScene 2026-07-19 18:52:43 +10:00