{
  "schemaVersion": "choiceproof.receiptCommitmentPublicVectorManifest.v1",
  "releaseVersion": "2.2.1",
  "protocolSchemaVersion": "choiceproof.receiptCommitment.v1",
  "status": "fixed",
  "synthetic": true,
  "containsProductionSecrets": false,
  "bundle": "./bundle.json",
  "sourceDirectory": "packages/protocol/test-vectors/receipt-commitment-v1",
  "fixtureCount": 11,
  "hashProfile": {
    "canonicalization": "ascending UTF-16 code-unit object keys; preserved array order; compact ECMAScript JSON serialization",
    "textEncoding": "UTF-8",
    "digest": "Keccak-256",
    "certifiedNumericSubset": {
      "kind": "ECMAScript safe integers",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991,
      "decimalsCovered": false,
      "exponentFormCovered": false,
      "unsafeIntegersCovered": false
    }
  },
  "signatureProfile": {
    "scheme": "EIP-712",
    "domainName": "ChoiceProofReceiptCommitment",
    "domainVersion": "1",
    "chainId": 84532,
    "primaryType": "ReceiptCommitment"
  },
  "artifactShapes": {
    "signedRequest": {
      "endpoint": "/api/v1/receipt-commitments",
      "method": "POST",
      "fixture": "signed-request.json",
      "receiptSchemaHash": "omitted and derived from receiptSchemaVersion",
      "closedSchema": true
    },
    "portableCommitment": {
      "fixture": "valid-commitment.json",
      "receiptSchemaHash": "included for independent inspection",
      "consumers": ["SDK", "CLI", "browser verifier", "API readback"]
    }
  },
  "fixtures": [
    {
      "name": "valid-receipt.json",
      "role": "synthetic enterprise-held receipt"
    },
    {
      "name": "valid-commitment.json",
      "role": "valid portable signed commitment"
    },
    {
      "name": "signed-request.json",
      "role": "POST-compatible signed request with server-derived receiptSchemaHash omitted"
    },
    {
      "name": "tampered-receipt.json",
      "role": "receipt hash mismatch"
    },
    {
      "name": "invalid-signature-commitment.json",
      "role": "enterprise signature failure"
    },
    {
      "name": "metadata-mismatch-commitment.json",
      "role": "public metadata hash mismatch"
    },
    {
      "name": "wrong-chain-commitment.json",
      "role": "wrong EIP-712 chain domain"
    },
    {
      "name": "missing-anchor-readback.json",
      "role": "deterministic missing anchor"
    },
    {
      "name": "confirmed-anchor-readback.json",
      "role": "deterministic confirmed anchor"
    },
    {
      "name": "cases.json",
      "role": "case index and expected verdicts"
    },
    {
      "name": "expected.json",
      "role": "valid canonical strings and cryptographic outputs"
    }
  ],
  "verification": {
    "developerReleaseCheck": "node scripts/check-developer-release.mjs",
    "independentHashRunner": "python3 scripts/verify-receipt-commitment-vector.py",
    "networkRequired": false
  }
}
