{"action":{"description":"An agent's decision submitted to the environment.\n\nAttributes:\n    action_type:  One of the valid ActionType values.\n    payload:      Optional extra data (e.g. camera ID for switch, region for zoom).\n    confidence:   Agent's self-reported confidence in [0, 1].","properties":{"action_type":{"title":"Action Type","type":"string"},"payload":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Payload"},"confidence":{"default":1.0,"maximum":1.0,"minimum":0.0,"title":"Confidence","type":"number"},"predicted_gaze":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"default":null,"description":"Predicted [y, x] in 0-1000 normalized space","title":"Predicted Gaze"},"velocity_vector":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"default":null,"description":"Predicted [dy, dx] pixels/step","title":"Velocity Vector"}},"required":["action_type"],"title":"Action","type":"object"},"observation":{"$defs":{"AlertLevel":{"description":"Severity tiers for incoming surveillance alerts.","enum":["none","low","medium","high","critical"],"title":"AlertLevel","type":"string"}},"description":"What the agent *sees* at each environment step.\n\nAttributes:\n    task_id:            Unique identifier for the current task / episode.\n    step:               Current step index within the episode (0-based).\n    camera_id:          Identifier of the camera feed currently shown.\n    frame_b64:          Base-64 encoded JPEG/PNG of the current frame.\n    context:            Optional textual description or alert note.\n    available_actions:  Actions the agent may legally choose right now.\n    alert_level:        Severity of the most recent alert, if any.\n    metadata:           Arbitrary extra key-value metadata.","properties":{"task_id":{"title":"Task Id","type":"string"},"step":{"minimum":0,"title":"Step","type":"integer"},"camera_id":{"title":"Camera Id","type":"string"},"frame_b64":{"title":"Frame B64","type":"string"},"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Context"},"available_actions":{"items":{"type":"string"},"title":"Available Actions","type":"array"},"alert_level":{"anyOf":[{"$ref":"#/$defs/AlertLevel"},{"type":"null"}],"default":null},"metadata":{"additionalProperties":true,"title":"Metadata","type":"object"}},"required":["task_id","step","camera_id","frame_b64","available_actions"],"title":"Observation","type":"object"},"state":{"description":"Mutable runtime state maintained by the environment for one episode.","properties":{"task_id":{"title":"Task Id","type":"string"},"current_step":{"default":0,"title":"Current Step","type":"integer"},"current_camera":{"default":"","title":"Current Camera","type":"string"},"current_frame_idx":{"default":0,"title":"Current Frame Idx","type":"integer"},"action_history":{"items":{"additionalProperties":true,"type":"object"},"title":"Action History","type":"array"},"cumulative_reward":{"default":0.0,"title":"Cumulative Reward","type":"number"},"done":{"default":false,"title":"Done","type":"boolean"},"zoom_active":{"default":false,"title":"Zoom Active","type":"boolean"},"zoom_region":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Zoom Region"},"cameras_visited":{"items":{"type":"string"},"title":"Cameras Visited","type":"array"},"frames_inspected":{"items":{"type":"string"},"title":"Frames Inspected","type":"array"},"risk_classified":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Risk Classified"},"escalated":{"default":false,"title":"Escalated","type":"boolean"},"dismissed":{"default":false,"title":"Dismissed","type":"boolean"}},"required":["task_id"],"title":"EpisodeState","type":"object"}}