{"format":"receipts-proof/1","hash":"1df6844ef23eebde6ed76ffd5fea07d9b89394794bf415b80174afe11b78814a","provider":"demo-rsi-reversion","seq":153,"kind":"signal","issued_at":"2026-10-15T02:30:20.552Z","prev":"13b654213cc656fc86d99926fd2516b8f962405a920654a105dbb5bb46da7ba2","body":{"issued_at":"2026-10-15T02:30:20.552Z","kind":"signal","nonce":"a3dc0b69d5f341a5a40e774656dd969b","payload":{"entry":{"type":"market"},"expires_at":"2026-10-15T14:30:20.552Z","market":{"kind":"perp","symbol":"XRPUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"long","stop":"1.2856","targets":["1.3124","1.3259"]},"prev":"13b654213cc656fc86d99926fd2516b8f962405a920654a105dbb5bb46da7ba2","provider":"demo-rsi-reversion","seq":153,"v":1},"signer":null,"sig":null,"batch":{"root":"280c5afd1b220dbdfcc262e54babcf34ae1cef85b070576bd83f57ca49190197","index":1,"leaf_count":2,"proof":[{"side":"L","hash":"13b654213cc656fc86d99926fd2516b8f962405a920654a105dbb5bb46da7ba2"}],"sealed_at":"2026-10-15T02:30:43.447Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":971500},"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"]}