{
  "schema": "raven-receipt-v1-test-vector/1",
  "purpose": "Unit-test your Raven receipt-v1 verifier against a real production-signed receipt (POST /receipt/v1). If your implementation verifies this vector, it verifies production receipts. The legacy v2 attestation vector remains at receipt-test-vector.json.",
  "format": {
    "endpoint": "POST /receipt/v1",
    "signingDomain": "raven-receipt",
    "signingVersion": "v1"
  },
  "receipt": {
    "chain": "solana-mainnet",
    "mintAddress": "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
    "tokenProgramAddress": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
    "slot": 429014958,
    "timestamp": "2026-06-26T11:46:30.924Z",
    "rulesVersion": "raven-rules@1.0.0",
    "findingTaxonomyVersion": "raven-taxonomy@1.0.0",
    "scopeChecksPerformed": [
      "freeze_authority",
      "mint_authority",
      "token_program_tier"
    ],
    "scopeChecksNotPerformed": [
      "deployer_history",
      "liquidity_depth",
      "top_holders"
    ],
    "coverageGaps": [
      "deployer_outcomes",
      "liquidity",
      "top_holders"
    ],
    "findings": [
      {
        "code": "venue.infrastructure_tier_immutable",
        "source": "token_program_dependency_evidence",
        "subject": "token_program_dependency",
        "evidence": {
          "tokenProgramAddress": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
          "dependencyKind": "known_policy_program",
          "programFamilyName": "SPL Token Program",
          "classification": "immutable_infrastructure",
          "phase0IdentityStatus": "verified_present",
          "phase0MutabilityStatus": "immutable",
          "upgradeAuthority": null
        }
      }
    ],
    "interpretations": [
      {
        "code": "venue.infrastructure_tier_immutable",
        "text": "The token depends on immutable (non-upgradeable) programs.",
        "lang": "en"
      }
    ],
    "maxAgeSeconds": 300,
    "disclaimer": "This attestation reports on-chain state within the defined scope at the stated slot. It is not a prediction, recommendation, or declaration of safety.",
    "payloadHash": "sha256:40580238683308ab92a52a4b0b63290f5adec1cd0918ce96ec1b4995b3c21ccc",
    "receiptId": "raven-receipt-v1:sha256:40580238683308ab92a52a4b0b63290f5adec1cd0918ce96ec1b4995b3c21ccc",
    "signature": "NJq2eNtjH89lvT+yYlSy7QPiYYi6thUHkcNkQ+4vruGkozkDkyDYtg2MgSc2u0dbnf/273ltbk2QY3Xf4EbnDA==",
    "signerPublicKey": "MCowBQYDK2VwAyEASGJt4Ilx2Z6g0BVC1VQIfaUcV0nr8WB1J45/8vfje6w="
  },
  "expected": {
    "payloadHash": "sha256:40580238683308ab92a52a4b0b63290f5adec1cd0918ce96ec1b4995b3c21ccc",
    "receiptId": "raven-receipt-v1:sha256:40580238683308ab92a52a4b0b63290f5adec1cd0918ce96ec1b4995b3c21ccc",
    "signature_verifies": "ed25519_verify(signerPublicKey, utf8(canonicalJson({domain:\"raven-receipt\",version:\"v1\",payloadHash})), signature) == true",
    "signerPublicKey_matches_keyId": "rvk_c2997e90215279c2"
  },
  "trust": "Verifying this vector proves signature validity only. Signer trust is a separate decision: pin the expected Raven key locally and require signerPublicKey to match your pin. GET /pubkey, this site, and the public GitHub repository are cross-checks against your pin, never the source of it.",
  "disclaimer": "Historical receipt for verifier testing. Raven signs evidence; not financial advice."
}
