{"format":"receipts-proof/1","hash":"15913d69b8aded964a68f223dc2e301f751c66206125243029933b0ae5d21159","provider":"demo-rsi-reversion","seq":113,"kind":"signal","issued_at":"2026-10-12T00:57:38.388Z","prev":"98f9caa4f7e95af46539606cb4b4b4cb072b3d1de44e5f47b279c7d5ae5f541c","body":{"issued_at":"2026-10-12T00:57:38.388Z","kind":"signal","nonce":"3e8f5ef8ddd92987f81480c94c8d8cda","payload":{"entry":{"type":"market"},"expires_at":"2026-10-12T12:57:38.388Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"short","stop":"2547.58","targets":["2538.4","2533.82"]},"prev":"98f9caa4f7e95af46539606cb4b4b4cb072b3d1de44e5f47b279c7d5ae5f541c","provider":"demo-rsi-reversion","seq":113,"v":1},"signer":null,"sig":null,"batch":{"root":"15913d69b8aded964a68f223dc2e301f751c66206125243029933b0ae5d21159","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-12T01:15:13.398Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":971020},"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"]}