{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://platoskallipolis.com/schemas/resource-freshness-review-evidence.v1.json",
  "title": "Plato's Kallipolis Resource Freshness Review Evidence",
  "type": "object",
  "additionalProperties": false,
  "required": ["schema", "resourceId", "version", "contentHash", "reviewedAt", "outcome", "checks"],
  "properties": {
    "schema": {"const": "kallipolis.resource-freshness-review-evidence.v1"},
    "resourceId": {"type": "string", "pattern": "^resource\\.[a-z0-9]+(?:[.-][a-z0-9]+)*$"},
    "version": {"type": "string", "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$"},
    "contentHash": {"type": "string", "pattern": "^sha256:[a-f0-9]{64}$"},
    "reviewedAt": {"type": "string", "format": "date-time"},
    "outcome": {"enum": ["passed", "failed"]},
    "checks": {
      "type": "object",
      "additionalProperties": false,
      "required": ["publicAccess", "schemaValidity", "provenance", "sourceFreshness", "contradictions"],
      "properties": {
        "publicAccess": {"enum": ["passed", "failed"]},
        "schemaValidity": {"enum": ["passed", "failed"]},
        "provenance": {"enum": ["passed", "failed"]},
        "sourceFreshness": {"enum": ["passed", "failed"]},
        "contradictions": {"enum": ["passed", "failed"]}
      }
    }
  }
}
