{ "components": { "schemas": { "ActiveScanInfo": { "description": "Info for an active scan stored in the KV store.", "properties": { "config": { "title": "Config", "type": "string" }, "last_updated": { "title": "Last Updated", "type": "number" }, "location": { "title": "Location", "type": "string" }, "metrics": { "$ref": "#/components/schemas/ScanMetrics" }, "scan_id": { "title": "Scan Id", "type": "string" }, "scanner_names": { "items": { "type": "string" }, "title": "Scanner Names", "type": "array" }, "start_time": { "title": "Start Time", "type": "number" }, "summary": { "$ref": "#/components/schemas/Summary" }, "title": { "title": "Title", "type": "string" }, "total_scans": { "title": "Total Scans", "type": "integer" } }, "required": [ "scan_id", "metrics", "summary", "last_updated", "title", "config", "total_scans", "start_time", "scanner_names", "location" ], "title": "ActiveScanInfo", "type": "object" }, "ActiveScansResponse": { "description": "Response body for GET /scans/active endpoint.", "properties": { "items": { "additionalProperties": { "$ref": "#/components/schemas/ActiveScanInfo" }, "title": "Items", "type": "object" } }, "required": [ "items" ], "title": "ActiveScansResponse", "type": "object" }, "AdaptiveConcurrency": { "description": "Bounds and tuning for an adaptive concurrency controller.\n\nBasic fields (`min`, `start`, `max`) bound the range the controller will\nscale within. Advanced fields (`cooldown_seconds`, `decrease_factor`,\n`scale_up_percent`) tune the response curve and have sensible defaults\nfor typical evaluation workloads \u2014 see the parallelism docs for guidance.\nAccepts a string shorthand (\"min-max\" or \"min-start-max\") for use in CLI\nflags and config files; advanced fields are Python-only.", "properties": { "cooldown_seconds": { "default": 15.0, "title": "Cooldown Seconds", "type": "number" }, "decrease_factor": { "default": 0.8, "title": "Decrease Factor", "type": "number" }, "max": { "default": 100, "title": "Max", "type": "integer" }, "min": { "default": 10, "title": "Min", "type": "integer" }, "scale_up_percent": { "default": 0.05, "title": "Scale Up Percent", "type": "number" }, "start": { "default": 20, "title": "Start", "type": "integer" } }, "required": [ "min", "max", "start", "cooldown_seconds", "decrease_factor", "scale_up_percent" ], "title": "AdaptiveConcurrency", "type": "object" }, "AnchorEvent": { "description": "Marks a rollback-able point in a replayable trajectory.\n\nEmitted by an orchestrator immediately after a step it can later roll\nback to (a staged message, a model generate, etc.). Carries no content;\n``anchor_id`` is the addressable identifier that ``TimelineSpan.branched_from``\nreferences. Hidden from the viewer transcript by default.", "properties": { "anchor_id": { "title": "Anchor Id", "type": "string" }, "event": { "const": "anchor", "default": "anchor", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "source": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "anchor_id" ], "title": "AnchorEvent", "type": "object" }, "AppConfig": { "additionalProperties": false, "description": "Application configuration returned by GET /config.", "properties": { "filter": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Filter" }, "generate_config": { "anyOf": [ { "$ref": "#/components/schemas/GenerateConfig-Output" }, { "type": "null" } ] }, "home_dir": { "title": "Home Dir", "type": "string" }, "limit": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Limit" }, "log_level": { "anyOf": [ { "enum": [ "debug", "http", "sandbox", "info", "warning", "error", "critical", "notset" ], "type": "string" }, { "type": "null" } ], "title": "Log Level" }, "max_processes": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Processes" }, "max_transcripts": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Transcripts" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "model_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "string" }, { "type": "null" } ], "title": "Model Args" }, "model_base_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model Base Url" }, "model_roles": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/ModelConfig-Output" }, { "type": "string" } ] }, "type": "object" }, { "type": "null" } ], "title": "Model Roles" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "project_dir": { "title": "Project Dir", "type": "string" }, "results": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Results" }, "scanners": { "anyOf": [ { "items": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "array" }, { "additionalProperties": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "object" }, { "type": "null" } ], "title": "Scanners" }, "scans": { "$ref": "#/components/schemas/AppDir" }, "shuffle": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "type": "null" } ], "title": "Shuffle" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "transcripts": { "anyOf": [ { "$ref": "#/components/schemas/AppDir" }, { "type": "null" } ] }, "validation": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/ValidationSet-Output" } ] }, "type": "object" }, { "type": "null" } ], "title": "Validation" }, "worklist": { "anyOf": [ { "items": { "$ref": "#/components/schemas/Worklist" }, "type": "array" }, { "type": "null" } ], "title": "Worklist" } }, "required": [ "filter", "scans", "home_dir", "project_dir" ], "title": "AppConfig", "type": "object" }, "AppDir": { "description": "Directory with source tracking.", "properties": { "dir": { "title": "Dir", "type": "string" }, "source": { "enum": [ "project", "cli" ], "title": "Source", "type": "string" } }, "required": [ "dir", "source" ], "title": "AppDir", "type": "object" }, "ApprovalEvent": { "description": "Tool approval.", "properties": { "approver": { "title": "Approver", "type": "string" }, "call": { "$ref": "#/components/schemas/ToolCall" }, "decision": { "enum": [ "approve", "modify", "reject", "escalate", "terminate" ], "title": "Decision", "type": "string" }, "event": { "const": "approval", "default": "approval", "title": "Event", "type": "string" }, "explanation": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Explanation" }, "message": { "title": "Message", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "modified": { "anyOf": [ { "$ref": "#/components/schemas/ToolCall" }, { "type": "null" } ] }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "view": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallView" }, { "type": "null" } ] }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "message", "call", "approver", "decision" ], "title": "ApprovalEvent", "type": "object" }, "BatchConfig": { "description": "Batch processing configuration.", "properties": { "max_batches": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Batches" }, "max_consecutive_check_failures": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Consecutive Check Failures" }, "max_size": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Size" }, "send_delay": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Send Delay" }, "size": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Size" }, "tick": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Tick" } }, "title": "BatchConfig", "type": "object" }, "BranchEvent": { "description": "Marks where a branched trajectory's unique content begins.\n\nEmitted at the point where a branch transitions from replaying its\nparent's prefix to live execution. Events before this in the trajectory's\nspan are replay-phase re-execution; events after are the branch's\ngenuine new content.", "properties": { "event": { "const": "branch", "default": "branch", "title": "Event", "type": "string" }, "from_anchor": { "default": "", "title": "From Anchor", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "from_anchor" ], "title": "BranchEvent", "type": "object" }, "BudgetPercent": { "description": "Fire on each ``percent``-percent slice of the active ``budget``.\n\n``percent`` is in 0..100. With ``percent=25``, the trigger fires\nat ~25% / 50% / 75% / 100% of the relevant limit's usage. Has no\neffect when no limit is set for the chosen budget.", "properties": { "budget": { "enum": [ "token", "cost", "time", "working" ], "title": "Budget", "type": "string" }, "percent": { "title": "Percent", "type": "number" } }, "required": [ "budget", "percent" ], "title": "BudgetPercent", "type": "object" }, "CachePolicy": { "description": "Caching options for model generation.", "properties": { "expiry": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": "1W", "title": "Expiry" }, "per_epoch": { "default": true, "title": "Per Epoch", "type": "boolean" }, "scopes": { "additionalProperties": { "type": "string" }, "title": "Scopes", "type": "object" } }, "required": [ "per_epoch", "scopes" ], "title": "CachePolicy", "type": "object" }, "ChatCompletionChoice": { "description": "Choice generated for completion.", "properties": { "logprobs": { "anyOf": [ { "$ref": "#/components/schemas/Logprobs" }, { "type": "null" } ] }, "message": { "$ref": "#/components/schemas/ChatMessageAssistant" }, "prompt_logprobs": { "anyOf": [ { "$ref": "#/components/schemas/Logprobs" }, { "type": "null" } ] }, "stop_details": { "anyOf": [ { "$ref": "#/components/schemas/StopDetails" }, { "type": "null" } ] }, "stop_reason": { "default": "unknown", "enum": [ "stop", "max_tokens", "model_length", "tool_calls", "content_filter", "unknown" ], "title": "Stop Reason", "type": "string" } }, "required": [ "message", "stop_reason" ], "title": "ChatCompletionChoice", "type": "object" }, "ChatMessageAssistant": { "description": "Assistant chat message.", "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ContentText" }, { "$ref": "#/components/schemas/ContentReasoning" }, { "$ref": "#/components/schemas/ContentImage" }, { "$ref": "#/components/schemas/ContentAudio" }, { "$ref": "#/components/schemas/ContentVideo" }, { "$ref": "#/components/schemas/ContentData" }, { "$ref": "#/components/schemas/ContentToolUse" }, { "$ref": "#/components/schemas/ContentDocument" } ] }, "type": "array" } ], "title": "Content" }, "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Id" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "role": { "const": "assistant", "default": "assistant", "title": "Role", "type": "string" }, "source": { "anyOf": [ { "enum": [ "input", "generate", "operator" ], "type": "string" }, { "type": "null" } ], "title": "Source" }, "tool_calls": { "anyOf": [ { "items": { "$ref": "#/components/schemas/ToolCall" }, "type": "array" }, { "type": "null" } ], "title": "Tool Calls" } }, "required": [ "content", "role" ], "title": "ChatMessageAssistant", "type": "object" }, "ChatMessageSystem": { "description": "System chat message.", "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ContentText" }, { "$ref": "#/components/schemas/ContentReasoning" }, { "$ref": "#/components/schemas/ContentImage" }, { "$ref": "#/components/schemas/ContentAudio" }, { "$ref": "#/components/schemas/ContentVideo" }, { "$ref": "#/components/schemas/ContentData" }, { "$ref": "#/components/schemas/ContentToolUse" }, { "$ref": "#/components/schemas/ContentDocument" } ] }, "type": "array" } ], "title": "Content" }, "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Id" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "role": { "const": "system", "default": "system", "title": "Role", "type": "string" }, "source": { "anyOf": [ { "enum": [ "input", "generate", "operator" ], "type": "string" }, { "type": "null" } ], "title": "Source" } }, "required": [ "content", "role" ], "title": "ChatMessageSystem", "type": "object" }, "ChatMessageTool": { "description": "Tool chat message.", "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ContentText" }, { "$ref": "#/components/schemas/ContentReasoning" }, { "$ref": "#/components/schemas/ContentImage" }, { "$ref": "#/components/schemas/ContentAudio" }, { "$ref": "#/components/schemas/ContentVideo" }, { "$ref": "#/components/schemas/ContentData" }, { "$ref": "#/components/schemas/ContentToolUse" }, { "$ref": "#/components/schemas/ContentDocument" } ] }, "type": "array" } ], "title": "Content" }, "error": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallError" }, { "type": "null" } ] }, "function": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Function" }, "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Id" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "role": { "const": "tool", "default": "tool", "title": "Role", "type": "string" }, "source": { "anyOf": [ { "enum": [ "input", "generate", "operator" ], "type": "string" }, { "type": "null" } ], "title": "Source" }, "tool_call_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Tool Call Id" } }, "required": [ "content", "role" ], "title": "ChatMessageTool", "type": "object" }, "ChatMessageUser": { "description": "User chat message.", "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ContentText" }, { "$ref": "#/components/schemas/ContentReasoning" }, { "$ref": "#/components/schemas/ContentImage" }, { "$ref": "#/components/schemas/ContentAudio" }, { "$ref": "#/components/schemas/ContentVideo" }, { "$ref": "#/components/schemas/ContentData" }, { "$ref": "#/components/schemas/ContentToolUse" }, { "$ref": "#/components/schemas/ContentDocument" } ] }, "type": "array" } ], "title": "Content" }, "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Id" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "role": { "const": "user", "default": "user", "title": "Role", "type": "string" }, "source": { "anyOf": [ { "enum": [ "input", "generate", "operator" ], "type": "string" }, { "type": "null" } ], "title": "Source" }, "tool_call_id": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tool Call Id" } }, "required": [ "content", "role" ], "title": "ChatMessageUser", "type": "object" }, "CheckpointEvent": { "additionalProperties": true, "description": "A successful checkpoint commit.\n\nEmitted by the checkpointer immediately after the per-checkpoint\nfile JSON is written \u2014 see working.md \u00a78a. Carries the full\ncheckpoint payload flattened into top-level fields (via multiple\ninheritance from :class:`Checkpoint`), so a consumer of\n``transcript().events`` (or the ``.eval`` log) reads\n``event.checkpoint_id`` / ``event.trigger`` / ``event.host`` etc.\ndirectly \u2014 same data as someone reading\n``/ckpt-NNNNN.json`` from disk.", "properties": { "checkpoint_id": { "title": "Checkpoint Id", "type": "integer" }, "created_at": { "format": "date-time", "title": "Created At", "type": "string" }, "duration_ms": { "title": "Duration Ms", "type": "integer" }, "event": { "const": "checkpoint", "default": "checkpoint", "title": "Event", "type": "string" }, "host": { "$ref": "#/components/schemas/SnapshotDetails" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "sandboxes": { "additionalProperties": { "$ref": "#/components/schemas/SnapshotDetails" }, "title": "Sandboxes", "type": "object" }, "size_bytes": { "title": "Size Bytes", "type": "integer" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "trigger": { "enum": [ "time", "turn", "manual", "token", "cost", "budget", "agent_complete" ], "title": "Trigger", "type": "string" }, "trigger_metadata": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "type": "object" }, { "type": "null" } ], "title": "Trigger Metadata" }, "turn": { "title": "Turn", "type": "integer" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "checkpoint_id", "trigger", "turn", "created_at", "duration_ms", "size_bytes", "host", "sandboxes", "timestamp", "working_start", "event" ], "title": "CheckpointEvent", "type": "object" }, "CheckpointSampleConfig": { "description": "Checkpoint configuration fields that may be set at the sample layer.\n\nThese fields can be specified on ``Sample(checkpoint=...)`` and are\nalso accepted at the task and eval layers (where they participate in\nthe per-field merge \u2014 precedence: eval > sample > task).\n\nThe fields excluded from this base class \u2014 ``checkpoints_location``\nand ``retention`` \u2014 are eval-wide concerns that the sample layer must\nnot influence. They live only on the derived :class:`CheckpointConfig`,\nwhich is the type used at the task and eval layers.", "properties": { "max_consecutive_failures": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Consecutive Failures" }, "sandbox_paths": { "anyOf": [ { "additionalProperties": { "items": { "type": "string" }, "type": "array" }, "type": "object" }, { "type": "null" } ], "title": "Sandbox Paths" }, "trigger": { "anyOf": [ { "$ref": "#/components/schemas/Manual" }, { "$ref": "#/components/schemas/TurnInterval" }, { "$ref": "#/components/schemas/TimeInterval" }, { "$ref": "#/components/schemas/TokenInterval" }, { "$ref": "#/components/schemas/CostInterval" }, { "$ref": "#/components/schemas/BudgetPercent" }, { "type": "null" } ], "title": "Trigger" } }, "title": "CheckpointSampleConfig", "type": "object" }, "CompactionEvent": { "description": "Compaction of conversation history.", "properties": { "event": { "const": "compaction", "default": "compaction", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "role": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Role" }, "source": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "tokens_after": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Tokens After" }, "tokens_before": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Tokens Before" }, "type": { "default": "summary", "enum": [ "summary", "edit", "trim" ], "title": "Type", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "type" ], "title": "CompactionEvent", "type": "object" }, "Condition": { "description": "WHERE clause condition that can be combined with others.", "properties": { "is_compound": { "default": false, "title": "Is Compound", "type": "boolean" }, "left": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/Condition" }, { "type": "null" } ], "title": "Left" }, "operator": { "anyOf": [ { "$ref": "#/components/schemas/Operator" }, { "$ref": "#/components/schemas/LogicalOperator" }, { "type": "null" } ], "title": "Operator" }, "right": { "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "format": "date-time", "type": "string" }, { "format": "date", "type": "string" }, { "type": "null" } ] }, "type": "array" }, { "maxItems": 2, "minItems": 2, "prefixItems": [ { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "format": "date-time", "type": "string" }, { "format": "date", "type": "string" }, { "type": "null" } ] }, { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "format": "date-time", "type": "string" }, { "format": "date", "type": "string" }, { "type": "null" } ] } ], "type": "array" }, { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "format": "date-time", "type": "string" }, { "format": "date", "type": "string" }, { "type": "null" } ], "title": "Right" } }, "required": [ "is_compound" ], "title": "Condition", "type": "object" }, "ContentAudio": { "description": "Audio content.", "properties": { "audio": { "title": "Audio", "type": "string" }, "format": { "enum": [ "wav", "mp3" ], "title": "Format", "type": "string" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "type": { "const": "audio", "default": "audio", "title": "Type", "type": "string" } }, "required": [ "type", "audio", "format" ], "title": "ContentAudio", "type": "object" }, "ContentCitation": { "description": "A generic content citation.", "properties": { "cited_text": { "anyOf": [ { "type": "string" }, { "items": { "type": "integer" }, "maxItems": 2, "minItems": 2, "type": "array" }, { "type": "null" } ], "title": "Cited Text" }, "internal": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "type": "object" }, { "type": "null" } ], "title": "Internal" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "content", "default": "content", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ContentCitation", "type": "object" }, "ContentData": { "description": "Model internal.", "properties": { "data": { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "title": "Data", "type": "object" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "type": { "const": "data", "default": "data", "title": "Type", "type": "string" } }, "required": [ "type", "data" ], "title": "ContentData", "type": "object" }, "ContentDocument": { "description": "Document content (e.g. a PDF).", "properties": { "citations": { "default": false, "title": "Citations", "type": "boolean" }, "document": { "title": "Document", "type": "string" }, "filename": { "title": "Filename", "type": "string" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "mime_type": { "title": "Mime Type", "type": "string" }, "type": { "const": "document", "default": "document", "title": "Type", "type": "string" } }, "required": [ "type", "document", "filename", "mime_type", "citations" ], "title": "ContentDocument", "type": "object" }, "ContentImage": { "description": "Image content.", "properties": { "detail": { "default": "auto", "enum": [ "auto", "low", "high", "original" ], "title": "Detail", "type": "string" }, "image": { "title": "Image", "type": "string" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "type": { "const": "image", "default": "image", "title": "Type", "type": "string" } }, "required": [ "type", "image", "detail" ], "title": "ContentImage", "type": "object" }, "ContentReasoning": { "description": "Reasoning content.\n\nSee the specification for [thinking blocks](https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking#understanding-thinking-blocks) for Claude models.", "properties": { "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "reasoning": { "title": "Reasoning", "type": "string" }, "redacted": { "default": false, "title": "Redacted", "type": "boolean" }, "signature": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Signature" }, "summary": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Summary" }, "type": { "const": "reasoning", "default": "reasoning", "title": "Type", "type": "string" } }, "required": [ "type", "reasoning", "redacted" ], "title": "ContentReasoning", "type": "object" }, "ContentText": { "description": "Text content.", "properties": { "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "content": "#/components/schemas/ContentCitation", "document": "#/components/schemas/DocumentCitation", "url": "#/components/schemas/UrlCitation" }, "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/ContentCitation" }, { "$ref": "#/components/schemas/DocumentCitation" }, { "$ref": "#/components/schemas/UrlCitation" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "refusal": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Refusal" }, "text": { "title": "Text", "type": "string" }, "type": { "const": "text", "default": "text", "title": "Type", "type": "string" } }, "required": [ "type", "text" ], "title": "ContentText", "type": "object" }, "ContentToolUse": { "description": "Server side tool use.", "properties": { "arguments": { "title": "Arguments", "type": "string" }, "context": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Context" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error" }, "id": { "title": "Id", "type": "string" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "name": { "title": "Name", "type": "string" }, "result": { "title": "Result", "type": "string" }, "tool_type": { "enum": [ "web_search", "mcp_call", "code_execution" ], "title": "Tool Type", "type": "string" }, "type": { "const": "tool_use", "default": "tool_use", "title": "Type", "type": "string" } }, "required": [ "type", "tool_type", "id", "name", "arguments", "result" ], "title": "ContentToolUse", "type": "object" }, "ContentVideo": { "description": "Video content.", "properties": { "format": { "enum": [ "mp4", "mpeg", "mov" ], "title": "Format", "type": "string" }, "internal": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "type": { "const": "video", "default": "video", "title": "Type", "type": "string" }, "video": { "title": "Video", "type": "string" } }, "required": [ "type", "video", "format" ], "title": "ContentVideo", "type": "object" }, "CostInterval": { "description": "Fire every ``every`` dollars of sample-level cost.\n\nSample total cost is read from\n:func:`inspect_ai.model.sample_total_cost`; the trigger fires\neach time the running total crosses another ``every``-dollar\nboundary since the last fire.", "properties": { "every": { "title": "Every", "type": "number" } }, "required": [ "every" ], "title": "CostInterval", "type": "object" }, "CreateValidationSetRequest": { "description": "Request body for POST /validations endpoint.", "properties": { "cases": { "items": { "$ref": "#/components/schemas/ValidationCaseRequest" }, "title": "Cases", "type": "array" }, "path": { "title": "Path", "type": "string" } }, "required": [ "path", "cases" ], "title": "CreateValidationSetRequest", "type": "object" }, "DistResponse": { "description": "Response body for GET /dist endpoint.", "properties": { "path": { "title": "Path", "type": "string" } }, "required": [ "path" ], "title": "DistResponse", "type": "object" }, "DistinctRequest": { "description": "Request body for POST /transcripts/{dir}/distinct endpoint.", "properties": { "column": { "title": "Column", "type": "string" }, "filter": { "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "type": "null" } ] } }, "required": [ "column" ], "title": "DistinctRequest", "type": "object" }, "DocumentCitation": { "description": "A citation that refers to a page range in a document.", "properties": { "cited_text": { "anyOf": [ { "type": "string" }, { "items": { "type": "integer" }, "maxItems": 2, "minItems": 2, "type": "array" }, { "type": "null" } ], "title": "Cited Text" }, "internal": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "type": "object" }, { "type": "null" } ], "title": "Internal" }, "range": { "anyOf": [ { "$ref": "#/components/schemas/DocumentRange" }, { "type": "null" } ] }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "document", "default": "document", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "DocumentCitation", "type": "object" }, "DocumentRange": { "description": "A range specifying a section of a document.", "properties": { "end_index": { "title": "End Index", "type": "integer" }, "start_index": { "title": "Start Index", "type": "integer" }, "type": { "enum": [ "block", "page", "char" ], "title": "Type", "type": "string" } }, "required": [ "type", "start_index", "end_index" ], "title": "DocumentRange", "type": "object" }, "Error": { "description": "Scan error (runtime error which occurred during scan).", "properties": { "error": { "title": "Error", "type": "string" }, "refusal": { "title": "Refusal", "type": "boolean" }, "scanner": { "title": "Scanner", "type": "string" }, "traceback": { "title": "Traceback", "type": "string" }, "transcript_id": { "title": "Transcript Id", "type": "string" } }, "required": [ "transcript_id", "scanner", "error", "traceback", "refusal" ], "title": "Error", "type": "object" }, "ErrorEvent": { "description": "Event with sample error.", "properties": { "error": { "$ref": "#/components/schemas/EvalError" }, "event": { "const": "error", "default": "error", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "error" ], "title": "ErrorEvent", "type": "object" }, "EvalError": { "description": "Eval error details.", "properties": { "message": { "title": "Message", "type": "string" }, "traceback": { "title": "Traceback", "type": "string" }, "traceback_ansi": { "title": "Traceback Ansi", "type": "string" } }, "required": [ "message", "traceback", "traceback_ansi" ], "title": "EvalError", "type": "object" }, "EventsData": { "additionalProperties": true, "description": "Pooled data extracted by condense_events / condense_sample.", "properties": { "calls": { "items": { "$ref": "#/components/schemas/JsonValue" }, "title": "Calls", "type": "array" }, "messages": { "items": { "anyOf": [ { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" } ] }, "title": "Messages", "type": "array" } }, "required": [ "messages", "calls" ], "title": "EventsData", "type": "object" }, "GenerateConfig-Input": { "description": "Model generation options.", "properties": { "adaptive_connections": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "$ref": "#/components/schemas/AdaptiveConcurrency" }, { "type": "null" } ], "title": "Adaptive Connections" }, "attempt_timeout": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Attempt Timeout" }, "batch": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "$ref": "#/components/schemas/BatchConfig" }, { "type": "null" } ], "title": "Batch" }, "best_of": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Best Of" }, "cache": { "anyOf": [ { "type": "boolean" }, { "$ref": "#/components/schemas/CachePolicy" }, { "type": "null" } ], "title": "Cache" }, "cache_prompt": { "anyOf": [ { "const": "auto", "type": "string" }, { "type": "boolean" }, { "type": "null" } ], "title": "Cache Prompt" }, "effort": { "anyOf": [ { "enum": [ "low", "medium", "high", "xhigh", "max" ], "type": "string" }, { "type": "null" } ], "title": "Effort" }, "extra_body": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Extra Body" }, "extra_headers": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "title": "Extra Headers" }, "fallback_models": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Fallback Models" }, "frequency_penalty": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Frequency Penalty" }, "internal_tools": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Internal Tools" }, "logit_bias": { "anyOf": [ { "additionalProperties": { "type": "number" }, "type": "object" }, { "type": "null" } ], "title": "Logit Bias" }, "logprobs": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Logprobs" }, "max_connections": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Connections" }, "max_retries": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Retries" }, "max_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Tokens" }, "max_tool_output": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Tool Output" }, "modalities": { "anyOf": [ { "items": { "anyOf": [ { "const": "image", "type": "string" }, { "$ref": "#/components/schemas/ImageOutput" } ] }, "type": "array" }, { "type": "null" } ], "title": "Modalities" }, "num_choices": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Num Choices" }, "parallel_tool_calls": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Parallel Tool Calls" }, "presence_penalty": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Presence Penalty" }, "prompt_logprobs": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Prompt Logprobs" }, "reasoning_effort": { "anyOf": [ { "enum": [ "none", "minimal", "low", "medium", "high", "xhigh", "max" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning Effort" }, "reasoning_history": { "anyOf": [ { "enum": [ "none", "all", "last", "auto" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning History" }, "reasoning_mode": { "anyOf": [ { "enum": [ "standard", "pro" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning Mode" }, "reasoning_summary": { "anyOf": [ { "enum": [ "none", "concise", "detailed", "auto" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning Summary" }, "reasoning_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Reasoning Tokens" }, "response_schema": { "anyOf": [ { "$ref": "#/components/schemas/ResponseSchema-Input" }, { "type": "null" } ] }, "seed": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Seed" }, "stop_seqs": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Stop Seqs" }, "system_message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "System Message" }, "temperature": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Temperature" }, "timeout": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Timeout" }, "top_k": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Top K" }, "top_logprobs": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Top Logprobs" }, "top_p": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Top P" }, "verbosity": { "anyOf": [ { "enum": [ "low", "medium", "high" ], "type": "string" }, { "type": "null" } ], "title": "Verbosity" } }, "title": "GenerateConfig", "type": "object" }, "GenerateConfig-Output": { "description": "Model generation options.", "properties": { "adaptive_connections": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "$ref": "#/components/schemas/AdaptiveConcurrency" }, { "type": "null" } ], "title": "Adaptive Connections" }, "attempt_timeout": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Attempt Timeout" }, "batch": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "$ref": "#/components/schemas/BatchConfig" }, { "type": "null" } ], "title": "Batch" }, "best_of": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Best Of" }, "cache": { "anyOf": [ { "type": "boolean" }, { "$ref": "#/components/schemas/CachePolicy" }, { "type": "null" } ], "title": "Cache" }, "cache_prompt": { "anyOf": [ { "const": "auto", "type": "string" }, { "type": "boolean" }, { "type": "null" } ], "title": "Cache Prompt" }, "effort": { "anyOf": [ { "enum": [ "low", "medium", "high", "xhigh", "max" ], "type": "string" }, { "type": "null" } ], "title": "Effort" }, "extra_body": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Extra Body" }, "extra_headers": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "title": "Extra Headers" }, "fallback_models": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Fallback Models" }, "frequency_penalty": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Frequency Penalty" }, "internal_tools": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Internal Tools" }, "logit_bias": { "anyOf": [ { "additionalProperties": { "type": "number" }, "type": "object" }, { "type": "null" } ], "title": "Logit Bias" }, "logprobs": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Logprobs" }, "max_connections": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Connections" }, "max_retries": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Retries" }, "max_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Tokens" }, "max_tool_output": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Tool Output" }, "modalities": { "anyOf": [ { "items": { "anyOf": [ { "const": "image", "type": "string" }, { "$ref": "#/components/schemas/ImageOutput" } ] }, "type": "array" }, { "type": "null" } ], "title": "Modalities" }, "num_choices": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Num Choices" }, "parallel_tool_calls": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Parallel Tool Calls" }, "presence_penalty": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Presence Penalty" }, "prompt_logprobs": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Prompt Logprobs" }, "reasoning_effort": { "anyOf": [ { "enum": [ "none", "minimal", "low", "medium", "high", "xhigh", "max" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning Effort" }, "reasoning_history": { "anyOf": [ { "enum": [ "none", "all", "last", "auto" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning History" }, "reasoning_mode": { "anyOf": [ { "enum": [ "standard", "pro" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning Mode" }, "reasoning_summary": { "anyOf": [ { "enum": [ "none", "concise", "detailed", "auto" ], "type": "string" }, { "type": "null" } ], "title": "Reasoning Summary" }, "reasoning_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Reasoning Tokens" }, "response_schema": { "anyOf": [ { "$ref": "#/components/schemas/ResponseSchema-Output" }, { "type": "null" } ] }, "seed": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Seed" }, "stop_seqs": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Stop Seqs" }, "system_message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "System Message" }, "temperature": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Temperature" }, "timeout": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Timeout" }, "top_k": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Top K" }, "top_logprobs": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Top Logprobs" }, "top_p": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Top P" }, "verbosity": { "anyOf": [ { "enum": [ "low", "medium", "high" ], "type": "string" }, { "type": "null" } ], "title": "Verbosity" } }, "title": "GenerateConfig", "type": "object" }, "GrepSearchInput": { "additionalProperties": false, "description": "A persisted grep search input.", "properties": { "created_at": { "title": "Created At", "type": "string" }, "ignore_case": { "title": "Ignore Case", "type": "boolean" }, "query": { "title": "Query", "type": "string" }, "regex": { "title": "Regex", "type": "boolean" }, "search_id": { "title": "Search Id", "type": "string" }, "type": { "const": "grep", "default": "grep", "title": "Type", "type": "string" }, "word_boundary": { "title": "Word Boundary", "type": "boolean" } }, "required": [ "search_id", "query", "created_at", "type", "regex", "ignore_case", "word_boundary" ], "title": "GrepSearchInput", "type": "object" }, "GrepSearchRequest": { "additionalProperties": false, "description": "Request body for grep transcript searches.", "properties": { "events": { "anyOf": [ { "const": "all", "type": "string" }, { "items": { "anyOf": [ { "enum": [ "model", "tool", "compaction", "branch", "approval", "sandbox", "info", "store", "logger", "error", "span_begin", "span_end" ], "type": "string" }, { "type": "string" } ] }, "type": "array" }, { "type": "null" } ], "title": "Events" }, "ignore_case": { "default": true, "title": "Ignore Case", "type": "boolean" }, "messages": { "anyOf": [ { "const": "all", "type": "string" }, { "items": { "enum": [ "system", "user", "assistant", "tool" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Messages" }, "query": { "title": "Query", "type": "string" }, "regex": { "default": false, "title": "Regex", "type": "boolean" }, "type": { "const": "grep", "default": "grep", "title": "Type", "type": "string" }, "word_boundary": { "default": false, "title": "Word Boundary", "type": "boolean" } }, "required": [ "query", "type", "regex", "ignore_case", "word_boundary" ], "title": "GrepSearchRequest", "type": "object" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "title": "Detail", "type": "array" } }, "title": "HTTPValidationError", "type": "object" }, "ImageOutput": { "description": "Image output configuration.\n\nUse the `options` field to pass provider-specific options directly\nto the underlying API (e.g. OpenAI image_generation tool parameters).", "properties": { "options": { "anyOf": [ { "additionalProperties": { "additionalProperties": true, "type": "object" }, "propertyNames": { "const": "openai" }, "type": "object" }, { "type": "null" } ], "title": "Options" } }, "title": "ImageOutput", "type": "object" }, "InfoEvent": { "description": "Event with custom info/data.", "properties": { "data": { "$ref": "#/components/schemas/JsonValue" }, "event": { "const": "info", "default": "info", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "source": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "data" ], "title": "InfoEvent", "type": "object" }, "InputEvent": { "description": "Input screen interaction.", "properties": { "content": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Content" }, "event": { "const": "input", "default": "input", "title": "Event", "type": "string" }, "fields": { "anyOf": [ { "items": { "$ref": "#/components/schemas/InputField" }, "type": "array" }, { "type": "null" } ], "title": "Fields" }, "input": { "title": "Input", "type": "string" }, "input_ansi": { "title": "Input Ansi", "type": "string" }, "message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Message" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "outcome": { "anyOf": [ { "enum": [ "accepted", "declined", "cancelled" ], "type": "string" }, { "type": "null" } ], "title": "Outcome" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "input", "input_ansi" ], "title": "InputEvent", "type": "object" }, "InputField": { "description": "One field of an `ask_user` request.", "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "name": { "title": "Name", "type": "string" }, "type": { "enum": [ "string", "integer", "number", "boolean", "array" ], "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "InputField", "type": "object" }, "InterruptEvent": { "description": "Records that an agent's turn or sample was cut short.\n\nEmitted in three cases:\n\n- ``source=\"user_cancel\"`` \u2014 an ACP client (e.g. an editor or TUI)\n called ``session/cancel`` while a turn was in flight.\n- ``source=\"limit\"`` \u2014 a sample-level limit (tokens, time, cost,\n messages) tripped during execution.\n- ``source=\"system\"`` \u2014 the eval is shutting down for an external\n reason and is cancelling active samples.\n\nThe ``interrupted`` field records what was running at the moment\nthe cancel reached the cancel scope. ``interrupted_tool_call_id``\nand ``interrupted_model_event_id`` give cross-references when\napplicable so downstream consumers can correlate this event with\nthe in-flight ``ToolEvent`` or ``ModelEvent``.", "properties": { "event": { "const": "interrupt", "default": "interrupt", "title": "Event", "type": "string" }, "interrupted": { "enum": [ "generate", "tool_call", "between_turns" ], "title": "Interrupted", "type": "string" }, "interrupted_model_event_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Interrupted Model Event Id" }, "interrupted_tool_call_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Interrupted Tool Call Id" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "source": { "enum": [ "user_cancel", "limit", "system" ], "title": "Source", "type": "string" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "source", "interrupted" ], "title": "InterruptEvent", "type": "object" }, "InvalidationTopic": { "enum": [ "project-config", "scans", "transcripts" ], "title": "InvalidationTopic", "type": "string" }, "JSONSchema-Input": { "description": "JSON Schema for type.", "properties": { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/JSONSchema-Input" }, { "type": "boolean" }, { "type": "null" } ], "title": "Additionalproperties" }, "anyOf": { "anyOf": [ { "items": { "$ref": "#/components/schemas/JSONSchema-Input" }, "type": "array" }, { "type": "null" } ], "title": "Anyof" }, "default": { "title": "Default" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "enum": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Enum" }, "examples": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Examples" }, "format": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Format" }, "items": { "anyOf": [ { "$ref": "#/components/schemas/JSONSchema-Input" }, { "type": "null" } ] }, "maxLength": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Maxlength" }, "maximum": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Maximum" }, "minLength": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Minlength" }, "minimum": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Minimum" }, "pattern": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Pattern" }, "properties": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JSONSchema-Input" }, "type": "object" }, { "type": "null" } ], "title": "Properties" }, "required": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Required" }, "type": { "anyOf": [ { "enum": [ "string", "integer", "number", "boolean", "array", "object", "null" ], "type": "string" }, { "items": { "enum": [ "string", "integer", "number", "boolean", "array", "object", "null" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Type" } }, "required": [ "default" ], "title": "JSONSchema", "type": "object" }, "JSONSchema-Output": { "description": "JSON Schema for type.", "properties": { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/JSONSchema-Output" }, { "type": "boolean" }, { "type": "null" } ], "title": "Additionalproperties" }, "anyOf": { "anyOf": [ { "items": { "$ref": "#/components/schemas/JSONSchema-Output" }, "type": "array" }, { "type": "null" } ], "title": "Anyof" }, "default": { "title": "Default" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "enum": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Enum" }, "examples": { "anyOf": [ { "items": {}, "type": "array" }, { "type": "null" } ], "title": "Examples" }, "format": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Format" }, "items": { "anyOf": [ { "$ref": "#/components/schemas/JSONSchema-Output" }, { "type": "null" } ] }, "maxLength": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Maxlength" }, "maximum": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Maximum" }, "minLength": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Minlength" }, "minimum": { "anyOf": [ { "type": "integer" }, { "type": "number" }, { "type": "null" } ], "title": "Minimum" }, "pattern": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Pattern" }, "properties": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JSONSchema-Output" }, "type": "object" }, { "type": "null" } ], "title": "Properties" }, "required": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Required" }, "type": { "anyOf": [ { "enum": [ "string", "integer", "number", "boolean", "array", "object", "null" ], "type": "string" }, { "items": { "enum": [ "string", "integer", "number", "boolean", "array", "object", "null" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Type" } }, "required": [ "default" ], "title": "JSONSchema", "type": "object" }, "JsonChange": { "description": "Describes a change to data using JSON Patch format.", "properties": { "from": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "From" }, "op": { "enum": [ "remove", "add", "replace", "move", "test", "copy" ], "title": "Op", "type": "string" }, "path": { "title": "Path", "type": "string" }, "replaced": { "$ref": "#/components/schemas/JsonValue" }, "value": { "$ref": "#/components/schemas/JsonValue" } }, "required": [ "op", "path", "value", "replaced" ], "title": "JsonChange", "type": "object" }, "JsonValue": {}, "LlmScannerParams": { "description": "Parameters for llm_scanner.", "properties": { "answer": { "enum": [ "boolean", "numeric", "string" ], "title": "Answer", "type": "string" }, "preprocessor": { "anyOf": [ { "$ref": "#/components/schemas/MessageFormatOptions" }, { "type": "null" } ] }, "question": { "title": "Question", "type": "string" } }, "required": [ "question", "answer" ], "title": "LlmScannerParams", "type": "object" }, "LlmSearchInput": { "additionalProperties": false, "description": "A persisted LLM search input.", "properties": { "created_at": { "title": "Created At", "type": "string" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "query": { "title": "Query", "type": "string" }, "search_id": { "title": "Search Id", "type": "string" }, "type": { "const": "llm", "default": "llm", "title": "Type", "type": "string" } }, "required": [ "search_id", "query", "created_at", "type" ], "title": "LlmSearchInput", "type": "object" }, "LlmSearchRequest": { "additionalProperties": false, "description": "Request body for LLM transcript searches.", "properties": { "events": { "anyOf": [ { "const": "all", "type": "string" }, { "items": { "anyOf": [ { "enum": [ "model", "tool", "compaction", "branch", "approval", "sandbox", "info", "store", "logger", "error", "span_begin", "span_end" ], "type": "string" }, { "type": "string" } ] }, "type": "array" }, { "type": "null" } ], "title": "Events" }, "messages": { "anyOf": [ { "const": "all", "type": "string" }, { "items": { "enum": [ "system", "user", "assistant", "tool" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Messages" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "query": { "title": "Query", "type": "string" }, "type": { "const": "llm", "default": "llm", "title": "Type", "type": "string" } }, "required": [ "query", "type" ], "title": "LlmSearchRequest", "type": "object" }, "LoggerEvent": { "description": "Log message recorded with Python logger.", "properties": { "event": { "const": "logger", "default": "logger", "title": "Event", "type": "string" }, "message": { "$ref": "#/components/schemas/LoggingMessage" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "message" ], "title": "LoggerEvent", "type": "object" }, "LoggingMessage": { "description": "Message written to Python log.", "properties": { "created": { "title": "Created", "type": "number" }, "filename": { "default": "unknown", "title": "Filename", "type": "string" }, "level": { "enum": [ "debug", "trace", "http", "sandbox", "info", "warning", "error", "critical" ], "title": "Level", "type": "string" }, "lineno": { "default": 0, "title": "Lineno", "type": "integer" }, "message": { "title": "Message", "type": "string" }, "module": { "default": "unknown", "title": "Module", "type": "string" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" } }, "required": [ "level", "message", "created", "filename", "module", "lineno" ], "title": "LoggingMessage", "type": "object" }, "LogicalOperator": { "description": "Logical operators for combining conditions.", "enum": [ "AND", "OR", "NOT" ], "title": "LogicalOperator", "type": "string" }, "Logprob": { "description": "Log probability for a token.", "properties": { "bytes": { "anyOf": [ { "items": { "type": "integer" }, "type": "array" }, { "type": "null" } ], "title": "Bytes" }, "logprob": { "title": "Logprob", "type": "number" }, "token": { "title": "Token", "type": "string" }, "top_logprobs": { "anyOf": [ { "items": { "$ref": "#/components/schemas/TopLogprob" }, "type": "array" }, { "type": "null" } ], "title": "Top Logprobs" } }, "required": [ "token", "logprob" ], "title": "Logprob", "type": "object" }, "Logprobs": { "description": "Log probability information for a completion choice.", "properties": { "content": { "items": { "$ref": "#/components/schemas/Logprob" }, "title": "Content", "type": "array" } }, "required": [ "content" ], "title": "Logprobs", "type": "object" }, "Manual": { "description": "No-op trigger spec.\n\nThe engine's ``tick()`` always returns ``None`` for this spec \u2014\nfires happen only through explicit ``cp.checkpoint()`` calls.", "properties": {}, "title": "Manual", "type": "object" }, "MessageFormatOptions": { "description": "Message formatting options for controlling message content display.\n\nThese options control which parts of messages are included when\nformatting messages to strings.", "properties": { "exclude_reasoning": { "default": false, "title": "Exclude Reasoning", "type": "boolean" }, "exclude_system": { "default": true, "title": "Exclude System", "type": "boolean" }, "exclude_tool_usage": { "default": false, "title": "Exclude Tool Usage", "type": "boolean" } }, "required": [ "exclude_system", "exclude_reasoning", "exclude_tool_usage" ], "title": "MessageFormatOptions", "type": "object" }, "MessagesEventsResponse": { "additionalProperties": true, "description": "Response for GET /transcripts/{dir}/{id}/messages-events endpoint.", "properties": { "attachments": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "title": "Attachments" }, "events": { "items": { "anyOf": [ { "$ref": "#/components/schemas/SampleInitEvent" }, { "$ref": "#/components/schemas/SampleLimitEvent" }, { "$ref": "#/components/schemas/SandboxEvent" }, { "$ref": "#/components/schemas/StateEvent" }, { "$ref": "#/components/schemas/StoreEvent" }, { "$ref": "#/components/schemas/ModelEvent" }, { "$ref": "#/components/schemas/ToolEvent" }, { "$ref": "#/components/schemas/AnchorEvent" }, { "$ref": "#/components/schemas/ApprovalEvent" }, { "$ref": "#/components/schemas/BranchEvent" }, { "$ref": "#/components/schemas/CheckpointEvent" }, { "$ref": "#/components/schemas/CompactionEvent" }, { "$ref": "#/components/schemas/InputEvent" }, { "$ref": "#/components/schemas/InterruptEvent" }, { "$ref": "#/components/schemas/ScoreEvent" }, { "$ref": "#/components/schemas/ScoreEditEvent" }, { "$ref": "#/components/schemas/ErrorEvent" }, { "$ref": "#/components/schemas/LoggerEvent" }, { "$ref": "#/components/schemas/InfoEvent" }, { "$ref": "#/components/schemas/SpanBeginEvent" }, { "$ref": "#/components/schemas/SpanEndEvent" }, { "$ref": "#/components/schemas/StepEvent" }, { "$ref": "#/components/schemas/SubtaskEvent" } ] }, "title": "Events", "type": "array" }, "events_data": { "anyOf": [ { "$ref": "#/components/schemas/EventsData" }, { "type": "null" } ] }, "messages": { "items": { "anyOf": [ { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" } ] }, "title": "Messages", "type": "array" }, "timelines": { "items": { "$ref": "#/components/schemas/Timeline" }, "title": "Timelines", "type": "array" } }, "required": [ "messages", "events", "timelines" ], "title": "MessagesEventsResponse", "type": "object" }, "ModelCall": { "description": "Model call (raw request/response data).", "properties": { "call_key": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Call Key" }, "call_refs": { "anyOf": [ { "items": { "maxItems": 2, "minItems": 2, "prefixItems": [ { "type": "integer" }, { "type": "integer" } ], "type": "array" }, "type": "array" }, { "type": "null" } ], "title": "Call Refs" }, "error": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Error" }, "request": { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "title": "Request", "type": "object" }, "response": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "type": "object" }, { "type": "null" } ], "title": "Response" }, "time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Time" } }, "required": [ "request" ], "title": "ModelCall", "type": "object" }, "ModelConfig-Input": { "description": "Model config.", "properties": { "args": { "additionalProperties": true, "title": "Args", "type": "object" }, "base_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Base Url" }, "config": { "$ref": "#/components/schemas/GenerateConfig-Input" }, "model": { "title": "Model", "type": "string" } }, "required": [ "model", "config", "args" ], "title": "ModelConfig", "type": "object" }, "ModelConfig-Output": { "description": "Model config.", "properties": { "args": { "additionalProperties": true, "title": "Args", "type": "object" }, "base_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Base Url" }, "config": { "$ref": "#/components/schemas/GenerateConfig-Output" }, "model": { "title": "Model", "type": "string" } }, "required": [ "model", "config", "args" ], "title": "ModelConfig", "type": "object" }, "ModelEvent": { "description": "Call to a language model.", "properties": { "cache": { "anyOf": [ { "enum": [ "read", "write" ], "type": "string" }, { "type": "null" } ], "title": "Cache" }, "call": { "anyOf": [ { "$ref": "#/components/schemas/ModelCall" }, { "type": "null" } ] }, "completed": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Completed" }, "config": { "$ref": "#/components/schemas/GenerateConfig-Output" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error" }, "event": { "const": "model", "default": "model", "title": "Event", "type": "string" }, "input": { "items": { "anyOf": [ { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" } ] }, "title": "Input", "type": "array" }, "input_refs": { "anyOf": [ { "items": { "maxItems": 2, "minItems": 2, "prefixItems": [ { "type": "integer" }, { "type": "integer" } ], "type": "array" }, "type": "array" }, { "type": "null" } ], "title": "Input Refs" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "title": "Model", "type": "string" }, "output": { "$ref": "#/components/schemas/ModelOutput" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "retries": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Retries" }, "role": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Role" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "tool_choice": { "anyOf": [ { "enum": [ "auto", "any", "none" ], "type": "string" }, { "$ref": "#/components/schemas/ToolFunction" } ], "title": "Tool Choice" }, "tools": { "items": { "$ref": "#/components/schemas/ToolInfo" }, "title": "Tools", "type": "array" }, "traceback": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Traceback" }, "traceback_ansi": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Traceback Ansi" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" }, "working_time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Working Time" } }, "required": [ "timestamp", "working_start", "event", "model", "input", "tools", "tool_choice", "config", "output" ], "title": "ModelEvent", "type": "object" }, "ModelFallback": { "description": "A model fallback (request served by a different model than requested).", "properties": { "count": { "default": 1, "title": "Count", "type": "integer" }, "fallback_model": { "title": "Fallback Model", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "title": "Model", "type": "string" } }, "required": [ "model", "fallback_model", "count" ], "title": "ModelFallback", "type": "object" }, "ModelOutput": { "description": "Output from model generation.", "properties": { "choices": { "default": [], "items": { "$ref": "#/components/schemas/ChatCompletionChoice" }, "title": "Choices", "type": "array" }, "completion": { "default": "", "title": "Completion", "type": "string" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error" }, "fallback": { "anyOf": [ { "$ref": "#/components/schemas/ModelFallback" }, { "type": "null" } ] }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "title": "Model", "type": "string" }, "time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Time" }, "usage": { "anyOf": [ { "$ref": "#/components/schemas/ModelUsage" }, { "type": "null" } ] } }, "required": [ "model", "choices", "completion" ], "title": "ModelOutput", "type": "object" }, "ModelUsage": { "description": "Token usage for completion.", "properties": { "input_tokens": { "default": 0, "title": "Input Tokens", "type": "integer" }, "input_tokens_cache_read": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Input Tokens Cache Read" }, "input_tokens_cache_write": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Input Tokens Cache Write" }, "output_tokens": { "default": 0, "title": "Output Tokens", "type": "integer" }, "reasoning_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Reasoning Tokens" }, "total_cost": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Total Cost" }, "total_tokens": { "default": 0, "title": "Total Tokens", "type": "integer" } }, "required": [ "input_tokens", "output_tokens", "total_tokens" ], "title": "ModelUsage", "type": "object" }, "Operator": { "description": "SQL comparison operators.", "enum": [ "=", "!=", "<", "<=", ">", ">=", "IN", "NOT IN", "LIKE", "NOT LIKE", "ILIKE", "NOT ILIKE", "IS NULL", "IS NOT NULL", "BETWEEN", "NOT BETWEEN" ], "title": "Operator", "type": "string" }, "OrderBy": { "properties": { "column": { "title": "Column", "type": "string" }, "direction": { "enum": [ "ASC", "DESC" ], "title": "Direction", "type": "string" } }, "required": [ "column", "direction" ], "title": "OrderBy", "type": "object" }, "Outline": { "description": "Hierarchical outline of events for an agent.", "properties": { "nodes": { "items": { "$ref": "#/components/schemas/OutlineNode" }, "title": "Nodes", "type": "array" } }, "required": [ "nodes" ], "title": "Outline", "type": "object" }, "OutlineNode": { "description": "A node in an agent's outline, referencing an event by UUID.", "properties": { "children": { "items": { "$ref": "#/components/schemas/OutlineNode" }, "title": "Children", "type": "array" }, "event": { "title": "Event", "type": "string" } }, "required": [ "event", "children" ], "title": "OutlineNode", "type": "object" }, "Pagination": { "properties": { "cursor": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Cursor" }, "direction": { "enum": [ "forward", "backward" ], "title": "Direction", "type": "string" }, "limit": { "title": "Limit", "type": "integer" } }, "required": [ "limit", "direction" ], "title": "Pagination", "type": "object" }, "ProjectConfig-Input": { "additionalProperties": false, "description": "Scout project configuration from scout.yaml.\n\nExtends ScanJobConfig to represent project-level defaults. All fields\nfrom ScanJobConfig are available as project defaults.", "properties": { "filter": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Filter" }, "generate_config": { "anyOf": [ { "$ref": "#/components/schemas/GenerateConfig-Input" }, { "type": "null" } ] }, "limit": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Limit" }, "log_level": { "anyOf": [ { "enum": [ "debug", "http", "sandbox", "info", "warning", "error", "critical", "notset" ], "type": "string" }, { "type": "null" } ], "title": "Log Level" }, "max_processes": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Processes" }, "max_transcripts": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Transcripts" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "model_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "string" }, { "type": "null" } ], "title": "Model Args" }, "model_base_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model Base Url" }, "model_roles": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/ModelConfig-Input" }, { "type": "string" } ] }, "type": "object" }, { "type": "null" } ], "title": "Model Roles" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "results": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Results" }, "scanners": { "anyOf": [ { "items": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "array" }, { "additionalProperties": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "object" }, { "type": "null" } ], "title": "Scanners" }, "scans": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Scans" }, "shuffle": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "type": "null" } ], "title": "Shuffle" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "transcripts": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Transcripts" }, "validation": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/ValidationSet-Input" } ] }, "type": "object" }, { "type": "null" } ], "title": "Validation" }, "worklist": { "anyOf": [ { "items": { "$ref": "#/components/schemas/Worklist" }, "type": "array" }, { "type": "null" } ], "title": "Worklist" } }, "required": [ "filter" ], "title": "ProjectConfig", "type": "object" }, "ProjectConfig-Output": { "additionalProperties": false, "description": "Scout project configuration from scout.yaml.\n\nExtends ScanJobConfig to represent project-level defaults. All fields\nfrom ScanJobConfig are available as project defaults.", "properties": { "filter": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Filter" }, "generate_config": { "anyOf": [ { "$ref": "#/components/schemas/GenerateConfig-Output" }, { "type": "null" } ] }, "limit": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Limit" }, "log_level": { "anyOf": [ { "enum": [ "debug", "http", "sandbox", "info", "warning", "error", "critical", "notset" ], "type": "string" }, { "type": "null" } ], "title": "Log Level" }, "max_processes": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Processes" }, "max_transcripts": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Transcripts" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "model_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "string" }, { "type": "null" } ], "title": "Model Args" }, "model_base_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model Base Url" }, "model_roles": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/ModelConfig-Output" }, { "type": "string" } ] }, "type": "object" }, { "type": "null" } ], "title": "Model Roles" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "results": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Results" }, "scanners": { "anyOf": [ { "items": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "array" }, { "additionalProperties": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "object" }, { "type": "null" } ], "title": "Scanners" }, "scans": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Scans" }, "shuffle": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "type": "null" } ], "title": "Shuffle" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "transcripts": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Transcripts" }, "validation": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/ValidationSet-Output" } ] }, "type": "object" }, { "type": "null" } ], "title": "Validation" }, "worklist": { "anyOf": [ { "items": { "$ref": "#/components/schemas/Worklist" }, "type": "array" }, { "type": "null" } ], "title": "Worklist" } }, "required": [ "filter" ], "title": "ProjectConfig", "type": "object" }, "ProvenanceData": { "description": "Metadata about who made an edit and why.", "properties": { "author": { "title": "Author", "type": "string" }, "metadata": { "additionalProperties": true, "title": "Metadata", "type": "object" }, "reason": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Reason" }, "timestamp": { "format": "date-time", "title": "Timestamp", "type": "string" } }, "required": [ "timestamp", "author", "metadata" ], "title": "ProvenanceData", "type": "object" }, "RawEncoding": { "const": "zstd", "title": "RawEncoding", "type": "string" }, "Reference": { "description": "Reference to scanned content.", "properties": { "cite": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Cite" }, "id": { "title": "Id", "type": "string" }, "type": { "enum": [ "message", "event" ], "title": "Type", "type": "string" } }, "required": [ "type", "id" ], "title": "Reference", "type": "object" }, "RenameValidationSetRequest": { "description": "Request body for PUT /validations/{uri}/rename endpoint.", "properties": { "name": { "title": "Name", "type": "string" } }, "required": [ "name" ], "title": "RenameValidationSetRequest", "type": "object" }, "ResponseSchema-Input": { "description": "Schema for model response when using Structured Output.", "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "json_schema": { "$ref": "#/components/schemas/JSONSchema-Input" }, "name": { "title": "Name", "type": "string" }, "strict": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Strict" } }, "required": [ "name", "json_schema" ], "title": "ResponseSchema", "type": "object" }, "ResponseSchema-Output": { "description": "Schema for model response when using Structured Output.", "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "json_schema": { "$ref": "#/components/schemas/JSONSchema-Output" }, "name": { "title": "Name", "type": "string" }, "strict": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Strict" } }, "required": [ "name", "json_schema" ], "title": "ResponseSchema", "type": "object" }, "Result": { "description": "Scan result.", "properties": { "answer": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Answer" }, "explanation": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Explanation" }, "label": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Label" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "references": { "items": { "$ref": "#/components/schemas/Reference" }, "title": "References", "type": "array" }, "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Type" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "value": { "$ref": "#/components/schemas/JsonValue" } }, "required": [ "value", "references" ], "title": "Result", "type": "object" }, "Sample": { "description": "Sample for an evaluation task.", "properties": { "checkpoint": { "anyOf": [ { "$ref": "#/components/schemas/CheckpointSampleConfig" }, { "type": "null" } ] }, "choices": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Choices" }, "files": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "title": "Files" }, "id": { "anyOf": [ { "type": "integer" }, { "type": "string" }, { "type": "null" } ], "title": "Id" }, "input": { "anyOf": [ { "type": "string" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" } ] }, "type": "array" } ], "title": "Input" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "sandbox": { "anyOf": [ { "$ref": "#/components/schemas/SandboxEnvironmentSpec" }, { "type": "null" } ] }, "setup": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Setup" }, "target": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Target" } }, "required": [ "input", "target" ], "title": "Sample", "type": "object" }, "SampleInitEvent": { "description": "Beginning of processing a Sample.", "properties": { "event": { "const": "sample_init", "default": "sample_init", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "sample": { "$ref": "#/components/schemas/Sample" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "state": { "$ref": "#/components/schemas/JsonValue" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "sample", "state" ], "title": "SampleInitEvent", "type": "object" }, "SampleLimitEvent": { "description": "The sample was unable to finish processing due to a limit", "properties": { "event": { "const": "sample_limit", "default": "sample_limit", "title": "Event", "type": "string" }, "limit": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Limit" }, "message": { "title": "Message", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "type": { "enum": [ "message", "time", "working", "token", "turn", "cost", "operator", "custom" ], "title": "Type", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "type", "message" ], "title": "SampleLimitEvent", "type": "object" }, "SandboxEnvironmentSpec": { "description": "Specification of a SandboxEnvironment.", "properties": { "config": { "title": "Config" }, "type": { "title": "Type", "type": "string" } }, "required": [ "type", "config" ], "title": "SandboxEnvironmentSpec", "type": "object" }, "SandboxEvent": { "description": "Sandbox execution or I/O", "properties": { "action": { "enum": [ "exec", "read_file", "write_file" ], "title": "Action", "type": "string" }, "cmd": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Cmd" }, "completed": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Completed" }, "event": { "const": "sandbox", "default": "sandbox", "title": "Event", "type": "string" }, "file": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "File" }, "input": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Input" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "options": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "type": "object" }, { "type": "null" } ], "title": "Options" }, "output": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Output" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "result": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Result" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "action" ], "title": "SandboxEvent", "type": "object" }, "ScanJobConfig": { "additionalProperties": false, "description": "Scan job configuration.", "properties": { "filter": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Filter" }, "generate_config": { "anyOf": [ { "$ref": "#/components/schemas/GenerateConfig-Input" }, { "type": "null" } ] }, "limit": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Limit" }, "log_level": { "anyOf": [ { "enum": [ "debug", "http", "sandbox", "info", "warning", "error", "critical", "notset" ], "type": "string" }, { "type": "null" } ], "title": "Log Level" }, "max_processes": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Processes" }, "max_transcripts": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Transcripts" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "model_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "string" }, { "type": "null" } ], "title": "Model Args" }, "model_base_url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model Base Url" }, "model_roles": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/ModelConfig-Input" }, { "type": "string" } ] }, "type": "object" }, { "type": "null" } ], "title": "Model Roles" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Name" }, "results": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Results" }, "scanners": { "anyOf": [ { "items": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "array" }, { "additionalProperties": { "$ref": "#/components/schemas/ScannerSpec" }, "type": "object" }, { "type": "null" } ], "title": "Scanners" }, "scans": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Scans" }, "shuffle": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "type": "null" } ], "title": "Shuffle" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "transcripts": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Transcripts" }, "validation": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "type": "string" }, { "$ref": "#/components/schemas/ValidationSet-Input" } ] }, "type": "object" }, { "type": "null" } ], "title": "Validation" }, "worklist": { "anyOf": [ { "items": { "$ref": "#/components/schemas/Worklist" }, "type": "array" }, { "type": "null" } ], "title": "Worklist" } }, "required": [ "filter" ], "title": "ScanJobConfig", "type": "object" }, "ScanMetrics": { "description": "Encapsulates all worker-related metrics.", "properties": { "batch_failures": { "default": 0, "title": "Batch Failures", "type": "integer" }, "batch_oldest_created": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Batch Oldest Created" }, "batch_pending": { "default": 0, "title": "Batch Pending", "type": "integer" }, "buffered_scanner_jobs": { "default": 0, "title": "Buffered Scanner Jobs", "type": "integer" }, "completed_scans": { "default": 0, "title": "Completed Scans", "type": "integer" }, "memory_usage": { "default": 0, "title": "Memory Usage", "type": "integer" }, "process_count": { "default": 0, "title": "Process Count", "type": "integer" }, "task_count": { "default": 0, "title": "Task Count", "type": "integer" }, "tasks_idle": { "default": 0, "title": "Tasks Idle", "type": "integer" }, "tasks_parsing": { "default": 0, "title": "Tasks Parsing", "type": "integer" }, "tasks_scanning": { "default": 0, "title": "Tasks Scanning", "type": "integer" } }, "required": [ "process_count", "task_count", "tasks_idle", "tasks_parsing", "tasks_scanning", "buffered_scanner_jobs", "completed_scans", "memory_usage", "batch_pending", "batch_failures" ], "title": "ScanMetrics", "type": "object" }, "ScanOptions": { "description": "Options used for scan.", "properties": { "limit": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Limit" }, "max_processes": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Max Processes" }, "max_transcripts": { "default": 25, "title": "Max Transcripts", "type": "integer" }, "shuffle": { "anyOf": [ { "type": "boolean" }, { "type": "integer" }, { "type": "null" } ], "title": "Shuffle" } }, "required": [ "max_transcripts" ], "title": "ScanOptions", "type": "object" }, "ScanRevision": { "description": "Git revision for scan.", "properties": { "commit": { "title": "Commit", "type": "string" }, "origin": { "title": "Origin", "type": "string" }, "type": { "const": "git", "title": "Type", "type": "string" }, "version": { "default": "0.0.0-dev.0+unknown", "title": "Version", "type": "string" } }, "required": [ "type", "origin", "version", "commit" ], "title": "ScanRevision", "type": "object" }, "ScanRow": { "description": "Flat scan row for API response - maps directly to client grid columns.\n\nFields are either:\n- Extracted from source types (using model_fields to avoid duplication)\n- Transformed/flattened from nested structures\n- Computed aggregates", "properties": { "active_completion_pct": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Active Completion Pct" }, "location": { "title": "Location", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "packages": { "additionalProperties": { "type": "string" }, "title": "Packages", "type": "object" }, "revision_commit": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Revision Commit" }, "revision_origin": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Revision Origin" }, "revision_version": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Revision Version" }, "scan_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Scan Args" }, "scan_file": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Scan File" }, "scan_id": { "title": "Scan Id", "type": "string" }, "scan_name": { "title": "Scan Name", "type": "string" }, "scanners": { "title": "Scanners", "type": "string" }, "status": { "enum": [ "active", "error", "complete", "incomplete" ], "title": "Status", "type": "string" }, "tags": { "title": "Tags", "type": "string" }, "timestamp": { "format": "date-time", "title": "Timestamp", "type": "string" }, "total_errors": { "title": "Total Errors", "type": "integer" }, "total_results": { "title": "Total Results", "type": "integer" }, "total_tokens": { "title": "Total Tokens", "type": "integer" }, "transcript_count": { "title": "Transcript Count", "type": "integer" } }, "required": [ "scan_id", "scan_name", "timestamp", "packages", "location", "status", "scanners", "tags", "total_results", "total_errors", "total_tokens", "transcript_count" ], "title": "ScanRow", "type": "object" }, "ScanSpec": { "description": "Scan specification (scanners, transcripts, config).", "properties": { "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model": { "anyOf": [ { "$ref": "#/components/schemas/ModelConfig-Output" }, { "type": "null" } ] }, "model_roles": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/ModelConfig-Output" }, "type": "object" }, { "type": "null" } ], "title": "Model Roles" }, "options": { "$ref": "#/components/schemas/ScanOptions" }, "packages": { "additionalProperties": { "type": "string" }, "title": "Packages", "type": "object" }, "revision": { "anyOf": [ { "$ref": "#/components/schemas/ScanRevision" }, { "type": "null" } ] }, "scan_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Scan Args" }, "scan_file": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Scan File" }, "scan_id": { "title": "Scan Id", "type": "string" }, "scan_name": { "title": "Scan Name", "type": "string" }, "scanners": { "additionalProperties": { "$ref": "#/components/schemas/ScannerSpec" }, "title": "Scanners", "type": "object" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "timestamp": { "title": "Timestamp", "type": "string" }, "transcripts": { "anyOf": [ { "$ref": "#/components/schemas/ScanTranscripts" }, { "type": "null" } ] }, "validation": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/ValidationSet-Output" }, "type": "object" }, { "type": "null" } ], "title": "Validation" }, "worklist": { "anyOf": [ { "items": { "$ref": "#/components/schemas/Worklist" }, "type": "array" }, { "type": "null" } ], "title": "Worklist" } }, "required": [ "scan_id", "scan_name", "timestamp", "packages", "options", "scanners" ], "title": "ScanSpec", "type": "object" }, "ScanTranscripts": { "description": "Transcripts targeted by a scan.", "properties": { "count": { "default": 0, "title": "Count", "type": "integer" }, "data": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Data" }, "fields": { "anyOf": [ { "items": { "$ref": "#/components/schemas/TranscriptField" }, "type": "array" }, { "type": "null" } ], "title": "Fields" }, "filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Filter" }, "location": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Location" }, "transcript_ids": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": "Transcript Ids", "type": "object" }, "type": { "enum": [ "eval_log", "database" ], "title": "Type", "type": "string" } }, "required": [ "type", "transcript_ids", "count" ], "title": "ScanTranscripts", "type": "object" }, "ScannerInfo": { "description": "Info about a registered scanner factory.", "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "name": { "title": "Name", "type": "string" }, "params": { "items": { "$ref": "#/components/schemas/ScannerParam" }, "title": "Params", "type": "array" }, "version": { "title": "Version", "type": "integer" } }, "required": [ "name", "version", "params" ], "title": "ScannerInfo", "type": "object" }, "ScannerInputResponse": { "description": "Schema-only type for scanner input column values.", "properties": { "input": { "anyOf": [ { "$ref": "#/components/schemas/Transcript" }, { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" } ] }, "type": "array" }, { "$ref": "#/components/schemas/SampleInitEvent" }, { "$ref": "#/components/schemas/SampleLimitEvent" }, { "$ref": "#/components/schemas/SandboxEvent" }, { "$ref": "#/components/schemas/StateEvent" }, { "$ref": "#/components/schemas/StoreEvent" }, { "$ref": "#/components/schemas/ModelEvent" }, { "$ref": "#/components/schemas/ToolEvent" }, { "$ref": "#/components/schemas/AnchorEvent" }, { "$ref": "#/components/schemas/ApprovalEvent" }, { "$ref": "#/components/schemas/BranchEvent" }, { "$ref": "#/components/schemas/CheckpointEvent" }, { "$ref": "#/components/schemas/CompactionEvent" }, { "$ref": "#/components/schemas/InputEvent" }, { "$ref": "#/components/schemas/InterruptEvent" }, { "$ref": "#/components/schemas/ScoreEvent" }, { "$ref": "#/components/schemas/ScoreEditEvent" }, { "$ref": "#/components/schemas/ErrorEvent" }, { "$ref": "#/components/schemas/LoggerEvent" }, { "$ref": "#/components/schemas/InfoEvent" }, { "$ref": "#/components/schemas/SpanBeginEvent" }, { "$ref": "#/components/schemas/SpanEndEvent" }, { "$ref": "#/components/schemas/StepEvent" }, { "$ref": "#/components/schemas/SubtaskEvent" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/SampleInitEvent" }, { "$ref": "#/components/schemas/SampleLimitEvent" }, { "$ref": "#/components/schemas/SandboxEvent" }, { "$ref": "#/components/schemas/StateEvent" }, { "$ref": "#/components/schemas/StoreEvent" }, { "$ref": "#/components/schemas/ModelEvent" }, { "$ref": "#/components/schemas/ToolEvent" }, { "$ref": "#/components/schemas/AnchorEvent" }, { "$ref": "#/components/schemas/ApprovalEvent" }, { "$ref": "#/components/schemas/BranchEvent" }, { "$ref": "#/components/schemas/CheckpointEvent" }, { "$ref": "#/components/schemas/CompactionEvent" }, { "$ref": "#/components/schemas/InputEvent" }, { "$ref": "#/components/schemas/InterruptEvent" }, { "$ref": "#/components/schemas/ScoreEvent" }, { "$ref": "#/components/schemas/ScoreEditEvent" }, { "$ref": "#/components/schemas/ErrorEvent" }, { "$ref": "#/components/schemas/LoggerEvent" }, { "$ref": "#/components/schemas/InfoEvent" }, { "$ref": "#/components/schemas/SpanBeginEvent" }, { "$ref": "#/components/schemas/SpanEndEvent" }, { "$ref": "#/components/schemas/StepEvent" }, { "$ref": "#/components/schemas/SubtaskEvent" } ] }, "type": "array" }, { "$ref": "#/components/schemas/Timeline" }, { "items": { "$ref": "#/components/schemas/Timeline" }, "type": "array" } ], "title": "Input" }, "input_data": { "anyOf": [ { "$ref": "#/components/schemas/EventsData" }, { "type": "null" } ] }, "input_type": { "enum": [ "transcript", "event", "events", "message", "messages", "timeline", "timelines" ], "title": "Input Type", "type": "string" } }, "required": [ "input_type", "input" ], "title": "ScannerInputResponse", "type": "object" }, "ScannerParam": { "description": "Parameter definition for a scanner factory.", "properties": { "default": { "anyOf": [ {}, { "type": "null" } ], "title": "Default" }, "name": { "title": "Name", "type": "string" }, "required": { "title": "Required", "type": "boolean" }, "schema": { "additionalProperties": true, "title": "Schema", "type": "object" } }, "required": [ "name", "schema", "required" ], "title": "ScannerParam", "type": "object" }, "ScannerSpec": { "description": "Scanner used by scan.", "properties": { "file": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "File" }, "name": { "title": "Name", "type": "string" }, "package_version": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Package Version" }, "params": { "additionalProperties": true, "title": "Params", "type": "object" }, "version": { "default": 0, "title": "Version", "type": "integer" } }, "required": [ "name", "version", "params" ], "title": "ScannerSpec", "type": "object" }, "ScannerSummary": { "description": "Summary of scanner results.", "properties": { "errors": { "default": 0, "title": "Errors", "type": "integer" }, "metrics": { "anyOf": [ { "additionalProperties": { "additionalProperties": { "type": "number" }, "type": "object" }, "type": "object" }, { "type": "null" } ], "title": "Metrics" }, "model_usage": { "additionalProperties": { "$ref": "#/components/schemas/ModelUsage" }, "title": "Model Usage", "type": "object" }, "results": { "default": 0, "title": "Results", "type": "integer" }, "scans": { "default": 0, "title": "Scans", "type": "integer" }, "tokens": { "default": 0, "title": "Tokens", "type": "integer" }, "validation": { "anyOf": [ { "$ref": "#/components/schemas/ValidationResults" }, { "type": "null" } ] } }, "required": [ "scans", "results", "errors", "tokens", "model_usage" ], "title": "ScannerSummary", "type": "object" }, "ScannersResponse": { "description": "Response body for GET /scanners endpoint.", "properties": { "items": { "items": { "$ref": "#/components/schemas/ScannerInfo" }, "title": "Items", "type": "array" } }, "required": [ "items" ], "title": "ScannersResponse", "type": "object" }, "ScansRequest": { "description": "Request body for POST /scans endpoint.", "properties": { "filter": { "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "type": "null" } ] }, "order_by": { "anyOf": [ { "$ref": "#/components/schemas/OrderBy" }, { "items": { "$ref": "#/components/schemas/OrderBy" }, "type": "array" }, { "type": "null" } ], "title": "Order By" }, "pagination": { "anyOf": [ { "$ref": "#/components/schemas/Pagination" }, { "type": "null" } ] } }, "title": "ScansRequest", "type": "object" }, "ScansResponse": { "description": "Response body for POST /scans endpoint.", "properties": { "items": { "items": { "$ref": "#/components/schemas/ScanRow" }, "title": "Items", "type": "array" }, "next_cursor": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Next Cursor" }, "total_count": { "title": "Total Count", "type": "integer" } }, "required": [ "items", "total_count" ], "title": "ScansResponse", "type": "object" }, "Score": { "description": "Score generated by a scorer.", "properties": { "answer": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Answer" }, "explanation": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Explanation" }, "history": { "items": { "$ref": "#/components/schemas/ScoreEdit" }, "title": "History", "type": "array" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "value": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" } ] }, "type": "array" }, { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "type": "null" } ] }, "type": "object" } ], "title": "Value" } }, "required": [ "value", "history" ], "title": "Score", "type": "object" }, "ScoreEdit": { "description": "A single edit to a score.", "properties": { "answer": { "anyOf": [ { "type": "string" }, { "const": "UNCHANGED", "type": "string" }, { "type": "null" } ], "default": "UNCHANGED", "title": "Answer" }, "explanation": { "anyOf": [ { "type": "string" }, { "const": "UNCHANGED", "type": "string" }, { "type": "null" } ], "default": "UNCHANGED", "title": "Explanation" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "const": "UNCHANGED", "type": "string" } ], "default": "UNCHANGED", "title": "Metadata" }, "provenance": { "anyOf": [ { "$ref": "#/components/schemas/ProvenanceData" }, { "type": "null" } ] }, "value": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" } ] }, "type": "array" }, { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "type": "null" } ] }, "type": "object" }, { "const": "UNCHANGED", "type": "string" } ], "default": "UNCHANGED", "title": "Value" } }, "required": [ "value", "metadata" ], "title": "ScoreEdit", "type": "object" }, "ScoreEditEvent": { "description": "Event recorded when a score is edited.", "properties": { "edit": { "$ref": "#/components/schemas/ScoreEdit" }, "event": { "const": "score_edit", "default": "score_edit", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "score_name": { "title": "Score Name", "type": "string" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "score_name", "edit" ], "title": "ScoreEditEvent", "type": "object" }, "ScoreEvent": { "description": "Event with score.\n\nCan be the final score for a `Sample`, or can be an intermediate score\nresulting from a call to `score`.", "properties": { "event": { "const": "score", "default": "score", "title": "Event", "type": "string" }, "intermediate": { "default": false, "title": "Intermediate", "type": "boolean" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "model_usage": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/ModelUsage" }, "type": "object" }, { "type": "null" } ], "title": "Model Usage" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "role_usage": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/ModelUsage" }, "type": "object" }, { "type": "null" } ], "title": "Role Usage" }, "score": { "$ref": "#/components/schemas/Score" }, "scorer": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Scorer" }, "scorer_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Scorer Args" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "target": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Target" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "score", "intermediate" ], "title": "ScoreEvent", "type": "object" }, "SearchInput": { "discriminator": { "mapping": { "grep": "#/components/schemas/GrepSearchInput", "llm": "#/components/schemas/LlmSearchInput" }, "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/GrepSearchInput" }, { "$ref": "#/components/schemas/LlmSearchInput" } ] }, "SearchInputListResponse": { "description": "Response from the list search inputs endpoint.", "properties": { "items": { "items": { "$ref": "#/components/schemas/SearchInput" }, "title": "Items", "type": "array" } }, "required": [ "items" ], "title": "SearchInputListResponse", "type": "object" }, "SearchResponse": { "description": "Response from running a transcript search.", "properties": { "id": { "title": "Id", "type": "string" }, "result": { "$ref": "#/components/schemas/Result" } }, "required": [ "id", "result" ], "title": "SearchResponse", "type": "object" }, "SnapshotDetails": { "additionalProperties": true, "description": "Per-backup stats captured in the checkpoint file.\n\nOne per repo (host repo + one per active sandbox repo). Values come\nfrom restic's backup summary \u2014 see :class:`ResticBackupSummary`.", "properties": { "additional_files": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Additional Files" }, "duration_ms": { "title": "Duration Ms", "type": "integer" }, "files": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Files" }, "size_bytes": { "title": "Size Bytes", "type": "integer" }, "snapshot_id": { "title": "Snapshot Id", "type": "string" } }, "required": [ "snapshot_id", "size_bytes", "duration_ms" ], "title": "SnapshotDetails", "type": "object" }, "SpanBeginEvent": { "description": "Mark the beginning of a transcript span.", "properties": { "event": { "const": "span_begin", "default": "span_begin", "title": "Event", "type": "string" }, "id": { "title": "Id", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "name": { "title": "Name", "type": "string" }, "parent_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Parent Id" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Type" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "id", "name" ], "title": "SpanBeginEvent", "type": "object" }, "SpanEndEvent": { "description": "Mark the end of a transcript span.", "properties": { "event": { "const": "span_end", "default": "span_end", "title": "Event", "type": "string" }, "id": { "title": "Id", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "id" ], "title": "SpanEndEvent", "type": "object" }, "StateEvent": { "description": "Change to the current `TaskState`", "properties": { "changes": { "items": { "$ref": "#/components/schemas/JsonChange" }, "title": "Changes", "type": "array" }, "event": { "const": "state", "default": "state", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "changes" ], "title": "StateEvent", "type": "object" }, "Status": { "description": "Status of scan job.", "properties": { "complete": { "title": "Complete", "type": "boolean" }, "errors": { "items": { "$ref": "#/components/schemas/Error" }, "title": "Errors", "type": "array" }, "location": { "title": "Location", "type": "string" }, "spec": { "$ref": "#/components/schemas/ScanSpec" }, "summary": { "$ref": "#/components/schemas/Summary" } }, "required": [ "complete", "spec", "location", "summary", "errors" ], "title": "Status", "type": "object" }, "StepEvent": { "description": "Step within current sample or subtask.", "properties": { "action": { "enum": [ "begin", "end" ], "title": "Action", "type": "string" }, "event": { "const": "step", "default": "step", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "name": { "title": "Name", "type": "string" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Type" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "action", "name" ], "title": "StepEvent", "type": "object" }, "StopCategory": { "description": "A single refusal/safety category reported by (or derived for) a model stop.", "properties": { "category": { "title": "Category", "type": "string" }, "level": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Level" } }, "required": [ "category" ], "title": "StopCategory", "type": "object" }, "StopDetails": { "description": "Additional detail about why a model stopped generating (e.g. a content refusal).\n\n`categories` is the canonical list (always iterable; a single-category provider\nappears as one entry). `category` and `explanation` are a convenience high-level\nsummary derived from the same data \u2014 `category` is the primary category and\n`explanation` is human-readable (synthesized from `categories` when the provider\nsupplies no text). Read either way; both describe the same stop.", "properties": { "categories": { "items": { "$ref": "#/components/schemas/StopCategory" }, "title": "Categories", "type": "array" }, "category": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Category" }, "explanation": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Explanation" }, "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Type" } }, "required": [ "categories" ], "title": "StopDetails", "type": "object" }, "StoreEvent": { "description": "Change to data within the current `Store`.", "properties": { "changes": { "items": { "$ref": "#/components/schemas/JsonChange" }, "title": "Changes", "type": "array" }, "event": { "const": "store", "default": "store", "title": "Event", "type": "string" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" } }, "required": [ "timestamp", "working_start", "event", "changes" ], "title": "StoreEvent", "type": "object" }, "SubtaskEvent": { "description": "Subtask spawned.", "properties": { "completed": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Completed" }, "event": { "const": "subtask", "default": "subtask", "title": "Event", "type": "string" }, "events": { "items": {}, "title": "Events", "type": "array" }, "input": { "additionalProperties": true, "title": "Input", "type": "object" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "name": { "title": "Name", "type": "string" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "result": { "title": "Result" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Type" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "working_start": { "title": "Working Start", "type": "number" }, "working_time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Working Time" } }, "required": [ "timestamp", "working_start", "event", "name", "input", "result", "events" ], "title": "SubtaskEvent", "type": "object" }, "Summary": { "description": "Summary of scan results.", "properties": { "complete": { "default": true, "title": "Complete", "type": "boolean" }, "scanners": { "additionalProperties": { "$ref": "#/components/schemas/ScannerSummary" }, "title": "Scanners", "type": "object" } }, "required": [ "complete", "scanners" ], "title": "Summary", "type": "object" }, "TimeInterval": { "description": "Fire after a wall-clock interval.\n\nThe engine fires when at least ``every`` has elapsed since the\nlast fire (or since the session opened, for the first fire).", "properties": { "every": { "format": "duration", "title": "Every", "type": "string" } }, "required": [ "every" ], "title": "TimeInterval", "type": "object" }, "Timeline": { "description": "A named timeline view over a transcript.\n\nMultiple timelines allow different interpretations of the same event\nstream \u2014 e.g. a default agent-centric view alongside an alternative\ngrouping or filtered view.", "properties": { "description": { "title": "Description", "type": "string" }, "name": { "title": "Name", "type": "string" }, "root": { "$ref": "#/components/schemas/TimelineSpan" } }, "required": [ "name", "description", "root" ], "title": "Timeline", "type": "object" }, "TimelineEvent": { "description": "Wraps a single Event.", "properties": { "event": { "title": "Event", "type": "string" }, "type": { "const": "event", "default": "event", "title": "Type", "type": "string" } }, "required": [ "type", "event" ], "title": "TimelineEvent", "type": "object" }, "TimelineSpan": { "description": "A span of execution \u2014 agent, scorer, tool, or root.", "properties": { "agent_result": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Agent Result" }, "branched_from": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Branched From" }, "branches": { "items": { "$ref": "#/components/schemas/TimelineSpan" }, "title": "Branches", "type": "array" }, "content": { "items": { "oneOf": [ { "$ref": "#/components/schemas/TimelineEvent" }, { "$ref": "#/components/schemas/TimelineSpan" } ] }, "title": "Content", "type": "array" }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Description" }, "id": { "title": "Id", "type": "string" }, "name": { "title": "Name", "type": "string" }, "outline": { "anyOf": [ { "$ref": "#/components/schemas/Outline" }, { "type": "null" } ] }, "span_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Type" }, "tool_invoked": { "default": false, "title": "Tool Invoked", "type": "boolean" }, "type": { "const": "span", "default": "span", "title": "Type", "type": "string" }, "utility": { "default": false, "title": "Utility", "type": "boolean" } }, "required": [ "type", "id", "name", "content", "branches", "utility", "tool_invoked" ], "title": "TimelineSpan", "type": "object" }, "TokenInterval": { "description": "Fire every ``every`` tokens of sample-level usage.\n\nSample total tokens are read from\n:func:`inspect_ai.model.sample_total_tokens`; the trigger fires\neach time the running total crosses another ``every``-token\nboundary since the last fire.", "properties": { "every": { "title": "Every", "type": "integer" } }, "required": [ "every" ], "title": "TokenInterval", "type": "object" }, "ToolCall": { "properties": { "arguments": { "additionalProperties": true, "title": "Arguments", "type": "object" }, "function": { "title": "Function", "type": "string" }, "id": { "title": "Id", "type": "string" }, "parse_error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Parse Error" }, "type": { "default": "function", "enum": [ "function", "custom" ], "title": "Type", "type": "string" }, "view": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallContent" }, { "type": "null" } ] } }, "required": [ "id", "function", "arguments", "type" ], "title": "ToolCall", "type": "object" }, "ToolCallContent": { "description": "Content to include in tool call view.", "properties": { "content": { "title": "Content", "type": "string" }, "format": { "enum": [ "text", "markdown" ], "title": "Format", "type": "string" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" } }, "required": [ "format", "content" ], "title": "ToolCallContent", "type": "object" }, "ToolCallError": { "description": "Error raised by a tool call.", "properties": { "message": { "title": "Message", "type": "string" }, "type": { "enum": [ "parsing", "timeout", "unicode_decode", "permission", "file_not_found", "is_a_directory", "limit", "approval", "cancelled", "unknown", "output_limit" ], "title": "Type", "type": "string" } }, "required": [ "type", "message" ], "title": "ToolCallError", "type": "object" }, "ToolCallView": { "description": "Custom view of a tool call.\n\nBoth `context` and `call` are optional. If `call` is not specified\nthen the view will default to a syntax highlighted Python function call.", "properties": { "call": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallContent" }, { "type": "null" } ] }, "context": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallContent" }, { "type": "null" } ] } }, "title": "ToolCallView", "type": "object" }, "ToolEvent": { "description": "Call to a tool.", "properties": { "agent": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Agent" }, "agent_span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Agent Span Id" }, "arguments": { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "title": "Arguments", "type": "object" }, "completed": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Completed" }, "error": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallError" }, { "type": "null" } ] }, "event": { "const": "tool", "default": "tool", "title": "Event", "type": "string" }, "events": { "items": {}, "title": "Events", "type": "array" }, "failed": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Failed" }, "function": { "title": "Function", "type": "string" }, "id": { "title": "Id", "type": "string" }, "message_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Message Id" }, "metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Metadata" }, "pending": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Pending" }, "result": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "$ref": "#/components/schemas/ContentText" }, { "$ref": "#/components/schemas/ContentImage" }, { "$ref": "#/components/schemas/ContentAudio" }, { "$ref": "#/components/schemas/ContentVideo" }, { "$ref": "#/components/schemas/ContentDocument" }, { "items": { "anyOf": [ { "$ref": "#/components/schemas/ContentText" }, { "$ref": "#/components/schemas/ContentImage" }, { "$ref": "#/components/schemas/ContentAudio" }, { "$ref": "#/components/schemas/ContentVideo" }, { "$ref": "#/components/schemas/ContentDocument" } ] }, "type": "array" } ], "title": "Result" }, "span_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Span Id" }, "timestamp": { "title": "Timestamp", "type": "string" }, "truncated": { "anyOf": [ { "maxItems": 2, "minItems": 2, "prefixItems": [ { "type": "integer" }, { "type": "integer" } ], "type": "array" }, { "type": "null" } ], "title": "Truncated" }, "type": { "const": "function", "default": "function", "title": "Type", "type": "string" }, "uuid": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Uuid" }, "view": { "anyOf": [ { "$ref": "#/components/schemas/ToolCallContent" }, { "type": "null" } ] }, "working_start": { "title": "Working Start", "type": "number" }, "working_time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Working Time" } }, "required": [ "timestamp", "working_start", "event", "type", "id", "function", "arguments", "result", "events" ], "title": "ToolEvent", "type": "object" }, "ToolFunction": { "description": "Indicate that a specific tool function should be called.", "properties": { "name": { "title": "Name", "type": "string" } }, "required": [ "name" ], "title": "ToolFunction", "type": "object" }, "ToolInfo": { "description": "Specification of a tool (JSON Schema compatible)\n\nIf you are implementing a ModelAPI, most LLM libraries can\nbe passed this object (dumped to a dict) directly as a function\nspecification. For example, in the OpenAI provider:\n\n```python\nChatCompletionToolParam(\n type=\"function\",\n function=tool.model_dump(exclude_none=True),\n)\n```\n\nIn some cases the field names don't match up exactly. In that case\ncall `model_dump()` on the `parameters` field. For example, in the\nAnthropic provider:\n\n```python\nToolParam(\n name=tool.name,\n description=tool.description,\n input_schema=tool.parameters.model_dump(exclude_none=True),\n)\n```", "properties": { "description": { "title": "Description", "type": "string" }, "name": { "title": "Name", "type": "string" }, "options": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Options" }, "parameters": { "$ref": "#/components/schemas/ToolParams" } }, "required": [ "name", "description", "parameters" ], "title": "ToolInfo", "type": "object" }, "ToolParams": { "description": "Description of tool parameters object in JSON Schema format.", "properties": { "additionalProperties": { "anyOf": [ { "$ref": "#/components/schemas/JSONSchema-Output" }, { "type": "boolean" }, { "type": "null" } ], "default": false, "title": "Additionalproperties" }, "properties": { "additionalProperties": { "$ref": "#/components/schemas/JSONSchema-Output" }, "title": "Properties", "type": "object" }, "required": { "items": { "type": "string" }, "title": "Required", "type": "array" }, "type": { "const": "object", "default": "object", "title": "Type", "type": "string" } }, "required": [ "type", "properties", "required" ], "title": "ToolParams", "type": "object" }, "TopLogprob": { "description": "List of the most likely tokens and their log probability, at this token position.", "properties": { "bytes": { "anyOf": [ { "items": { "type": "integer" }, "type": "array" }, { "type": "null" } ], "title": "Bytes" }, "logprob": { "title": "Logprob", "type": "number" }, "token": { "title": "Token", "type": "string" } }, "required": [ "token", "logprob" ], "title": "TopLogprob", "type": "object" }, "Transcript": { "description": "Transcript info and transcript content (messages and events).", "properties": { "agent": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Agent" }, "agent_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Agent Args" }, "date": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Date" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error" }, "events": { "items": { "anyOf": [ { "$ref": "#/components/schemas/SampleInitEvent" }, { "$ref": "#/components/schemas/SampleLimitEvent" }, { "$ref": "#/components/schemas/SandboxEvent" }, { "$ref": "#/components/schemas/StateEvent" }, { "$ref": "#/components/schemas/StoreEvent" }, { "$ref": "#/components/schemas/ModelEvent" }, { "$ref": "#/components/schemas/ToolEvent" }, { "$ref": "#/components/schemas/AnchorEvent" }, { "$ref": "#/components/schemas/ApprovalEvent" }, { "$ref": "#/components/schemas/BranchEvent" }, { "$ref": "#/components/schemas/CheckpointEvent" }, { "$ref": "#/components/schemas/CompactionEvent" }, { "$ref": "#/components/schemas/InputEvent" }, { "$ref": "#/components/schemas/InterruptEvent" }, { "$ref": "#/components/schemas/ScoreEvent" }, { "$ref": "#/components/schemas/ScoreEditEvent" }, { "$ref": "#/components/schemas/ErrorEvent" }, { "$ref": "#/components/schemas/LoggerEvent" }, { "$ref": "#/components/schemas/InfoEvent" }, { "$ref": "#/components/schemas/SpanBeginEvent" }, { "$ref": "#/components/schemas/SpanEndEvent" }, { "$ref": "#/components/schemas/StepEvent" }, { "$ref": "#/components/schemas/SubtaskEvent" } ] }, "title": "Events", "type": "array" }, "limit": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Limit" }, "message_count": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Message Count" }, "messages": { "items": { "anyOf": [ { "$ref": "#/components/schemas/ChatMessageSystem" }, { "$ref": "#/components/schemas/ChatMessageUser" }, { "$ref": "#/components/schemas/ChatMessageAssistant" }, { "$ref": "#/components/schemas/ChatMessageTool" } ] }, "title": "Messages", "type": "array" }, "metadata": { "additionalProperties": true, "title": "Metadata", "type": "object" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "model_options": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Model Options" }, "score": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "source_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Id" }, "source_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Type" }, "source_uri": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Uri" }, "success": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Success" }, "task_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task Id" }, "task_repeat": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Task Repeat" }, "task_set": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task Set" }, "timelines": { "items": { "$ref": "#/components/schemas/Timeline" }, "title": "Timelines", "type": "array" }, "total_time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Total Time" }, "total_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Total Tokens" }, "transcript_id": { "title": "Transcript Id", "type": "string" } }, "required": [ "transcript_id", "metadata", "messages", "events", "timelines" ], "title": "Transcript", "type": "object" }, "TranscriptField": { "description": "Field in transcript data frame.", "properties": { "name": { "title": "Name", "type": "string" }, "type": { "title": "Type", "type": "string" }, "tz": { "title": "Tz", "type": "string" } }, "required": [ "name", "type", "tz" ], "title": "TranscriptField", "type": "object" }, "TranscriptInfo": { "description": "Transcript identifier, location, and metadata.", "properties": { "agent": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Agent" }, "agent_args": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Agent Args" }, "date": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Date" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error" }, "limit": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Limit" }, "message_count": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Message Count" }, "metadata": { "additionalProperties": true, "title": "Metadata", "type": "object" }, "model": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Model" }, "model_options": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Model Options" }, "score": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "source_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Id" }, "source_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Type" }, "source_uri": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Source Uri" }, "success": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Success" }, "task_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task Id" }, "task_repeat": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Task Repeat" }, "task_set": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task Set" }, "total_time": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "title": "Total Time" }, "total_tokens": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Total Tokens" }, "transcript_id": { "title": "Transcript Id", "type": "string" } }, "required": [ "transcript_id", "metadata" ], "title": "TranscriptInfo", "type": "object" }, "TranscriptsRequest": { "description": "Request body for POST /transcripts endpoint.", "properties": { "filter": { "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "type": "null" } ] }, "order_by": { "anyOf": [ { "$ref": "#/components/schemas/OrderBy" }, { "items": { "$ref": "#/components/schemas/OrderBy" }, "type": "array" }, { "type": "null" } ], "title": "Order By" }, "pagination": { "anyOf": [ { "$ref": "#/components/schemas/Pagination" }, { "type": "null" } ] } }, "title": "TranscriptsRequest", "type": "object" }, "TranscriptsResponse": { "properties": { "items": { "items": { "$ref": "#/components/schemas/TranscriptInfo" }, "title": "Items", "type": "array" }, "next_cursor": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Next Cursor" }, "total_count": { "title": "Total Count", "type": "integer" } }, "required": [ "items", "total_count" ], "title": "TranscriptsResponse", "type": "object" }, "TurnInterval": { "description": "Fire after every ``every`` agent turns of work.\n\nThe very first ``tick()`` call marks the boundary *before* turn 1\nhas run \u2014 agents place ``cp.tick()`` at the top of their loop, so\nthe opening tick stands between \"no turn yet\" and \"turn 1.\" That\nboundary is informational and doesn't count toward the threshold;\notherwise ``every=1`` would fire an empty checkpoint on the\nopening tick.", "properties": { "every": { "title": "Every", "type": "integer" } }, "required": [ "every" ], "title": "TurnInterval", "type": "object" }, "UrlCitation": { "description": "A citation that refers to a URL.", "properties": { "cited_text": { "anyOf": [ { "type": "string" }, { "items": { "type": "integer" }, "maxItems": 2, "minItems": 2, "type": "array" }, { "type": "null" } ], "title": "Cited Text" }, "internal": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/JsonValue" }, "type": "object" }, { "type": "null" } ], "title": "Internal" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "url", "default": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "UrlCitation", "type": "object" }, "ValidationCase": { "description": "Validation case for comparing to scanner results.\n\nA `ValidationCase` specifies the ground truth for a scan of particular id (e.g. transcript id, message id, etc.\n\nUse `target` for single-value or dict validation.\nUse `labels` for validating resultsets with label-specific expectations.", "properties": { "id": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Id" }, "labels": { "anyOf": [ { "additionalProperties": { "type": "boolean" }, "type": "object" }, { "type": "null" } ], "title": "Labels" }, "predicate": { "anyOf": [ { "enum": [ "gt", "gte", "lt", "lte", "eq", "ne", "contains", "startswith", "endswith", "icontains", "iequals" ], "type": "string" }, { "type": "null" } ], "title": "Predicate" }, "split": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Split" }, "target": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "task_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task Id" }, "task_repeat": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Task Repeat" } }, "required": [ "id" ], "title": "ValidationCase", "type": "object" }, "ValidationCaseRequest": { "description": "Request body for creating or updating a validation case.", "properties": { "id": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Id" }, "labels": { "anyOf": [ { "additionalProperties": { "type": "boolean" }, "type": "object" }, { "type": "null" } ], "title": "Labels" }, "predicate": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Predicate" }, "split": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Split" }, "target": { "anyOf": [ { "$ref": "#/components/schemas/JsonValue" }, { "type": "null" } ] }, "task_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Task Id" }, "task_repeat": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Task Repeat" } }, "title": "ValidationCaseRequest", "type": "object" }, "ValidationEntry": { "description": "A single validation result with its target.", "properties": { "id": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "title": "Id" }, "target": { "$ref": "#/components/schemas/JsonValue" }, "valid": { "anyOf": [ { "type": "boolean" }, { "additionalProperties": { "type": "boolean" }, "type": "object" } ], "title": "Valid" } }, "required": [ "id", "target", "valid" ], "title": "ValidationEntry", "type": "object" }, "ValidationError": { "properties": { "ctx": { "title": "Context", "type": "object" }, "input": { "title": "Input" }, "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "title": "Location", "type": "array" }, "msg": { "title": "Message", "type": "string" }, "type": { "title": "Error Type", "type": "string" } }, "required": [ "loc", "msg", "type" ], "title": "ValidationError", "type": "object" }, "ValidationMetrics": { "description": "Confusion matrix counts for precision/recall.", "properties": { "accuracy": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Balanced accuracy: (Recall + Specificity) / 2.", "readOnly": true, "title": "Accuracy" }, "f1": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "Harmonic mean of precision and recall.", "readOnly": true, "title": "F1" }, "fn": { "default": 0, "title": "Fn", "type": "integer" }, "fp": { "default": 0, "title": "Fp", "type": "integer" }, "precision": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "TP / (TP + FP). None if no positive predictions.", "readOnly": true, "title": "Precision" }, "recall": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "TP / (TP + FN). None if no positive targets.", "readOnly": true, "title": "Recall" }, "specificity": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "description": "TN / (TN + FP). None if no negative targets.", "readOnly": true, "title": "Specificity" }, "tn": { "default": 0, "title": "Tn", "type": "integer" }, "total": { "readOnly": true, "title": "Total", "type": "integer" }, "tp": { "default": 0, "title": "Tp", "type": "integer" } }, "required": [ "tp", "fp", "tn", "fn", "total", "precision", "recall", "specificity", "f1", "accuracy" ], "title": "ValidationMetrics", "type": "object" }, "ValidationResults": { "description": "Validation entries with pre-computed metrics.", "properties": { "entries": { "items": { "$ref": "#/components/schemas/ValidationEntry" }, "title": "Entries", "type": "array" }, "metrics": { "anyOf": [ { "$ref": "#/components/schemas/ValidationMetrics" }, { "type": "null" } ] }, "metrics_by_key": { "anyOf": [ { "additionalProperties": { "$ref": "#/components/schemas/ValidationMetrics" }, "type": "object" }, { "type": "null" } ], "title": "Metrics By Key" } }, "required": [ "entries" ], "title": "ValidationResults", "type": "object" }, "ValidationSet-Input": { "description": "Validation set for a scanner.", "properties": { "cases": { "items": { "$ref": "#/components/schemas/ValidationCase" }, "title": "Cases", "type": "array" }, "predicate": { "anyOf": [ { "enum": [ "gt", "gte", "lt", "lte", "eq", "ne", "contains", "startswith", "endswith", "icontains", "iequals" ], "type": "string" }, { "type": "null" } ], "default": "eq", "title": "Predicate" }, "split": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Split" } }, "required": [ "cases" ], "title": "ValidationSet", "type": "object" }, "ValidationSet-Output": { "description": "Validation set for a scanner.", "properties": { "cases": { "items": { "$ref": "#/components/schemas/ValidationCase" }, "title": "Cases", "type": "array" }, "predicate": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Predicate" }, "split": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Split" } }, "required": [ "cases" ], "title": "ValidationSet", "type": "object" }, "Worklist": { "description": "List of transcript ids to process for a scanner.", "properties": { "scanner": { "title": "Scanner", "type": "string" }, "transcripts": { "items": { "type": "string" }, "title": "Transcripts", "type": "array" } }, "required": [ "scanner", "transcripts" ], "title": "Worklist", "type": "object" } } }, "info": { "title": "Inspect Scout Viewer API", "version": "2.0.0-alpha" }, "openapi": "3.1.0", "paths": { "/app-config": { "get": { "description": "Returns app config including transcripts and scans directories.", "operationId": "config_app_config_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AppConfig" } } }, "description": "Successful Response" } }, "summary": "Get application configuration", "tags": [ "config" ] } }, "/code": { "post": { "description": "Process condition.", "operationId": "code_code_post", "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/Condition" }, { "items": { "$ref": "#/components/schemas/Condition" }, "type": "array" } ], "title": "Body" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "additionalProperties": { "type": "string" }, "title": "Response Code Code Post", "type": "object" } } }, "description": "Successful Response" } }, "summary": "Code endpoint", "tags": [ "scanners" ] } }, "/dist": { "get": { "description": "Returns the absolute path to the frontend dist directory, downloading from Git LFS if needed.", "operationId": "dist_dist_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DistResponse" } } }, "description": "Successful Response" } }, "summary": "Resolve dist directory", "tags": [ "dist" ] } }, "/project/config": { "get": { "description": "Returns the project configuration from scout.yaml. The ETag header contains a hash of the file for conditional updates.", "operationId": "get_project_config_project_config_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectConfig-Output" } } }, "description": "Successful Response" } }, "summary": "Get project configuration", "tags": [ "config" ] }, "put": { "description": "Updates the project configuration in scout.yaml while preserving comments and formatting. Optionally include If-Match header with current ETag for optimistic concurrency control. Omit If-Match to force save.", "operationId": "put_project_config_project_config_put", "parameters": [ { "description": "ETag from GET request (optional, omit to force save)", "in": "header", "name": "if-match", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "ETag from GET request (optional, omit to force save)", "title": "If-Match" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectConfig-Input" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProjectConfig-Output" } } }, "description": "Successful Response" } }, "summary": "Update project configuration", "tags": [ "config" ] } }, "/scanners": { "get": { "description": "Returns info about all registered scanners.", "operationId": "scanners_scanners_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScannersResponse" } } }, "description": "Successful Response" } }, "summary": "List available scanners", "tags": [ "scanners" ] } }, "/scans/active": { "get": { "description": "Returns info on all currently running scans.", "operationId": "active_scans_scans_active_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActiveScansResponse" } } }, "description": "Successful Response" } }, "summary": "Get active scans", "tags": [ "scans" ] } }, "/scans/{dir}": { "post": { "description": "Returns scans from specified directory. Optional filter condition uses SQL-like DSL. Optional order_by for sorting results. Optional pagination for cursor-based pagination.", "operationId": "scans_scans__dir__post", "parameters": [ { "description": "Scans directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Scans directory (base64url-encoded)", "title": "Dir", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/ScansRequest" }, { "type": "null" } ], "title": "Body" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScansResponse" } } }, "description": "Successful Response" } }, "summary": "List scans", "tags": [ "scans" ] } }, "/scans/{dir}/distinct": { "post": { "description": "Returns distinct values for a column, optionally filtered.", "operationId": "scans_distinct_scans__dir__distinct_post", "parameters": [ { "description": "Scans directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Scans directory (base64url-encoded)", "title": "Dir", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/DistinctRequest" }, { "type": "null" } ], "title": "Body" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "format": "date-time", "type": "string" }, { "format": "date", "type": "string" }, { "type": "null" } ] }, "title": "Response Scans Distinct Scans Dir Distinct Post", "type": "array" } } }, "description": "Successful Response" } }, "summary": "Get distinct column values", "tags": [ "scans" ] } }, "/scans/{dir}/{scan}": { "delete": { "description": "Deletes a scan directory. Returns 409 Conflict if scan is active.", "operationId": "delete_scan_scans__dir___scan__delete", "parameters": [ { "description": "Scans directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Scans directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Scan path (base64url-encoded)", "in": "path", "name": "scan", "required": true, "schema": { "description": "Scan path (base64url-encoded)", "title": "Scan", "type": "string" } } ], "responses": { "204": { "description": "Successful Response" } }, "summary": "Delete a scan", "tags": [ "scans" ] }, "get": { "description": "Returns detailed status and metadata for a single scan. Send Accept: application/zip to download the scan directory as a zip archive.", "operationId": "scan_scans__dir___scan__get", "parameters": [ { "description": "Scans directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Scans directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Scan path (base64url-encoded)", "in": "path", "name": "scan", "required": true, "schema": { "description": "Scan path (base64url-encoded)", "title": "Scan", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } }, "application/zip": { "description": "Zip archive of the scan directory when Accept: application/zip is sent." } }, "description": "Successful Response" } }, "summary": "Get scan status", "tags": [ "scans" ] } }, "/scans/{dir}/{scan}/{scanner}": { "get": { "description": "Streams scanner results as Arrow IPC format with LZ4 compression. Use exclude_column to omit heavy columns from the response.", "operationId": "scan_df_scans__dir___scan___scanner__get", "parameters": [ { "description": "Scans directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Scans directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Scan path (base64url-encoded)", "in": "path", "name": "scan", "required": true, "schema": { "description": "Scan path (base64url-encoded)", "title": "Scan", "type": "string" } }, { "description": "Scanner name", "in": "path", "name": "scanner", "required": true, "schema": { "description": "Scanner name", "title": "Scanner", "type": "string" } }, { "description": "Column names to exclude (repeat for multiple)", "in": "query", "name": "exclude_column", "required": false, "schema": { "default": [], "description": "Column names to exclude (repeat for multiple)", "items": { "type": "string" }, "title": "Exclude Column", "type": "array" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Get scanner dataframe containing results for all transcripts", "tags": [ "scans" ] } }, "/scans/{dir}/{scan}/{scanner}/{uuid}": { "get": { "description": "Returns requested columns as a JSON object. Repeat the `column` query parameter for each column.", "operationId": "scanner_row_scans__dir___scan___scanner___uuid__get", "parameters": [ { "description": "Scans directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Scans directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Scan path (base64url-encoded)", "in": "path", "name": "scan", "required": true, "schema": { "description": "Scan path (base64url-encoded)", "title": "Scan", "type": "string" } }, { "description": "Scanner name", "in": "path", "name": "scanner", "required": true, "schema": { "description": "Scanner name", "title": "Scanner", "type": "string" } }, { "description": "UUID of the specific result row", "in": "path", "name": "uuid", "required": true, "schema": { "description": "UUID of the specific result row", "title": "Uuid", "type": "string" } }, { "description": "Column names to return (repeat for multiple)", "in": "query", "name": "column", "required": false, "schema": { "default": [], "description": "Column names to return (repeat for multiple)", "items": { "type": "string" }, "title": "Column", "type": "array" } } ], "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Get specific columns for a result row", "tags": [ "scans" ] } }, "/schema/invalidation-topic": { "get": { "operationId": "_invalidation_topic_schema_invalidation_topic_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InvalidationTopic" } } }, "description": "Successful Response" } }, "summary": " Invalidation Topic" } }, "/schema/llm-scanner-params": { "get": { "operationId": "_llm_scanner_params_schema_llm_scanner_params_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LlmScannerParams" } } }, "description": "Successful Response" } }, "summary": " Llm Scanner Params" } }, "/schema/raw-encoding": { "get": { "operationId": "_raw_encoding_schema_raw_encoding_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RawEncoding" } } }, "description": "Successful Response" } }, "summary": " Raw Encoding" } }, "/schema/scanner-input": { "get": { "operationId": "_scanner_input_schema_scanner_input_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScannerInputResponse" } } }, "description": "Successful Response" } }, "summary": " Scanner Input" } }, "/schema/transcript": { "get": { "operationId": "_transcript_schema_transcript_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Transcript" } } }, "description": "Successful Response" } }, "summary": " Transcript" } }, "/schema/validation-case": { "get": { "operationId": "_validation_case_schema_validation_case_get", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidationCase" } } }, "description": "Successful Response" } }, "summary": " Validation Case" } }, "/searches": { "get": { "description": "List recent global search inputs, newest first.", "operationId": "list_search_inputs_searches_get", "parameters": [ { "description": "Search input type to list", "in": "query", "name": "type", "required": true, "schema": { "description": "Search input type to list", "enum": [ "grep", "llm" ], "title": "Type", "type": "string" } }, { "description": "Maximum number of recent search inputs to return", "in": "query", "name": "count", "required": false, "schema": { "default": 20, "description": "Maximum number of recent search inputs to return", "maximum": 100, "minimum": 1, "title": "Count", "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchInputListResponse" } } }, "description": "Successful Response" } }, "summary": "List recent search inputs", "tags": [ "search" ] } }, "/startscan": { "post": { "description": "Runs a scan using llm_scanner with the provided ScanJobConfig.", "operationId": "run_llm_scanner_startscan_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScanJobConfig" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Status" } } }, "description": "Successful Response" } }, "summary": "Run llm_scanner", "tags": [ "scans" ] } }, "/topics": { "get": { "description": "Returns current topic versions dict for polling clients.", "operationId": "get_topics_topics_get", "responses": { "200": { "content": { "application/json": { "schema": { "additionalProperties": { "type": "string" }, "propertyNames": { "enum": [ "project-config", "scans", "transcripts" ] }, "title": "Response Get Topics Topics Get", "type": "object" } } }, "description": "Successful Response" } }, "summary": "Get current topic versions", "tags": [ "topics" ] } }, "/topics/stream": { "get": { "description": "SSE endpoint that pushes topic versions when they change. Each message is a JSON dict mapping topic names to timestamps.", "operationId": "topics_stream_topics_stream_get", "responses": { "200": { "content": { "application/json": { "schema": {} } }, "description": "Successful Response" } }, "summary": "Stream topic updates", "tags": [ "topics" ] } }, "/transcripts/{dir}": { "post": { "description": "Returns transcripts from specified directory. Optional filter condition uses SQL-like DSL. Optional order_by for sorting results. Optional pagination for cursor-based pagination.", "operationId": "transcripts_transcripts__dir__post", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/TranscriptsRequest" }, { "type": "null" } ], "title": "Body" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TranscriptsResponse" } } }, "description": "Successful Response" } }, "summary": "List transcripts", "tags": [ "transcripts" ] } }, "/transcripts/{dir}/distinct": { "post": { "description": "Returns distinct values for a column, optionally filtered.", "operationId": "transcripts_distinct_transcripts__dir__distinct_post", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/DistinctRequest" }, { "type": "null" } ], "title": "Body" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" }, { "type": "number" }, { "type": "boolean" }, { "format": "date-time", "type": "string" }, { "format": "date", "type": "string" }, { "type": "null" } ] }, "title": "Response Transcripts Distinct Transcripts Dir Distinct Post", "type": "array" } } }, "description": "Successful Response" } }, "summary": "Get distinct column values", "tags": [ "transcripts" ] } }, "/transcripts/{dir}/{id}/info": { "get": { "description": "Returns transcript metadata without messages or events.", "operationId": "transcript_info_transcripts__dir___id__info_get", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Transcript ID", "in": "path", "name": "id", "required": true, "schema": { "description": "Transcript ID", "title": "Id", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TranscriptInfo" } } }, "description": "Successful Response" } }, "summary": "Get transcript info", "tags": [ "transcripts" ] }, "head": { "description": "Checks if a transcript exists.", "operationId": "transcript_info_transcripts__dir___id__info_head", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Transcript ID", "in": "path", "name": "id", "required": true, "schema": { "description": "Transcript ID", "title": "Id", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TranscriptInfo" } } }, "description": "Successful Response" } }, "summary": "Check transcript existence", "tags": [ "transcripts" ] } }, "/transcripts/{dir}/{id}/messages-events": { "get": { "description": "Returns JSON bytes for transcript messages and events. May be compressed (check Content-Encoding or X-Content-Encoding headers). JSON may contain a top-level 'attachments' dict; strings within 'messages' and 'events' may contain 'attachment://<32-char-hex-id>' refs that must be resolved client-side by looking up the ID in the 'attachments' dict. Use X-Accept-Raw-Encoding header to bypass server transcoding and receive bytes in the source compression format (e.g., zstd); client must decompress.", "operationId": "transcript_messages_and_events_transcripts__dir___id__messages_events_get", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Transcript ID", "in": "path", "name": "id", "required": true, "schema": { "description": "Transcript ID", "title": "Id", "type": "string" } }, { "description": "Comma-separated list of compression algorithms the client application can decompress in code (e.g., 'zstd'). Use this for algorithms browsers don't natively support. If the source uses a listed algorithm, raw compressed bytes are returned with X-Content-Encoding header (not Content-Encoding, so the browser won't attempt decompression). Otherwise, server transcodes to deflate for automatic browser decompression.", "in": "header", "name": "x-accept-raw-encoding", "required": false, "schema": { "anyOf": [ { "const": "zstd", "type": "string" }, { "type": "null" } ], "description": "Comma-separated list of compression algorithms the client application can decompress in code (e.g., 'zstd'). Use this for algorithms browsers don't natively support. If the source uses a listed algorithm, raw compressed bytes are returned with X-Content-Encoding header (not Content-Encoding, so the browser won't attempt decompression). Otherwise, server transcodes to deflate for automatic browser decompression.", "title": "X-Accept-Raw-Encoding" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MessagesEventsResponse" } }, "application/octet-stream": { "description": "Raw compressed bytes when X-Accept-Raw-Encoding header matches the source compression (e.g., zstd). Check X-Content-Encoding header for the compression format." } }, "description": "Successful Response" } }, "summary": "Get transcript messages and events", "tags": [ "transcripts" ] } }, "/transcripts/{dir}/{id}/search": { "post": { "description": "Search a transcript using grep or LLM-based search.\n\nReturns cached results if the same search was run before.", "operationId": "search_transcripts__dir___id__search_post", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Transcript ID", "in": "path", "name": "id", "required": true, "schema": { "description": "Transcript ID", "title": "Id", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "discriminator": { "mapping": { "grep": "#/components/schemas/GrepSearchRequest", "llm": "#/components/schemas/LlmSearchRequest" }, "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/GrepSearchRequest" }, { "$ref": "#/components/schemas/LlmSearchRequest" } ], "title": "Request" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchResponse" } } }, "description": "Successful Response" } }, "summary": "Search a transcript", "tags": [ "search" ] } }, "/transcripts/{dir}/{id}/searches/{search_id}": { "get": { "description": "Get a cached search result by search input ID and transcript scope.", "operationId": "get_search_transcripts__dir___id__searches__search_id__get", "parameters": [ { "description": "Transcripts directory (base64url-encoded)", "in": "path", "name": "dir", "required": true, "schema": { "description": "Transcripts directory (base64url-encoded)", "title": "Dir", "type": "string" } }, { "description": "Transcript ID", "in": "path", "name": "id", "required": true, "schema": { "description": "Transcript ID", "title": "Id", "type": "string" } }, { "description": "Search ID", "in": "path", "name": "search_id", "required": true, "schema": { "description": "Search ID", "title": "Search Id", "type": "string" } }, { "description": "Message filter used for the cached search result", "in": "query", "name": "messages", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Message filter used for the cached search result", "title": "Messages" } }, { "description": "Event filter used for the cached search result", "in": "query", "name": "events", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Event filter used for the cached search result", "title": "Events" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Result" } } }, "description": "Successful Response" } }, "summary": "Get a saved search result", "tags": [ "search" ] } }, "/validations": { "get": { "description": "Scans the project directory for validation files (.csv, .yaml, .json, .jsonl) and returns their URIs.", "operationId": "list_validations_validations_get", "responses": { "200": { "content": { "application/json": { "schema": { "items": { "type": "string" }, "title": "Response List Validations Validations Get", "type": "array" } } }, "description": "Successful Response" } }, "summary": "List validation files", "tags": [ "validations" ] }, "post": { "description": "Creates a new validation file at the specified path with optional initial cases. Returns the URI of the created file.", "operationId": "create_validation_validations_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateValidationSetRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "title": "Response Create Validation Validations Post", "type": "string" } } }, "description": "Successful Response" } }, "summary": "Create a validation file", "tags": [ "validations" ] } }, "/validations/{uri}": { "delete": { "description": "Deletes a validation file from the project.", "operationId": "delete_validation_validations__uri__delete", "parameters": [ { "description": "Validation file URI (base64url-encoded)", "in": "path", "name": "uri", "required": true, "schema": { "description": "Validation file URI (base64url-encoded)", "title": "Uri", "type": "string" } } ], "responses": { "204": { "description": "Successful Response" } }, "summary": "Delete a validation file", "tags": [ "validations" ] }, "get": { "description": "Returns all cases from a validation file.", "operationId": "get_validation_cases_validations__uri__get", "parameters": [ { "description": "Validation file URI (base64url-encoded)", "in": "path", "name": "uri", "required": true, "schema": { "description": "Validation file URI (base64url-encoded)", "title": "Uri", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "items": { "additionalProperties": true, "type": "object" }, "title": "Response Get Validation Cases Validations Uri Get", "type": "array" } } }, "description": "Successful Response" } }, "summary": "Get validation cases", "tags": [ "validations" ] } }, "/validations/{uri}/rename": { "put": { "description": "Renames a validation file. Returns the new URI.", "operationId": "rename_validation_validations__uri__rename_put", "parameters": [ { "description": "Validation file URI (base64url-encoded)", "in": "path", "name": "uri", "required": true, "schema": { "description": "Validation file URI (base64url-encoded)", "title": "Uri", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RenameValidationSetRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "title": "Response Rename Validation Validations Uri Rename Put", "type": "string" } } }, "description": "Successful Response" } }, "summary": "Rename a validation file", "tags": [ "validations" ] } }, "/validations/{uri}/{case_id}": { "delete": { "description": "Deletes a case from a validation file.", "operationId": "delete_validation_case_validations__uri___case_id__delete", "parameters": [ { "description": "Validation file URI (base64url-encoded)", "in": "path", "name": "uri", "required": true, "schema": { "description": "Validation file URI (base64url-encoded)", "title": "Uri", "type": "string" } }, { "description": "Case ID (base64url-encoded)", "in": "path", "name": "case_id", "required": true, "schema": { "description": "Case ID (base64url-encoded)", "title": "Case Id", "type": "string" } } ], "responses": { "204": { "description": "Successful Response" } }, "summary": "Delete a case", "tags": [ "validations" ] }, "get": { "description": "Returns a specific case from a validation file by ID.", "operationId": "get_validation_case_validations__uri___case_id__get", "parameters": [ { "description": "Validation file URI (base64url-encoded)", "in": "path", "name": "uri", "required": true, "schema": { "description": "Validation file URI (base64url-encoded)", "title": "Uri", "type": "string" } }, { "description": "Case ID (base64url-encoded)", "in": "path", "name": "case_id", "required": true, "schema": { "description": "Case ID (base64url-encoded)", "title": "Case Id", "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "additionalProperties": true, "title": "Response Get Validation Case Validations Uri Case Id Get", "type": "object" } } }, "description": "Successful Response" } }, "summary": "Get a specific case", "tags": [ "validations" ] }, "post": { "description": "Creates or updates a case in a validation file. If the case ID exists, it will be updated; otherwise, a new case will be created.", "operationId": "upsert_validation_case_validations__uri___case_id__post", "parameters": [ { "description": "Validation file URI (base64url-encoded)", "in": "path", "name": "uri", "required": true, "schema": { "description": "Validation file URI (base64url-encoded)", "title": "Uri", "type": "string" } }, { "description": "Case ID (base64url-encoded)", "in": "path", "name": "case_id", "required": true, "schema": { "description": "Case ID (base64url-encoded)", "title": "Case Id", "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ValidationCaseRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "additionalProperties": true, "title": "Response Upsert Validation Case Validations Uri Case Id Post", "type": "object" } } }, "description": "Successful Response" } }, "summary": "Create or update a case", "tags": [ "validations" ] } } } }