fix(replay): serve admitted AI overlays without revalidation

This commit is contained in:
DCCONSTRUCTIONS
2026-07-29 23:13:42 +03:00
parent 8e4891d608
commit cc6838ed24
10 changed files with 990 additions and 173 deletions
+30
View File
@@ -1313,6 +1313,16 @@ def test_recorded_perception_endpoint_returns_one_complete_optional_overlay(
calls.append((session_id, application_id, recording_id))
return b"RRF2perception"
def status(self, session_id: str, *, recording_id: str) -> dict[str, object]:
assert session_id == session.name
assert recording_id == "recording-001"
return {
"state": "preparing",
"phase": "artifact-validation",
"elapsed_seconds": 2.5,
"byte_length": None,
}
router = build_session_router(store, perception_overlay_provider=Provider())
perception_route = endpoint(
router,
@@ -1334,6 +1344,26 @@ def test_recorded_perception_endpoint_returns_one_complete_optional_overlay(
assert calls == [
(session.name, "nodedc_mission_core_recorded", "recording-001")
]
status_route = endpoint(
router,
"/api/v1/observation-sessions/{session_id}/perception/status",
"GET",
)
status_response = Response()
status = asyncio.run(
status_route(
session_id=session.name,
response=status_response,
recording_id="recording-001",
)
)
assert status == {
"state": "preparing",
"phase": "artifact-validation",
"elapsed_seconds": 2.5,
"byte_length": None,
}
assert status_response.headers["cache-control"] == "no-store"
empty_router = build_session_router(store)
empty_route = endpoint(