|
30 | 30 | | **Phase 2a remaining items** | R1+R2 LANDED, R3 PENDING | `feat/phase-2a-integration` for R1+R2 | R1 (reference-lap fetch dedup) + R2 (post-debounce write log) landed 2026-05-19. R3 (Empty Dashboard substrate baseline test) is a test run, not code work — pending. | |
31 | 31 | | **Phase 2b — Architectural cleanup (remaining)** | NOT STARTED | — | A1, A4, A5, A6, A7 completion, A9. Lower urgency now Standings memory issue is resolved | |
32 | 32 | | **Phase 3 — Channel-based bridge** | LANDED; MEMORY GATE OPEN | PRs #646, #649–#652, #656, #658 | Typed rate-aware channels, per-window subscriptions, deterministic replay validation, Fuel processor/renderer migration, conditional legacy telemetry, and performance instrumentation are on `main`. The Fuel-only A/B removed legacy deliveries and reduced app-wide renderer wake-ups by 42.4%; both baseline and candidate still failed the memory-slope gate. | |
33 | | -| **Phase 4 — Main-process processors** | IN PROGRESS | PRs #659–#667 | The planned derived processors and complete Session Bar migration are on `main`. Four final slices migrate direct telemetry consumers, then remove the legacy renderer firehose; the first slice is Input and Tachometer via `driver-controls.snapshot`. | |
| 33 | +| **Phase 4 — Main-process processors** | IN PROGRESS | PRs #659–#669 | The planned derived processors, complete Session Bar migration, and driver controls are on `main`. PR #669 moves positional, pit-state, and warning consumers to a demand-driven `track-state.snapshot`; low-frequency/debug consumers and final legacy deletion remain. | |
34 | 34 | | **Phase 5 — Worker-thread SDK loop** | NOT STARTED | — | | |
35 | 35 | | **Phase 6 — Native optimisations** | DEFERRED | — | Only if Phase 4 profiling demands | |
36 | 36 |
|
@@ -278,8 +278,8 @@ Today every renderer wakes 25 times/sec regardless of what's mounted. A weather |
278 | 278 | - [x] Shared race/session timing projection — `session-timing.snapshot`, demand-driven at 5 Hz |
279 | 279 | - [x] Auxiliary items (weather, fuel/units, brake bias, incidents, lap results, player position, and top speed) — `session-bar.snapshot` |
280 | 280 | - [ ] Direct telemetry migration and legacy removal |
281 | | - 1. [ ] Input and Tachometer — full-precision `driver-controls.snapshot`; PR #668 in review |
282 | | - 2. [ ] Positional, pit-state, and warning consumers — Pitlane Helper, maps, Battle/Relative helpers, Blind Spot, Rejoin, Faster/Slow Car |
| 281 | + 1. [x] Input and Tachometer — full-precision `driver-controls.snapshot`; merged as PR #668 |
| 282 | + 2. [ ] Positional, pit-state, and warning consumers — demand-driven `track-state.snapshot`, channel-only Pitlane Helper, maps, Battle, Blind Spot, Rejoin, Faster Cars From Behind, and Slow Car Ahead; PR #669 in review |
283 | 283 | 3. [ ] Remaining low-frequency consumers plus an explicit development-only path for Telemetry Inspector |
284 | 284 | 4. [ ] Delete the legacy `'telemetry'` IPC/store/provider infrastructure, run the complete replay suite, and re-profile |
285 | 285 |
|
@@ -472,6 +472,7 @@ LLM agents: read this file at the start of any session that touches the architec |
472 | 472 |
|
473 | 473 | ## 6. Activity log |
474 | 474 |
|
| 475 | +- **2026-08-09** — PR #668 merged. Opened PR #669 for the second final Phase 4 slice: a reusable-buffer, demand-driven 25 Hz `track-state.snapshot` for positional, pit-state, and warning data; migrated Pitlane Helper, Track Map, Flat Track Map, Battle, Blind Spot, Rejoin, Faster Cars From Behind, and Slow Car Ahead off the legacy renderer firehose; decoupled session and pit-lane providers from raw telemetry; added processor/runtime tests, Storybook snapshots, and a thirteenth curated replay probe — `feat/positional-status-channels` — in review |
475 | 476 | - **2026-08-09** — PR #667 merged. Opened PR #668 for the first of four final Phase 4 slices: Input and Tachometer move to a full-precision, demand-driven `driver-controls.snapshot`; positional/warning consumers, low-frequency/debug consumers, and final legacy deletion follow as separate reviewable PRs — `feat/driver-controls-channel` — in review |
476 | 477 | - **2026-08-09** — PR #666 merged. Opened PR #667 for the complete Session Bar migration: shared race/session timing plus auxiliary weather, fuel, incident, lap-result, position, and top-speed data now use demand-driven snapshots wired for live/tape and mock sources — `feat/session-bar-channel` — merged as PR #667 |
477 | 478 |
|
|
0 commit comments