Preserve the completed teach-and-repeat laboratory stage: reference preparation, cascaded acquisition, local tracking and recovery, recording lifecycle, replay qualification, and persistent Rerun scene controls. Document the open grid-picking regression and Rerun upgrade contract. No autonomous driving or loop-closure optimization is claimed.
3.1 KiB
Planning live: temporal head and vertical slice — 2026-09-20
Scope
This review concerns the completed planning run c7918881-c817-4d39-aa16-a1d2fc135d5b (ja-sun-008-100m). The scanner was not started, stopped, or otherwise controlled while making this change. The run was terminal before every local reload.
Observation
The 100.93 m run produced 1,576 LiDAR events; the planning consumer received 1,566, with eight overflow drops. Its bounded display tap received 1,563 frames. Browser presentation telemetry accepted 920 samples with no frame-timeout reports. The source-to-second-animation-frame proxy was 134.8 ms p50 and 368.6 ms p95 (maximum 1,297.7 ms).
This rules out a two-to-five-second upstream scanner or ingress pause for that run. It does not claim a GPU-paint measurement: the browser metric is explicitly a bounded request/admission/animation-frame proxy.
The visible stepping came from the presentation representation: LiveDisplayBuffer aggregated each half-second into a static Rerun chunk. Its 100 ms poll did not make that static replacement look like a continuously arriving cloud.
Change boundary
LiveDisplayBuffer now retains the bounded, frozen half-second history while keeping a separate current point head for every accepted scanner frame. live_scene_delta logs that head on the scanner source-sequence timeline. The history remains capped; no numeric registration input, fit decision, vehicle command, scanner command, or authority boundary was changed.
The active Planning Scene now reuses the canonical vertical RangeControl. It receives the exact finite Z bounds of the immutable reference cloud from the selected run status and continues to reconcile them from the scene response headers. Moving the control sends ceiling_m through the existing scene stream; reference, registered query, and green evidence are clipped in the reference frame. The route remains visible as context.
The saved-project viewer is a separate static registration RRD. It is not evidence that the active Planning Scene has been visually exercised, and no duplicate slider was added there.
Validation
- Backend planning tests: 13 passed (
tests/test_planning_live.py,tests/test_planning_fast_display.py). - Focused browser-stream tests: 9 passed.
- Frontend typecheck passed.
- Frontend unit suite: 872 passed, 0 failed.
- Production build passed.
- After controlled local reload, the service health check passed. The selected terminal run reports height bounds
-0.741 mto7.401 m; the delta endpoint returns the same bounds.
Physical acceptance still required
Start a fresh supervised planning run only through the ordinary operator flow. During the first continuous walk, confirm that the cloud has a moving live head rather than half-second static jumps. Move the vertical slice and verify that reference, new cloud, and green evidence cut at the same elevation. Afterwards retain the run identity and compare source frames, accepted browser samples, and p95 proxy with this baseline. This confirms visual behavior; it remains separate from any future rover-control authority decision.