{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://capp.local/schemas/capp.solana-witness.transaction-evidence.v1.schema.json",
  "title": "capp.solana-witness.transaction-evidence.v1",
  "type": "object",
  "required": [
    "protocol",
    "operationId",
    "attemptId",
    "network",
    "signature",
    "transactionDigest",
    "observedTransactionDigest",
    "messageDigest",
    "genesisHash",
    "slot",
    "wireVerified",
    "simulated",
    "evidenceKind",
    "evidenceDigest"
  ],
  "properties": {
    "protocol": {
      "const": "capp.solana-witness.transaction-evidence.v1"
    },
    "operationId": {
      "type": "string",
      "minLength": 1
    },
    "attemptId": {
      "type": "string",
      "minLength": 1
    },
    "network": {
      "enum": [
        "devnet",
        "testnet",
        "mainnet-beta"
      ]
    },
    "signature": {
      "type": "string",
      "minLength": 1
    },
    "transactionDigest": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "observedTransactionDigest": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "messageDigest": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "genesisHash": {
      "type": [
        "string",
        "null"
      ]
    },
    "slot": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "wireVerified": {
      "const": true
    },
    "simulated": {
      "const": false
    },
    "evidenceKind": {
      "const": "rpc-observed-exact-transaction"
    },
    "evidenceDigest": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    }
  },
  "additionalProperties": true
}
