{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://kinra.ai/docs/truth-machine/schemas/evidence.schema.json",
  "title": "Truth Machine reference evidence packet",
  "type": "object",
  "additionalProperties": false,
  "required": ["schema_version", "id", "kind", "captured_on", "source", "authority", "files"],
  "properties": {
    "schema_version": {"const": 1},
    "id": {"type": "string", "pattern": "^TME-[0-9]{8}-[0-9]{4}$"},
    "kind": {"type": "string", "minLength": 1},
    "captured_on": {"type": "string", "format": "date"},
    "source": {"type": "string", "minLength": 1},
    "authority": {"type": "string", "minLength": 1},
    "auditability": {"enum": ["public", "bounded-maintainer-attestation", "private"]},
    "files": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["path", "sha256"],
        "properties": {
          "path": {"type": "string", "minLength": 1},
          "sha256": {"type": "string", "pattern": "^[a-f0-9]{64}$"}
        }
      }
    },
    "repositories": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["repository", "revision"],
        "properties": {
          "repository": {"type": "string", "minLength": 1},
          "revision": {"type": "string", "pattern": "^[a-f0-9]{40}$"}
        }
      }
    }
  }
}
