{"format":"receipts-proof/1","hash":"baf456274c1f521eea77e0db4fd25d0f475b499e5b19bca1f5b89b31455cd03f","provider":"demo-macd-momentum","seq":57,"kind":"signal","issued_at":"2026-10-07T07:55:11.242Z","prev":"d91c7283de5d41369bb4eaf204f294f77bae7bafa2ec8cd42604b6e84727c2f3","body":{"issued_at":"2026-10-07T07:55:11.242Z","kind":"signal","nonce":"136da3f8eb41baecaf51609885b2a165","payload":{"entry":{"type":"market"},"expires_at":"2026-10-07T19:55:11.242Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: MACD cross with EMA(100) trend filter, 5m. Mechanical rule, not advice.","side":"short","stop":"2618.58","targets":["2611.06","2605.43"]},"prev":"d91c7283de5d41369bb4eaf204f294f77bae7bafa2ec8cd42604b6e84727c2f3","provider":"demo-macd-momentum","seq":57,"v":1},"signer":null,"sig":null,"batch":{"root":"baf456274c1f521eea77e0db4fd25d0f475b499e5b19bca1f5b89b31455cd03f","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-10-07T07:56:11.328Z","opentimestamps":"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","chain_anchor":null,"bitcoin_block":970313},"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"]}