{"format":"receipts-proof/1","hash":"2377452ca6456842f0eb72c89242be47f9b7deac9744b043cffdfc98bd584a76","provider":"demo-rsi-reversion","seq":149,"kind":"signal","issued_at":"2026-10-14T14:25:36.844Z","prev":"851a2b8cb9fadd73528394e6d24f35504c463a11598036e071f33b9e178667d4","body":{"issued_at":"2026-10-14T14:25:36.844Z","kind":"signal","nonce":"de4d06c83bf4c59b6f2b408789a7d41c","payload":{"entry":{"type":"market"},"expires_at":"2026-10-15T02:25:36.844Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"long","stop":"2419.07","targets":["2450.29","2465.9"]},"prev":"851a2b8cb9fadd73528394e6d24f35504c463a11598036e071f33b9e178667d4","provider":"demo-rsi-reversion","seq":149,"v":1},"signer":null,"sig":null,"batch":{"root":"2377452ca6456842f0eb72c89242be47f9b7deac9744b043cffdfc98bd584a76","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-14T14:25:38.777Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":971416},"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"]}