0.12.6 — the office unfreezes (for real)
THE freeze fix, for real this time: the floor rewrite re-introduced a second requestAnimationFrame schedule (3 per frame = exponential) and the whole office locked up seconds after boot. A regression test now asserts the shipped floor-game.js schedules exactly one frame loop.
Also in this line: warm meeting-room floor, canvas game interactions (walk / DM / doors / furniture), shot-image false positives fixed, floor hardening.