feat(planning): consolidate recorded-route localization and spatial scene
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.
This commit is contained in:
@@ -7673,6 +7673,26 @@ test("spatial controls explain the bounded K1 calibration wait before point data
|
||||
}
|
||||
});
|
||||
|
||||
test("planning status extends only its current authoritative acquiring session", () => {
|
||||
const state = runtimeState();
|
||||
const spatialActivity = {sessionId: "data-session-001", label: "Привязка к эталону", detail: "Ожидание на месте.", busy: true};
|
||||
const render = (current, activity = spatialActivity, controllerPatch = {}) => renderToStaticMarkup(createElement(K1SpatialControlsView, {
|
||||
controller: {...acquisitionController(current), ...controllerPatch}, spatialActivity: activity,
|
||||
}));
|
||||
assert.match(render(state), /Привязка к эталону/);
|
||||
assert.match(render(state), /Ожидание на месте/);
|
||||
assert.doesNotMatch(render(state, {...spatialActivity, sessionId: "other-capture"}), /Привязка к эталону/);
|
||||
for (const acquisitionState of ["awaiting_external_start", "starting", "awaiting_external_stop", "stopping", "finalizing"]) {
|
||||
const current = structuredClone(state); current.acquisition.state = acquisitionState;
|
||||
assert.doesNotMatch(render(current), /Привязка к эталону/);
|
||||
}
|
||||
const lost = structuredClone(state); lost.connection_supervisor = supervisor({control: true, data: false, dataPlaneState: "stalled"});
|
||||
assert.doesNotMatch(render(lost), /Привязка к эталону/);
|
||||
assert.doesNotMatch(render(state, spatialActivity, {physicalStopInFlight: true}), /Привязка к эталону/);
|
||||
const cleanup = structuredClone(state); cleanup.acquisition.cleanup_pending = true;
|
||||
assert.doesNotMatch(render(cleanup), /Привязка к эталону/);
|
||||
});
|
||||
|
||||
test("contour health never promotes selection or replay metrics to live authority", () => {
|
||||
const selectedOnly = {
|
||||
phase: "starting",
|
||||
|
||||
Reference in New Issue
Block a user