{
    "$id": "https://antichrist.cx/schemas/collective-redress-pattern-receipt-v1.json",
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
        "clean_result": {
            "type": "boolean"
        },
        "fictional": {
            "const": true
        },
        "integrity": {
            "required": [
                "input_sha256",
                "output_sha256",
                "receipt_sha256"
            ],
            "type": "object"
        },
        "lineage": {
            "maxItems": 5,
            "minItems": 5,
            "type": "array"
        },
        "open_obligations": {
            "type": "array"
        },
        "receipt_id": {
            "pattern": "^CPR-R49-[0-9]{3}$",
            "type": "string"
        },
        "release": {
            "const": "R49"
        },
        "schema": {
            "const": "antichrist.cx.collective-redress-pattern-receipt.v1"
        },
        "terminal_state": {
            "enum": [
                "redress_verified",
                "partial_redress",
                "under_inclusion_open",
                "collective_punishment_blocked",
                "over_inclusion_corrected",
                "opt_out_protected",
                "allocation_without_registry",
                "collective_punishment_failed"
            ]
        }
    },
    "required": [
        "schema",
        "release",
        "receipt_id",
        "fictional",
        "title",
        "domain",
        "summary",
        "terminal_state",
        "clean_result",
        "lineage",
        "pattern_evidence",
        "cohort_construction",
        "proxy_audit",
        "inclusion_audit",
        "individualized_action_firewall",
        "collective_remedy",
        "anti_retaliation",
        "open_obligations",
        "human_accountability",
        "state_history",
        "integrity"
    ],
    "title": "Collective Redress Pattern Receipt",
    "type": "object"
}
