{
  "$id": "https://context-guard.local/schemas/reference-expiry-result-v1.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "properties": {
    "artifact_cleanup_performed": {"const": false},
    "evidence_boundary": {"const": {"evidence_class":"companion_local_receipt_only","host_request_owned":false,"provider_claim_authority":false,"provider_join_status":"missing","runtime_observer_present":false,"schema_version":"contextguard-receipt-evidence-boundary/v1","selected_branch":"S2-UNSUPPORTED","selected_transport":"NONE","stage1_evidence":false,"stage2_evidence":false}},
    "expires_at_unix_ms": {"maximum": 4102444800000, "minimum": 0, "type": "integer"},
    "generation": {"maximum": 2147483647, "minimum": 1, "type": "integer"},
    "operation": {"enum": ["register", "revoke"]},
    "reference_hmac_sha256": {"pattern": "^[0-9a-f]{64}$", "type": "string"},
    "retained_artifacts": {"const": true},
    "schema_version": {"const": "contextguard-receipt-reference-expiry-result/v1"},
    "state_location": {
      "additionalProperties": false,
      "properties": {
        "compartment": {"const": "auxiliary-v1/reference-expiry-v1"},
        "scope": {"const": "explicit_state_dir"}
      },
      "required": ["compartment", "scope"],
      "type": "object"
    },
    "status": {"enum": ["active", "expired", "revoked"]}
  },
  "required": ["artifact_cleanup_performed", "evidence_boundary", "expires_at_unix_ms", "generation", "operation", "reference_hmac_sha256", "retained_artifacts", "schema_version", "state_location", "status"],
  "title": "Context Guard Receipt reference expiry result",
  "type": "object"
}
