{"format":"receipts-proof/1","hash":"d615d72a8ac2855856311bbbdc4c8fd6375f4fe4d603b4b9f9941bc87c64d1d0","provider":"demo-donchian-breakout","seq":56,"kind":"signal","issued_at":"2026-10-20T23:00:47.054Z","prev":"faadc5b02c000ce123906912850a9f48cb2a3a933fcbf111746fa43cca3811af","body":{"issued_at":"2026-10-20T23:00:47.054Z","kind":"signal","nonce":"43a7975156456e944948655dfbadf802","payload":{"entry":{"type":"market"},"expires_at":"2026-10-22T23:00:47.054Z","market":{"kind":"perp","symbol":"BNBUSDT","venue":"binance-usdm"},"note":"Demo bot: 20-bar Donchian breakout, 1h. Mechanical rule, not advice.","side":"long","stop":"735.65","targets":["754.5","765.81"]},"prev":"faadc5b02c000ce123906912850a9f48cb2a3a933fcbf111746fa43cca3811af","provider":"demo-donchian-breakout","seq":56,"v":1},"signer":null,"sig":null,"batch":{"root":"d615d72a8ac2855856311bbbdc4c8fd6375f4fe4d603b4b9f9941bc87c64d1d0","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-20T23:01:45.392Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":972391},"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"]}