{"format":"receipts-proof/1","hash":"3b63d18c3a402370c5b6908cbaf80982211759dfa2c2a52f04b2a10ae7cdd14c","provider":"demo-rsi-reversion","seq":106,"kind":"signal","issued_at":"2026-10-09T12:15:50.784Z","prev":"25019755958a064b52bbe2afb77d961cda4f956c5dcfb956261441d4856d6c36","body":{"issued_at":"2026-10-09T12:15:50.784Z","kind":"signal","nonce":"3e1d5914af8b27151f82f75dc6194b99","payload":{"entry":{"type":"market"},"expires_at":"2026-10-10T00:15:50.784Z","market":{"kind":"perp","symbol":"BTCUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"short","stop":"83504.9","targets":["82975.3","82710.6"]},"prev":"25019755958a064b52bbe2afb77d961cda4f956c5dcfb956261441d4856d6c36","provider":"demo-rsi-reversion","seq":106,"v":1},"signer":null,"sig":null,"batch":{"root":"3b63d18c3a402370c5b6908cbaf80982211759dfa2c2a52f04b2a10ae7cdd14c","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-09T12:16:50.808Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":970631},"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"]}