{"format":"receipts-proof/1","hash":"578b57cc28ccd3b8b971b6848d03ffc64c290b26b4f63287490940022777acff","provider":"demo-rsi-reversion","seq":51,"kind":"signal","issued_at":"2026-09-29T16:00:39.772Z","prev":"cdf0db0d5b055021d660147fad30a28c6a4d14c6bc511a02ec341b423477e747","body":{"issued_at":"2026-09-29T16:00:39.772Z","kind":"signal","nonce":"aff2bb5de6ad29fad56867ed3e153d41","payload":{"entry":{"type":"market"},"expires_at":"2026-09-30T04:00:39.772Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"long","stop":"2658.24","targets":["2687.4","2701.98"]},"prev":"cdf0db0d5b055021d660147fad30a28c6a4d14c6bc511a02ec341b423477e747","provider":"demo-rsi-reversion","seq":51,"v":1},"signer":null,"sig":null,"batch":{"root":"578b57cc28ccd3b8b971b6848d03ffc64c290b26b4f63287490940022777acff","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-09-29T16:01:29.803Z","opentimestamps":"AE9wZW5UaW1lc3RhbXBzAABQcm9vZgC/ieLohOiSlAEIV4tXzCjM07i5cbaEjQP/xkwpCya09jKHSQlAAid3rP//8AiYtwf8OOR20wjwEHqTsDlTlPS7ib4/CDN+PIUI8SCI16oY4dldIZ0AhA4SZHSKSHuSbF4cNKFcEhFgX3SDOQjwIFKYS8WQloZX8iJMyYhrlnNTo+BYRmbRiNeq/ehmNAlqCPAgIaKwus8XLdRc36Zz9BNob8+wNY3bHbrZPhxycQnrgvQI8QRqu+Db8AjEb7NvVdqUyQjwIJTwj5UI/FB92TdNEXv3zRqegtKsmtzx8yXfxXBv7zwmCPAgYoG9xHnSw/jZEKX6JsAbuwVrkQ2JvEw8p7RZ1v4gHtAI8SAKDiIuzNnqusCfx3bEFEn58BIEDQz8xNX5rAluDhP5XQjxIE3SaSBvFE2ORBR1zw2AgVEeMily07NfVhiegPLfGQCwCPAgiHeqt8Llue3NuhnBa1z4vyZfm4ncjUgoKC/ESMXvMjYI8CCvhNp5qM8OJw1YMVMArBBY0qNrTDTQ3isse8R/1mYSTAjwICDDJvlh4j1Mh5ljpHU9hoUYF2GRNyepKx46IKvEkCR1CPAgtZyf6c74IQqG/QU+7InlOboaMgE+Qrd5cF8xvIbM6iQI8SDZwugEDVzUCuBvcsSqIEnBXVbgQfT+f425aZknaiXKEgjwIC5waRkPkpUiOHcBTPgRaJ100Hiv5Pwe0BaRkT0vTM5MCPAg2U5sWHNbQsRtACP6mnLZDxwAnZR29zweHAAEK8UYeawI8VkBAAAAAXezdQ0iBcBgZKe/jku8UWfhmoorjHFci0efKScDFxdyAAAAAAD+////AigLAQAAAAAAFgAUXRcobonBVn8Ydwr+U5sLfuKhZCkAAAAAAAAAACJqIPAE3MkOAAgI8SBd90UMmLQ4WWvJvdAC0+cSbnittYTlAxC3gJoFvnN2NwgI8CBrPyl6YuzozOphTJnIshiIy8eyZjtmn36lEGrwptx8bggI8SBsCrz0pBuwKDMvIieV4ZvSGqqwiByp/+EQaojMDzUJZggI8CAt2w15ilz8ROxNcR2vHOxhPC1302tLhPng6CrGl0WbqAgI8SBZUhe7NdZvYTT+SXcqa3dt/qAqElcWZgg3D10Gv1xDnQgI8SAOLkKS30AkdR2C7kn9IR6s89H3yO41BpKO9Bkk7sNknQgI8CAKK/gU248vUzk3YupEh8k3pTTOjeZrUOxHt28p12VFuggI8CApaAQyZvNfH9Wg+qtufzb6xmgPE1ywHJZuMK7hG1pfFggI8SDiMvrmPDm0mta6/0i6z6VCgbh8HJiGyPL1Wp2sjOldAggI8SCnwLCmdUsTizneq5ntN8n7yu23TY4NITEW8LYMqsoLPggI8SDEDAJ0n6JsRJ3W9hTv/VkFFmVumhkOY5nnhEHM/ZmUFQgI8SB68fuXSWd1DvIjMHaLwv3XdQSdYll4XkoNFMIBeBWWBggI8CDTwW0ZsXF8aEu6BA5ZNmA7jhP8bkN5+kVwHtxgZNJV+AgIAAWIlg1z1xkBA92TO//wCAMs8rMOZRIECPAQ1eG3J6jwMiSMs08aoGIPrQjxIFCsKpER0O0Bp4hUHyZoWC4E67jsbeEHO+Skru70HNpgCPEEarvg2vAILK4QA+okBR0Ag9/jDS75DI4sK2h0dHBzOi8vYm9iLmJ0Yy5jYWxlbmRhci5vcGVudGltZXN0YW1wcy5vcmfwENqW5omtjrE0dYEIrIecKssI8SCkL66txyEK4Zaqk4J8UhmA7xDTslzH5b8nVxysXFfjdwjxIPEFyoy4m26FkH0PAiWZ8KZ5LZSR44ZNvZIQlU77cRVzCPEEarvg2vAIvamylhwRPwoAg9/jDS75DI4pKGh0dHBzOi8vZmlubmV5LmNhbGVuZGFyLmV0ZXJuaXR5d2FsbC5jb20=","chain_anchor":null,"bitcoin_block":969181},"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"]}