{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Controlled continuity reference evidence",
  "type": "object",
  "additionalProperties": false,
  "required": ["schema_version", "exhibit", "classification", "assumptions", "checks", "trace", "source_sha256", "run_sha256"],
  "properties": {
    "schema_version": {"const": 1},
    "exhibit": {"const": "controlled-continuity-reference"},
    "classification": {"const": "public reference run"},
    "assumptions": {"type": "array", "minItems": 4, "items": {"type": "string"}},
    "checks": {"type": "array", "minItems": 11, "items": {"type": "object", "additionalProperties": false, "required": ["name", "passed"], "properties": {"name": {"type": "string"}, "passed": {"const": true}}}},
    "trace": {"type": "array", "items": {"type": "object", "additionalProperties": false, "required": ["check", "observation"], "properties": {"check": {"type": "string"}, "observation": {"type": "object"}}}},
    "source_sha256": {"type": "object", "additionalProperties": {"type": "string", "pattern": "^[a-f0-9]{64}$"}},
    "run_sha256": {"type": "string", "pattern": "^[a-f0-9]{64}$"}
  }
}
