{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://routereceipt.org/schemas/route-receipt/v0.1/schema.json","title":"RouteReceipt","type":"object","additionalProperties":false,"required":["schema_version","receipt_id","request_id","served_at","model_identifier_type","fallback","safety","region_class","completion_status","redactions"],"properties":{"schema_version":{"type":"string","const":"route-receipt.v0.1"},"receipt_id":{"type":"string","minLength":1},"request_id":{"type":"string","minLength":1},"served_at":{"type":"string","format":"date-time"},"requested_model":{"type":"string"},"resolved_model":{"type":"string"},"model_identifier_type":{"type":"string","enum":["fixed","moving_alias","router","unknown"]},"service_tier":{"type":"object","additionalProperties":false,"required":["effective"],"properties":{"requested":{"type":"string"},"effective":{"type":"string"},"change_reason":{"type":"string","enum":["none","capacity","rate_limit","policy","provider_failure","unknown","redacted"]}}},"effort":{"type":"object","additionalProperties":false,"required":["effective_status"],"properties":{"requested":{"type":"string","enum":["minimal","low","medium","high","xhigh","provider_default","unknown"]},"effective_status":{"type":"string","enum":["completed","budget_exhausted","downgraded","not_applicable","unknown","redacted"]}}},"tools":{"type":"object","additionalProperties":false,"required":["used"],"properties":{"allowed":{"type":"array","items":{"type":"string"},"uniqueItems":true},"used":{"type":"array","items":{"$ref":"#/$defs/tool_use"}},"retrieval_summary":{"type":"object","additionalProperties":false,"properties":{"source_classes":{"type":"array","items":{"type":"string"},"uniqueItems":true},"retrieved_item_count":{"type":"integer","minimum":0},"redacted":{"type":"boolean"}}}}},"context":{"type":"object","additionalProperties":false,"required":["input_truncated"],"properties":{"input_truncated":{"type":"string","enum":["false","true","unknown","redacted"]},"retrieved_item_count":{"type":"integer","minimum":0},"context_window_class":{"type":"string","enum":["within_limit","near_limit","exceeded","unknown","redacted"]}}},"fallback":{"type":"object","additionalProperties":false,"required":["status"],"properties":{"status":{"type":"string","enum":["none","occurred","unknown","redacted"]},"from":{"type":"string"},"to":{"type":"string"},"reason":{"type":"string","enum":["none","rate_limit","provider_error","moderation_refusal","capacity","policy","unknown","redacted"]}}},"safety":{"type":"object","additionalProperties":false,"required":["status"],"properties":{"status":{"type":"string","enum":["none","intervened","unknown","redacted"]},"category":{"type":"string"},"visible_action":{"type":"string","enum":["none","blocked","masked","rewritten","refused","unknown","redacted"]}}},"region_class":{"type":"string","enum":["user_selected_region","data_zone","global","provider_default","unknown","redacted"]},"provider_chain":{"type":"array","items":{"$ref":"#/$defs/provider_hop"}},"completion_status":{"type":"string","enum":["complete","length_limit","tool_error","safety_block","error","unknown"]},"redactions":{"type":"array","items":{"$ref":"#/$defs/redaction"}},"retention_class":{"type":"string","enum":["ephemeral","standard","regulated","audit_hold","unknown"]},"provider_extensions":{"type":"object"}},"$defs":{"tool_use":{"type":"object","additionalProperties":false,"required":["name","invocation_count"],"properties":{"name":{"type":"string"},"invocation_count":{"type":"integer","minimum":0},"result_refs":{"type":"array","items":{"type":"string"}},"redacted":{"type":"boolean"}}},"provider_hop":{"type":"object","additionalProperties":false,"required":["role"],"properties":{"role":{"type":"string","enum":["requested","served","fallback","tool","unknown"]},"provider":{"type":"string"},"model":{"type":"string"},"redacted":{"type":"boolean"}}},"redaction":{"type":"object","additionalProperties":false,"required":["field","reason"],"properties":{"field":{"type":"string"},"reason":{"type":"string","enum":["privacy","security","safety","trade_secret","contractual","not_collected","not_applicable"]},"visible_to":{"type":"array","items":{"type":"string","enum":["end_user","developer","administrator","auditor"]},"uniqueItems":true}}}}}
