{
  "schema_version": "1.0",
  "id": "schemas",
  "title": "Schemas and Verification Modes",
  "summary": "Canonical versioned request/result contracts for the V1 source-support product.",
  "sections": {
    "source_of_truth": "All runtime, OpenAPI, Help, receipt, Agent Card, example, and test contracts derive from the canonical schema package.",
    "schema_versions": {
      "api": "1.0",
      "verificationRequest": "1.0",
      "verificationResult": "1.0",
      "receipt": "1.0",
      "councilMember": "1.0",
      "adjudication": "1.0",
      "error": "1.0",
      "localDocument": "1.0"
    },
    "verification_modes": [
      "source_support",
      "independent_verification",
      "high_assurance"
    ],
    "commercially_enabled": [
      "source_support"
    ],
    "source_support": "Answers whether the supplied source supports the supplied claim.",
    "independent_verification": "Would evaluate authoritative evidence beyond the supplied source; not commercially enabled.",
    "high_assurance": "Not commercially enabled or benchmarked.",
    "request_schema": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "claim",
        "source_url",
        "idempotency_key"
      ],
      "properties": {
        "schema_version": {
          "const": "1.0"
        },
        "claim": {
          "type": "string",
          "minLength": 1,
          "maxLength": 2000
        },
        "source_url": {
          "type": "string",
          "format": "uri",
          "pattern": "^https://"
        },
        "as_of": {
          "type": "string",
          "format": "date"
        },
        "idempotency_key": {
          "type": "string",
          "minLength": 8,
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9._:-]+$"
        }
      }
    },
    "result_schema": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "schema_version",
        "job_id",
        "verification_id",
        "status",
        "claim",
        "verification_mode",
        "verdict",
        "reason_code",
        "secondary_reason_codes",
        "actionability",
        "confidence",
        "source",
        "evidence",
        "analysis",
        "suggested_correction",
        "assurance",
        "limitations",
        "verification",
        "usage",
        "completed_at",
        "integrity"
      ],
      "properties": {
        "schema_version": {
          "const": "1.0"
        },
        "job_id": {
          "type": "string"
        },
        "verification_id": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "enum": [
            "complete",
            "inconclusive"
          ]
        },
        "claim": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "original",
            "atomic_subclaims"
          ],
          "properties": {
            "original": {
              "type": "string"
            },
            "atomic_subclaims": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "verification_mode": {
          "const": "source_support"
        },
        "verdict": {
          "type": "string",
          "enum": [
            "supported",
            "partially_supported",
            "unsupported",
            "contradicted",
            "outdated",
            "unverifiable"
          ]
        },
        "reason_code": {
          "type": "string",
          "enum": [
            "SOURCE_DIRECTLY_SUPPORTS_CLAIM",
            "SOURCE_PARTIALLY_SUPPORTS_CLAIM",
            "SOURCE_DOES_NOT_CONTAIN_FACT",
            "SOURCE_CONTAINS_RELATED_BUT_INSUFFICIENT_FACT",
            "AUTHORITATIVE_SOURCE_CONFLICT",
            "NUMERIC_CONTRADICTION",
            "DATE_MISMATCH",
            "TEMPORAL_OUTDATEDNESS",
            "SCOPE_OVERSTATEMENT",
            "CAUSAL_INFERENCE_NOT_SUPPORTED",
            "QUANTITY_OVERSTATEMENT",
            "MATERIAL_QUALIFIER_MISSING",
            "CITATION_MISMATCH",
            "SOURCE_INACCESSIBLE",
            "SOURCE_AMBIGUOUS",
            "INSUFFICIENT_EVIDENCE",
            "COMPOUND_CLAIM",
            "DETERMINISTIC_CHECK_CONFLICT",
            "MULTI_SOURCE_CONFLICT",
            "MODEL_DISAGREEMENT_UNRESOLVED",
            "VERIFICATION_BUDGET_EXHAUSTED"
          ]
        },
        "secondary_reason_codes": {
          "type": "array",
          "uniqueItems": true,
          "items": {
            "type": "string",
            "enum": [
              "SOURCE_DIRECTLY_SUPPORTS_CLAIM",
              "SOURCE_PARTIALLY_SUPPORTS_CLAIM",
              "SOURCE_DOES_NOT_CONTAIN_FACT",
              "SOURCE_CONTAINS_RELATED_BUT_INSUFFICIENT_FACT",
              "AUTHORITATIVE_SOURCE_CONFLICT",
              "NUMERIC_CONTRADICTION",
              "DATE_MISMATCH",
              "TEMPORAL_OUTDATEDNESS",
              "SCOPE_OVERSTATEMENT",
              "CAUSAL_INFERENCE_NOT_SUPPORTED",
              "QUANTITY_OVERSTATEMENT",
              "MATERIAL_QUALIFIER_MISSING",
              "CITATION_MISMATCH",
              "SOURCE_INACCESSIBLE",
              "SOURCE_AMBIGUOUS",
              "INSUFFICIENT_EVIDENCE",
              "COMPOUND_CLAIM",
              "DETERMINISTIC_CHECK_CONFLICT",
              "MULTI_SOURCE_CONFLICT",
              "MODEL_DISAGREEMENT_UNRESOLVED",
              "VERIFICATION_BUDGET_EXHAUSTED"
            ]
          }
        },
        "actionability": {
          "type": "string",
          "enum": [
            "safe_to_use_as_cited",
            "revise_before_use",
            "do_not_use_as_cited",
            "seek_additional_evidence",
            "source_outdated",
            "manual_review_recommended"
          ]
        },
        "confidence": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "value",
            "calibrated",
            "band"
          ],
          "properties": {
            "value": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            },
            "calibrated": {
              "const": false
            },
            "band": {
              "type": "string",
              "enum": [
                "low",
                "medium",
                "high"
              ]
            }
          }
        },
        "source": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "url",
            "retrieved",
            "retrieved_at",
            "content_hash",
            "publication_date",
            "effective_date"
          ],
          "properties": {
            "url": {
              "type": "string"
            },
            "retrieved": {
              "type": "boolean"
            },
            "retrieved_at": {
              "type": [
                "string",
                "null"
              ]
            },
            "content_hash": {
              "type": [
                "string",
                "null"
              ]
            },
            "publication_date": {
              "type": [
                "string",
                "null"
              ]
            },
            "effective_date": {
              "type": [
                "string",
                "null"
              ]
            }
          }
        },
        "evidence": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "evidence_id",
              "type",
              "location",
              "statement"
            ],
            "properties": {
              "evidence_id": {
                "type": "string"
              },
              "type": {
                "type": "string",
                "enum": [
                  "direct",
                  "contextual",
                  "deterministic"
                ]
              },
              "location": {
                "type": "string"
              },
              "statement": {
                "type": "string"
              }
            }
          }
        },
        "analysis": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "source_exists",
            "source_read",
            "fact_present",
            "claim_supported",
            "deterministic_conflict"
          ],
          "properties": {
            "source_exists": {
              "type": "boolean"
            },
            "source_read": {
              "type": "boolean"
            },
            "fact_present": {
              "type": "boolean"
            },
            "claim_supported": {
              "type": "boolean"
            },
            "deterministic_conflict": {
              "type": "boolean"
            }
          }
        },
        "suggested_correction": {
          "type": [
            "string",
            "null"
          ]
        },
        "assurance": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "level",
            "verification_mode",
            "primary_source_read",
            "deterministic_checks_used",
            "secondary_verifier_used",
            "counter_evidence_search_used",
            "council_used",
            "adjudication_used",
            "independent_provider_count"
          ],
          "properties": {
            "level": {
              "type": "string",
              "enum": [
                "basic",
                "standard",
                "council",
                "high_assurance"
              ]
            },
            "verification_mode": {
              "type": "string",
              "enum": [
                "source_support",
                "independent_verification",
                "high_assurance"
              ]
            },
            "primary_source_read": {
              "type": "boolean"
            },
            "deterministic_checks_used": {
              "type": "boolean"
            },
            "secondary_verifier_used": {
              "type": "boolean"
            },
            "counter_evidence_search_used": {
              "type": "boolean"
            },
            "council_used": {
              "type": "boolean"
            },
            "adjudication_used": {
              "type": "boolean"
            },
            "independent_provider_count": {
              "type": "integer",
              "minimum": 0
            }
          }
        },
        "limitations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "verification": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "method_version",
            "prompt_version",
            "router_version",
            "retrieval_version",
            "models_used",
            "deterministic_checks_used",
            "disagreement_detected"
          ],
          "properties": {
            "method_version": {
              "type": "string"
            },
            "prompt_version": {
              "type": "string"
            },
            "router_version": {
              "type": "string"
            },
            "retrieval_version": {
              "type": "string"
            },
            "models_used": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "deterministic_checks_used": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "disagreement_detected": {
              "type": "boolean"
            }
          }
        },
        "usage": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "input_tokens",
            "output_tokens",
            "provider_cost_usd",
            "retrieval_cost_usd",
            "total_cost_usd"
          ],
          "properties": {
            "input_tokens": {
              "type": "integer",
              "minimum": 0
            },
            "output_tokens": {
              "type": "integer",
              "minimum": 0
            },
            "provider_cost_usd": {
              "type": "number",
              "minimum": 0
            },
            "retrieval_cost_usd": {
              "type": "number",
              "minimum": 0
            },
            "total_cost_usd": {
              "type": "number",
              "minimum": 0
            }
          }
        },
        "report_id": {
          "type": "string"
        },
        "report_retention": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "mode",
            "policy",
            "created_at",
            "expires_at",
            "deletion_status"
          ],
          "properties": {
            "mode": {
              "type": "string",
              "enum": [
                "delete_after_delivery",
                "24_hours",
                "7_days",
                "30_days",
                "90_days",
                "365_days",
                "until_deleted"
              ]
            },
            "policy": {
              "type": "string"
            },
            "created_at": {
              "type": "string"
            },
            "expires_at": {
              "type": [
                "string",
                "null"
              ]
            },
            "deletion_status": {
              "type": "string",
              "enum": [
                "active",
                "deleted"
              ]
            }
          }
        },
        "document_provenance": {
          "type": "object"
        },
        "completed_at": {
          "type": "string"
        },
        "integrity": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "algorithm",
            "result_hash"
          ],
          "properties": {
            "algorithm": {
              "const": "SHA-256"
            },
            "result_hash": {
              "type": "string"
            }
          }
        }
      }
    }
  },
  "version": "2026-08-v6",
  "effective_at": "2026-08-10T00:00:00Z",
  "content_hash": "sha256:464b2f5e0a8dc6f59e1b3fd42a83ba432e3d35a5818d4f1050b0986c33207dad"
}