{"format":"receipts-proof/1","hash":"dc9ec4446adbc446f7411086b1f9b83d5fc56553e76def18694ae1f875356990","provider":"demo-rsi-reversion","seq":80,"kind":"signal","issued_at":"2026-10-03T21:19:57.403Z","prev":"c42899eba597ff15d4677dfec77fb56318c408989118c3a634da20dbd90c4dac","body":{"issued_at":"2026-10-03T21:19:57.403Z","kind":"signal","nonce":"94bc3189c438b124a87b6ce0be8f4689","payload":{"entry":{"type":"market"},"expires_at":"2026-10-04T09:19:57.403Z","market":{"kind":"perp","symbol":"BTCUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"long","stop":"84563","targets":["84712","84786.5"]},"prev":"c42899eba597ff15d4677dfec77fb56318c408989118c3a634da20dbd90c4dac","provider":"demo-rsi-reversion","seq":80,"v":1},"signer":null,"sig":null,"batch":{"root":"dc9ec4446adbc446f7411086b1f9b83d5fc56553e76def18694ae1f875356990","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-03T21:36:20.359Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":969767},"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"]}