···30303131 let hash_equal = Atp.Cid.equal
3232 let hash_block data = Atp.Cid.v `Dag_cbor data
3333- let hash_to_bytes = Atp.Cid.to_raw_bytes
3434- let hash_of_bytes = Atp.Cid.of_raw_bytes
3535- let block_to_bytes s = s
3636- let block_of_bytes s = s
3733end)
38343935(* MST parse: decode DAG-CBOR MST node, extract entries *)
···195191 Cbort.Cbor.bytes (Atp.Cid.to_raw_bytes cid);
196192 Cbort.Cbor.bytes data;
197193 ])
198198- proof.blocks);
194194+ (List.of_seq (Irmin.Heap.to_seq proof.heap)));
199195 ]
200196 in
201197 let encoded_proof = Cbort.encode_string Cbort.any proof_cbor in
+8-5
lib/proof.ml
···75757676 let hash_equal = Atp.Cid.equal
7777 let hash_block data = Atp.Cid.v `Dag_cbor data
7878- let hash_to_bytes = Atp.Cid.to_raw_bytes
7979- let hash_of_bytes = Atp.Cid.of_raw_bytes
8080- let block_to_bytes s = s
8181- let block_of_bytes s = s
8278end)
83798480let mst_parse : S.parse =
···161157 items
162158 | None -> []
163159 in
164164- let proof = S.proof_of_blocks ~before ~after blocks in
160160+ let proof : S.proof =
161161+ {
162162+ before;
163163+ after;
164164+ heap =
165165+ Irmin.Heap.of_list ~equal:Atp.Cid.equal blocks;
166166+ }
167167+ in
165168 (* Verify by replaying the lookup *)
166169 match
167170 S.verify proof repo_schema (fun c ->