{
  "schemaVersion": 1,
  "checkedAt": "2026-10-21T21:39:59.359Z",
  "chainSnapshotAt": "2026-10-21T21:39:49.072Z",
  "cluster": "mainnet-beta",
  "genesis": "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d",
  "scope": "Dated read-only program and metadata snapshot. A null ProgramData upgrade authority means immutable program code; it does not remove existing administrative controls. Not an audit or live balance feed.",
  "transactionsSubmitted": 0,
  "repository": "https://github.com/battlejoose/soltoshidice-programs",
  "metadataSourceCommit": "f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657",
  "programs": [
    {
      "name": "bank",
      "program": "CuTLp7pDmNGkFgi4aoh8Ef1YSjc2BzECQRLzYqaoVWBR",
      "programData": "9HF5BoewAreFTHQgR6K3mvgkcG5cLy1mF4mnsUkHWBVM",
      "readSlot": 459784293,
      "lastDeploySlot": 459463816,
      "upgradeAuthority": null,
      "allocatedBytes": 862400,
      "sha256": "9c382bb7d94029c097ee2edc37ad6b142fde2aa2b3695887553fa3f8def77912",
      "zeroTrimmedSha256": "3b8f58ec23625a6cdb8d52698e690f004f23c19bb530e95d36de04f0040453cb",
      "zeroTrimmedBytes": 862385,
      "sourceCommit": "8c86ff6a501d385508fbe4953f7aa515f2054cb7",
      "sourceUrl": "https://github.com/battlejoose/soltoshidice-programs/tree/8c86ff6a501d385508fbe4953f7aa515f2054cb7",
      "solscan": "https://solscan.io/account/CuTLp7pDmNGkFgi4aoh8Ef1YSjc2BzECQRLzYqaoVWBR",
      "solscanIdl": "https://solscan.io/account/CuTLp7pDmNGkFgi4aoh8Ef1YSjc2BzECQRLzYqaoVWBR#programIdl",
      "verification": {
        "isVerified": true,
        "onChainHash": "3b8f58ec23625a6cdb8d52698e690f004f23c19bb530e95d36de04f0040453cb",
        "executableHash": "3b8f58ec23625a6cdb8d52698e690f004f23c19bb530e95d36de04f0040453cb",
        "lastVerifiedAt": "2026-10-21T02:37:51.850390",
        "statusUrl": "https://verify.osec.io/status/CuTLp7pDmNGkFgi4aoh8Ef1YSjc2BzECQRLzYqaoVWBR"
      },
      "idl": {
        "api": "https://idl-one.vercel.app/api/idl?programId=CuTLp7pDmNGkFgi4aoh8Ef1YSjc2BzECQRLzYqaoVWBR",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/bank.idl.json",
        "canonicalJsonSha256": "1ae3f19b4a59caab655dd8ce073579bcb1e9dd6c626bbd15afb32b3acb4480b6",
        "matchesPublished": true,
        "registryType": "pmp"
      },
      "security": {
        "api": "https://idl-one.vercel.app/api/security-txt?programId=CuTLp7pDmNGkFgi4aoh8Ef1YSjc2BzECQRLzYqaoVWBR",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/bank.security.json",
        "canonicalJsonSha256": "b7e15e3de9e1219a1bb916687d28f735a30af6905e7a23c2999a9e97b81e18a8",
        "matchesPublished": true,
        "registryType": "pmp"
      }
    },
    {
      "name": "poker",
      "program": "3EB6JJ2k1yPdg9qokViBdSWq4jaEVG4wiKbS8Pw3FmWQ",
      "programData": "3auvzmXxfJ5Me9rQ4SnAE6BK4fqmDPTV8BsWViYgmXqF",
      "readSlot": 459784300,
      "lastDeploySlot": 457004605,
      "upgradeAuthority": "5SD2yUKBHkUhpC7rHzEqLgYKHrkNoyYymNkDXmFaoJ1Y",
      "allocatedBytes": 1515416,
      "sha256": "1de0cf017069e97200bd0a4be9ec9c2cf1f0a79aeb95a74d182b1f4d3b214b6c",
      "zeroTrimmedSha256": "085eb68e5d157e35664dfb0943a85fd7216c5fa288e4c57b9eb7d0b7ddc66245",
      "zeroTrimmedBytes": 1511473,
      "sourceCommit": "d2c0b0b7fd14b727d925b137f64ee910261c9f3c",
      "sourceUrl": "https://github.com/battlejoose/soltoshidice-programs/tree/d2c0b0b7fd14b727d925b137f64ee910261c9f3c",
      "solscan": "https://solscan.io/account/3EB6JJ2k1yPdg9qokViBdSWq4jaEVG4wiKbS8Pw3FmWQ",
      "solscanIdl": "https://solscan.io/account/3EB6JJ2k1yPdg9qokViBdSWq4jaEVG4wiKbS8Pw3FmWQ#programIdl",
      "verification": {
        "isVerified": true,
        "onChainHash": "085eb68e5d157e35664dfb0943a85fd7216c5fa288e4c57b9eb7d0b7ddc66245",
        "executableHash": "085eb68e5d157e35664dfb0943a85fd7216c5fa288e4c57b9eb7d0b7ddc66245",
        "lastVerifiedAt": "2026-10-17T14:21:07.017456",
        "statusUrl": "https://verify.osec.io/status/3EB6JJ2k1yPdg9qokViBdSWq4jaEVG4wiKbS8Pw3FmWQ"
      },
      "idl": {
        "api": "https://idl-one.vercel.app/api/idl?programId=3EB6JJ2k1yPdg9qokViBdSWq4jaEVG4wiKbS8Pw3FmWQ",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/poker.idl.json",
        "canonicalJsonSha256": "0bab19e43d2f5b72f8f79d721cc4e20c949c97ad3ac4dc606963812c2c78d505",
        "matchesPublished": true,
        "registryType": "pmp"
      },
      "security": {
        "api": "https://idl-one.vercel.app/api/security-txt?programId=3EB6JJ2k1yPdg9qokViBdSWq4jaEVG4wiKbS8Pw3FmWQ",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/poker.security.json",
        "canonicalJsonSha256": "4ba5f0f30baeac9c8d9f9c74d8288550264951532ff77d82cab0972ce6ba9a08",
        "matchesPublished": true,
        "registryType": "pmp"
      }
    },
    {
      "name": "fights",
      "program": "5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q",
      "programData": "EgXHy4FtawhR5n1ByyYg3Tnnp53pZmcBAGdgS419roeo",
      "readSlot": 459784309,
      "lastDeploySlot": 446664066,
      "upgradeAuthority": "5SD2yUKBHkUhpC7rHzEqLgYKHrkNoyYymNkDXmFaoJ1Y",
      "allocatedBytes": 183432,
      "sha256": "ea634b57ebf7cc3555626d5fa26fcdcca2a82fac73846219382544e399f0be32",
      "zeroTrimmedSha256": "a050bde1ebadfd813cbc3a40c5a683420fa635b4a728f1145f6ad035b25dce49",
      "zeroTrimmedBytes": 183417,
      "sourceCommit": "d2c0b0b7fd14b727d925b137f64ee910261c9f3c",
      "sourceUrl": "https://github.com/battlejoose/soltoshidice-programs/tree/d2c0b0b7fd14b727d925b137f64ee910261c9f3c",
      "solscan": "https://solscan.io/account/5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q",
      "solscanIdl": "https://solscan.io/account/5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q#programIdl",
      "verification": {
        "isVerified": true,
        "onChainHash": "a050bde1ebadfd813cbc3a40c5a683420fa635b4a728f1145f6ad035b25dce49",
        "executableHash": "a050bde1ebadfd813cbc3a40c5a683420fa635b4a728f1145f6ad035b25dce49",
        "lastVerifiedAt": "2026-10-17T14:19:37.815466",
        "statusUrl": "https://verify.osec.io/status/5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q"
      },
      "idl": {
        "api": "https://idl-one.vercel.app/api/idl?programId=5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/fights.idl.json",
        "canonicalJsonSha256": "11395a19caff04c0a0fce23a9e54f34ba70972e35c8178ac3caa3951a2130566",
        "matchesPublished": true,
        "registryType": "pmp"
      },
      "security": {
        "api": "https://idl-one.vercel.app/api/security-txt?programId=5PrHPCCbKpW4SvBZfXmt23RKMaShSM4XGTJdBh8qpw3q",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/fights.security.json",
        "canonicalJsonSha256": "f341b3d2d11ec81f22dad08ceff7dbd713ab77d93ca1e1abec13c1b79723fb48",
        "matchesPublished": true,
        "registryType": "pmp"
      }
    },
    {
      "name": "rps",
      "program": "96hGHn4JD3AyzXvNPdx4RyNtS8y7sQ5NizagMsdMAXhG",
      "programData": "59ApPSxdhNBDtRuuwKnUBH7TjtmQEW2WVPTxEPrgMfKi",
      "readSlot": 459784316,
      "lastDeploySlot": 446768753,
      "upgradeAuthority": "5SD2yUKBHkUhpC7rHzEqLgYKHrkNoyYymNkDXmFaoJ1Y",
      "allocatedBytes": 179168,
      "sha256": "dd04422c966b04ae13d5953e18eae60b028875e945e655beb7bf6d8aeee63a4e",
      "zeroTrimmedSha256": "fd92af695b42e2b8fde87026e7c5c03a4f4c9457686ae843c55c2c25e288d90c",
      "zeroTrimmedBytes": 179153,
      "sourceCommit": "d2c0b0b7fd14b727d925b137f64ee910261c9f3c",
      "sourceUrl": "https://github.com/battlejoose/soltoshidice-programs/tree/d2c0b0b7fd14b727d925b137f64ee910261c9f3c",
      "solscan": "https://solscan.io/account/96hGHn4JD3AyzXvNPdx4RyNtS8y7sQ5NizagMsdMAXhG",
      "solscanIdl": "https://solscan.io/account/96hGHn4JD3AyzXvNPdx4RyNtS8y7sQ5NizagMsdMAXhG#programIdl",
      "verification": {
        "isVerified": true,
        "onChainHash": "fd92af695b42e2b8fde87026e7c5c03a4f4c9457686ae843c55c2c25e288d90c",
        "executableHash": "fd92af695b42e2b8fde87026e7c5c03a4f4c9457686ae843c55c2c25e288d90c",
        "lastVerifiedAt": "2026-10-17T14:17:50.631183",
        "statusUrl": "https://verify.osec.io/status/96hGHn4JD3AyzXvNPdx4RyNtS8y7sQ5NizagMsdMAXhG"
      },
      "idl": {
        "api": "https://idl-one.vercel.app/api/idl?programId=96hGHn4JD3AyzXvNPdx4RyNtS8y7sQ5NizagMsdMAXhG",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/rps.idl.json",
        "canonicalJsonSha256": "7dea381ae63de1720a8c34efd7c677a7b662ae4e82ef4b8b9a73a7aeed2ff838",
        "matchesPublished": true,
        "registryType": "pmp"
      },
      "security": {
        "api": "https://idl-one.vercel.app/api/security-txt?programId=96hGHn4JD3AyzXvNPdx4RyNtS8y7sQ5NizagMsdMAXhG",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/rps.security.json",
        "canonicalJsonSha256": "59b02ae97e819f4422b104a234b837f42ac56272a9461a0d3a429182b002923b",
        "matchesPublished": true,
        "registryType": "pmp"
      }
    },
    {
      "name": "perps",
      "program": "7YWUnPaP5tQjJTC5kZu235P5Qix2VpoJk5rTMgkXeCw7",
      "programData": "GngBxRxp2nvs7kHSTfjxfL9jgt7Abt3wHw4cUV92TEon",
      "readSlot": 459784323,
      "lastDeploySlot": 459534877,
      "upgradeAuthority": "GqJwW3CF9XfopAmCP9zNKN1BvVo3aSPQHmfHdrGUeTzA",
      "allocatedBytes": 2052976,
      "sha256": "07578b1054b56d1dd34c2e2d1ee47405fcb2fec5f97e6aee8675d6be4fdc4966",
      "zeroTrimmedSha256": "4aafed51d5e8ec0e12ec2c9559933ca5b319cec85d48047a43dc0dc3bc3bc6cd",
      "zeroTrimmedBytes": 2052961,
      "sourceCommit": "8821a2a604750eafdc27742893f73a5598edad04",
      "sourceUrl": "https://github.com/battlejoose/soltoshidice-programs/tree/8821a2a604750eafdc27742893f73a5598edad04",
      "releaseEvidence": "https://github.com/battlejoose/soltoshidice-programs/blob/07fd6c6/evidence/perps-spot-payout-release-2026-10-21.json",
      "solscan": "https://solscan.io/account/7YWUnPaP5tQjJTC5kZu235P5Qix2VpoJk5rTMgkXeCw7",
      "solscanIdl": "https://solscan.io/account/7YWUnPaP5tQjJTC5kZu235P5Qix2VpoJk5rTMgkXeCw7#programIdl",
      "verification": {
        "isVerified": true,
        "onChainHash": "4aafed51d5e8ec0e12ec2c9559933ca5b319cec85d48047a43dc0dc3bc3bc6cd",
        "executableHash": "4aafed51d5e8ec0e12ec2c9559933ca5b319cec85d48047a43dc0dc3bc3bc6cd",
        "lastVerifiedAt": "2026-10-21T06:58:49.415391",
        "statusUrl": "https://verify.osec.io/status/7YWUnPaP5tQjJTC5kZu235P5Qix2VpoJk5rTMgkXeCw7"
      },
      "idl": {
        "api": "https://idl-one.vercel.app/api/idl?programId=7YWUnPaP5tQjJTC5kZu235P5Qix2VpoJk5rTMgkXeCw7",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/8821a2a604750eafdc27742893f73a5598edad04/metadata/perps.idl.json",
        "canonicalJsonSha256": "6df60f50d7033d33dced9087726e0bb12e4579df56c6df1dfb956ec7f8d55e05",
        "matchesPublished": true,
        "registryType": "pmp"
      },
      "security": {
        "api": "https://idl-one.vercel.app/api/security-txt?programId=7YWUnPaP5tQjJTC5kZu235P5Qix2VpoJk5rTMgkXeCw7",
        "publicJson": "https://raw.githubusercontent.com/battlejoose/soltoshidice-programs/f17a2dd1aa3de1b80e7b4ff8c1593a644a0b0657/metadata/perps.security.json",
        "canonicalJsonSha256": "ceebed7b49193bdd73c27b8843471fc23144a0e5217f02897ad8053ca253c60b",
        "matchesPublished": true,
        "registryType": "pmp"
      }
    },
    {
      "name": "brackets",
      "program": "EmAQwVNSBkKUDPziofdhSNdD4HYacQSYyfuDn7c4QKe2",
      "programData": "HQGK9hdu5fXm19wSumDE8EiqcnwoxdVcB2nK8c2P92vT",
      "readSlot": 459784332,
      "lastDeploySlot": 459778651,
      "upgradeAuthority": "5SD2yUKBHkUhpC7rHzEqLgYKHrkNoyYymNkDXmFaoJ1Y",
      "allocatedBytes": 208080,
      "sha256": "c5749486b42a375f3fb985251cad65a172ce7262e3bd02ac443301bcda6fc9d4",
      "zeroTrimmedSha256": "aebe93fa60ba5c9d88f65739ef30b8eec44e3c6df58ccb5e7de673ff7ed4665e",
      "zeroTrimmedBytes": 208065,
      "sourceCommit": "dc468fb446450aa86f525c2ae922e1733a687138",
      "sourceUrl": "https://github.com/battlejoose/soltoshidice-programs/tree/dc468fb446450aa86f525c2ae922e1733a687138",
      "solscan": "https://solscan.io/account/EmAQwVNSBkKUDPziofdhSNdD4HYacQSYyfuDn7c4QKe2",
      "solscanIdl": null,
      "verification": {
        "isVerified": true,
        "onChainHash": "aebe93fa60ba5c9d88f65739ef30b8eec44e3c6df58ccb5e7de673ff7ed4665e",
        "executableHash": "aebe93fa60ba5c9d88f65739ef30b8eec44e3c6df58ccb5e7de673ff7ed4665e",
        "lastVerifiedAt": "2026-10-21T21:38:52.522369",
        "statusUrl": "https://verify.osec.io/status/EmAQwVNSBkKUDPziofdhSNdD4HYacQSYyfuDn7c4QKe2"
      },
      "idl": null,
      "security": null,
      "metadataStatus": "Executable source verified. Canonical IDL and security metadata are not published for this separate bracket program.",
      "releaseEvidence": "https://github.com/battlejoose/soltoshidice-programs/blob/main/brackets/verification.json"
    }
  ],
  "limitations": [
    "Immutable programs (ProgramData authority null): bank. Programs retaining upgrade authority: poker, fights, rps, perps, brackets.",
    "IDL publication describes an interface; it does not prove safety or randomness.",
    "Reproducible builds establish code identity, not absence of vulnerabilities.",
    "Native Codama IDLs are decode-only; account roles are not a transaction-building SDK."
  ]
}
