fix: restore signs after navigation

This commit is contained in:
2026-09-03 02:59:10 +03:00
parent cce018d3cb
commit 4404c07f93
5 changed files with 71 additions and 8 deletions

View File

@@ -135,6 +135,12 @@ The independent long interaction harness remains invalid on this host and no fra
No new Blender asset was justified. The finite authored car remains Blender-owned and unchanged. Dynamic sign text, route candidacy, lifecycle, responsive placement, road, terrain, atmosphere, sun, camera, and motion remain Three.js-owned. Physical-device, Firefox, Safari/WebKit, Edge, assistive-technology, and audience review remain the honest manual limitations below.
### Navigator recovery follow-up
The later navigator failure shared one state-ownership cause: explicit, initial, and history-restoration samples were correctly concealed but incorrectly written into the passive traversal's completed-sign ledger. A navigator jump could therefore disqualify the expected sign, and returning to Start did not re-arm it. Suppressed navigation now clears that traversal ledger without changing the suppression contract. A following wheel, touch, or scroll-key epoch can select the correct next sign again, while completed signs remain suppressed throughout uninterrupted passive travel so small boundary oscillations still cannot spam them.
The focused controller regression failed against the previous implementation because Profile remained `null` after a completed lifecycle and an explicit Contact-to-Start round trip, then passed after the ownership correction. The real-browser regression clicks a section, returns to Start, and verifies that the Profile sign is emitted on the next passive scroll. It passed in both desktop and mobile projects. The final four-worker browser matrix passed 180 checks with 44 deliberate project/capability skips and no failures, including navigation, history, keyboard, accessibility, responsive, Static, reduced-motion, fallback, visual, and flash-safety coverage.
## Direction review checklist
- [x] Information uses near-black opaque panels rather than neon glass.