{"format":"receipts-proof/1","hash":"2d5d9edd503d6f2f37a8f89ff466af81da2ac9926de4e0054e2fca975df72919","provider":"demo-rsi-reversion","seq":92,"kind":"signal","issued_at":"2026-10-07T09:25:12.343Z","prev":"f1325e2f4fcc772329ae2fd4d395e6357d1053efbc080f4ad0bd1da3d1a5c831","body":{"issued_at":"2026-10-07T09:25:12.343Z","kind":"signal","nonce":"42bc0b9de549ec5bb7e1b8901b3e77f6","payload":{"entry":{"type":"market"},"expires_at":"2026-10-07T21:25:12.343Z","market":{"kind":"perp","symbol":"DOGEUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"long","stop":"0.0897","targets":["0.09036","0.09068"]},"prev":"f1325e2f4fcc772329ae2fd4d395e6357d1053efbc080f4ad0bd1da3d1a5c831","provider":"demo-rsi-reversion","seq":92,"v":1},"signer":null,"sig":null,"batch":{"root":"20fe3d0451ca768e52ea310f39590a32e1757f7c7af6dc0d5d288633789515db","index":1,"leaf_count":2,"proof":[{"side":"L","hash":"f1325e2f4fcc772329ae2fd4d395e6357d1053efbc080f4ad0bd1da3d1a5c831"}],"sealed_at":"2026-10-07T09:26:13.724Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":970326},"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"]}