{"format":"receipts-proof/1","hash":"13298adab406ebf5095964a409d97984e9fed9d17c209d2f894a229a479cdea1","provider":"demo-rsi-reversion","seq":166,"kind":"signal","issued_at":"2026-10-28T08:15:23.125Z","prev":"70b7d9c64a0e528bea5a3c9e44f8dfebabbfbf3489853f18912423f2a6554adb","body":{"issued_at":"2026-10-28T08:15:23.125Z","kind":"signal","nonce":"246a8f3cd40ca2ecf143d9b7cef15524","payload":{"entry":{"type":"market"},"expires_at":"2026-10-28T20:15:23.125Z","market":{"kind":"perp","symbol":"BTCUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"short","stop":"81200.2","targets":["81075.8","81013.6"]},"prev":"70b7d9c64a0e528bea5a3c9e44f8dfebabbfbf3489853f18912423f2a6554adb","provider":"demo-rsi-reversion","seq":166,"v":1},"signer":null,"sig":null,"batch":{"root":"2064baf8864c011a211dbb1179bd0a4acdffd3f314464ed2dfe343259c2863b3","index":0,"leaf_count":2,"proof":[{"side":"R","hash":"ec52b76e0c72ead910294cd4c42233a21a4af88646a1d9b6c8940093830e3492"}],"sealed_at":"2026-10-28T08:16:14.022Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":973527},"how_to_verify":["hash = sha256(\"receipts/v1\\n\" + canonical_json(body)), keys sorted, no whitespace.","body.prev must equal the hash of the same provider's event seq - 1 (64 zeros for seq 1).","If signer is set: sig must be a valid Ed25519 signature by signer over the UTF-8 bytes of \"receipts/v1/sig\\n\" + hash.","Fold the Merkle proof: node = sha256(0x01 || left || right); the result must equal batch.root.","Decode opentimestamps (base64) to a .ots file, then run: ots upgrade file.ots && ots verify -d <batch.root> file.ots","Or run: node scripts/verify-bundle.mjs bundle.json"]}