{"format":"receipts-proof/1","hash":"4270e3c38dd7aa8df6eb332f8a1d6c137164646fbc734b380b966e97cb5d7e62","provider":"demo-donchian-breakout","seq":14,"kind":"signal","issued_at":"2026-09-30T13:00:50.943Z","prev":"969287c9631619888c51b9b207f460d0a078fd04f047bfb1c54c7e3c14be56e2","body":{"issued_at":"2026-09-30T13:00:50.943Z","kind":"signal","nonce":"0e28444816dece855d878c0ee7fd949e","payload":{"entry":{"type":"market"},"expires_at":"2026-10-02T13:00:50.943Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: 20-bar Donchian breakout, 1h. Mechanical rule, not advice.","side":"long","stop":"2697.77","targets":["2778.37","2826.74"]},"prev":"969287c9631619888c51b9b207f460d0a078fd04f047bfb1c54c7e3c14be56e2","provider":"demo-donchian-breakout","seq":14,"v":1},"signer":null,"sig":null,"batch":{"root":"511a08af8fd233b0bdb25094d0e2256a88e651234da0a35c84cd6868d9758260","index":3,"leaf_count":5,"proof":[{"side":"L","hash":"969287c9631619888c51b9b207f460d0a078fd04f047bfb1c54c7e3c14be56e2"},{"side":"L","hash":"0e369758961de89dc26495ea24310d1532994023541a321ebcacb10020d6a3a3"},{"side":"R","hash":"c2db7456199b890a87767ba79c57d6261b3fe3291d20d3a760fc881243a18a2c"}],"sealed_at":"2026-09-30T13:01:41.091Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":969313},"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"]}