4905d63b97
setStage() left detected_stage/signal/at untouched across a real transition, so a prior task's leftover inference (e.g. `tests` from earlier work) both misrepresented a fresh task's progress and — because recordDetection is forward-only — silently rejected every real detection behind it until the old one aged past DETECTION_TTL_MS. A real stage change now clears the detection columns; a same-stage heartbeat leaves a live detection alone. Also excludes `.superpowers/` from the `implement` node's Write detect rule - brainstorm-companion scratch files were being counted as implementation work. fix(client): disable Node's default --experimental-webstorage in tests Node 25 enables --experimental-webstorage by default, which defines a broken global `localStorage` (no backing file configured) ahead of jsdom's own full polyfill. Every test touching real localStorage failed with "localStorage.clear/getItem is not a function" — not flaky, not test-specific, just this one Node default. NODE_OPTIONS=--no-experimental-webstorage on the test scripts lets jsdom's polyfill take over as before.
1.2 KiB
1.2 KiB