Refactor LED control UI to Vue3

This commit is contained in:
sealks
2026-07-17 02:10:08 +08:00
parent fe906e028b
commit ba9f0044f3
16 changed files with 1906 additions and 752 deletions
+32
View File
@@ -33,6 +33,38 @@ def test_sync_coordinator_marks_command_complete_after_both_tiles_ack():
assert coordinator.status()["commands"][0]["complete"]
def test_sync_coordinator_releases_scene_commit_after_both_tiles_prepare():
coordinator = SyncCoordinator(["left", "right"], command_ttl_seconds=30)
message = CommandEnvelope(
type=CommandType.COMMIT_SCENE,
payload={"apply_at_ms": 2000, "state": {"active_scene_id": "overview"}},
)
coordinator.register_command(message, message.payload)
coordinator.ack(
{
"command_id": message.command_id,
"node_id": "left-node",
"tile_id": "left",
"status": "prepared",
}
)
assert coordinator.release_if_prepared(message.command_id) is None
coordinator.ack(
{
"command_id": message.command_id,
"node_id": "right-node",
"tile_id": "right",
"status": "prepared",
}
)
released = coordinator.release_if_prepared(message.command_id)
assert released is not None
assert released.released_at_ms is not None
assert coordinator.release_if_prepared(message.command_id) is None
def test_sync_coordinator_tracks_node_clock_and_frame_metrics():
coordinator = SyncCoordinator(["left", "right"], command_ttl_seconds=30)
coordinator.connect_node(node_id="left-node", tile_id="left", app_version="test")