{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://usedeed.app/contracts/deed.proof_card.onchain_revocation_promotion.v1.schema.json",
  "title": "DEED proof-card on-chain revocation promotion v1",
  "type": "object",
  "required": ["schema", "adr", "generatedAt", "repoCommit", "card", "onchainRead", "custodyBoundary"],
  "properties": {
    "schema": { "const": "https://usedeed.app/contracts/deed.proof_card.onchain_revocation_promotion.v1.schema.json" },
    "adr": { "const": "ADR-197" },
    "generatedAt": { "type": "string", "format": "date-time" },
    "repoCommit": { "type": "string", "pattern": "^[0-9a-f]{40}$" },
    "card": { "type": "object" },
    "onchainRead": {
      "type": "object",
      "required": ["evidencePath", "evidenceSha256", "source", "chain", "finality", "registry", "read", "verifiedByStandaloneVerifier"],
      "properties": {
        "evidencePath": { "type": "string", "minLength": 1 },
        "evidenceSha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
        "source": { "type": "string", "minLength": 1 },
        "chain": { "type": "object" },
        "finality": { "type": "object" },
        "registry": { "type": "object" },
        "read": { "type": "object" },
        "verifiedByStandaloneVerifier": { "const": true }
      },
      "additionalProperties": false
    },
    "custodyBoundary": { "type": "string", "minLength": 1 }
  },
  "additionalProperties": false
}
