index|idx_call_log_at|call_log|CREATE INDEX idx_call_log_at ON call_log(at)
index|idx_call_log_root_at|call_log|CREATE INDEX idx_call_log_root_at ON call_log(root_id, at)
index|idx_call_log_run_at|call_log|CREATE INDEX idx_call_log_run_at ON call_log(run_id, at) WHERE run_id IS NOT NULL
index|idx_call_log_tool_at|call_log|CREATE INDEX idx_call_log_tool_at ON call_log(tool, at)
table|call_log|call_log|CREATE TABLE call_log ( req_id TEXT NOT NULL PRIMARY KEY CHECK (length(req_id) = 8), at TEXT NOT NULL CHECK (length(at) = 23), principal_id TEXT, principal_kind TEXT, proof_status TEXT, host TEXT, session_id TEXT, run_id BLOB, seat TEXT, surface TEXT NOT NULL, tool TEXT NOT NULL, operation TEXT, target_ids TEXT, target_versions TEXT, request_shape TEXT, outcome TEXT NOT NULL CHECK (outcome IN ('ok', 'error')), error_code TEXT, attempts INTEGER NOT NULL CHECK (attempts >= 1), latency_ms INTEGER NOT NULL CHECK (latency_ms >= 0), request_bytes INTEGER, response_bytes INTEGER, response_tokens_est INTEGER, token_method TEXT, replayed INTEGER NOT NULL DEFAULT 0 CHECK (replayed IN (0, 1)), batch_size INTEGER, failed_count INTEGER, result_count INTEGER, eligible_count INTEGER , hit_signals TEXT, lifecycle_free_rejections INTEGER, root_id BLOB)
