fix(k1): stabilize repeated acquisition and live viewer recovery

This commit is contained in:
DCCONSTRUCTIONS
2026-07-29 01:55:12 +03:00
parent 37b8930527
commit 2a97cf28c0
28 changed files with 2776 additions and 286 deletions
+25
View File
@@ -136,6 +136,31 @@ def test_live_ingress_allows_only_one_worker_consumer() -> None:
ingress.open_consumer("worker-2")
def test_live_ingress_new_session_discards_queued_events_from_previous_session() -> None:
ingress = LivePerceptionIngress()
ingress.open_consumer("worker-1")
ingress.begin_session("session-1")
assert ingress.publish(
modality="lidar",
source_id="lixel/application/report/lio_pcl",
source_sequence=1,
captured_at_epoch_ns=1,
received_monotonic_ns=1,
payload=b"old-session",
)
ingress.end_session("session-1")
ingress.begin_session("session-2")
events = []
while (event := ingress.take_next("worker-1", timeout=0)) is not None:
events.append(event)
assert len(events) == 1
assert events[0].session_id == "session-2"
assert events[0].modality == "control"
assert events[0].payload == b'{"event":"session-start"}'
def test_live_result_round_trip_keeps_video_mask_boxes_and_shadow_authority() -> None:
mask = np.zeros((600, 800), dtype=np.uint8)
mask[100:120, 200:240] = 4