diff --git a/src/proto_alpha/lib_sc_rollup_node/riscv_pvm.ml b/src/proto_alpha/lib_sc_rollup_node/riscv_pvm.ml index 51795ff2eddaba62222791e48db848e1ecfd7875..3c0cc96baca124bb12fa3dbebb5ffd6b29003d57 100644 --- a/src/proto_alpha/lib_sc_rollup_node/riscv_pvm.ml +++ b/src/proto_alpha/lib_sc_rollup_node/riscv_pvm.ml @@ -69,7 +69,8 @@ end module PVM : Sc_rollup.PVM.S with type state = tree - and type context = Riscv_context.rw_index = struct + and type context = Riscv_context.rw_index + and type proof = Backend.proof = struct let parse_boot_sector s = Some s let pp_boot_sector fmt s = Format.fprintf fmt "%s" s @@ -93,12 +94,9 @@ module PVM : type proof = Backend.proof - let proof_encoding = - Data_encoding.( - conv_with_guard - (function (_ : proof) -> ()) - (fun _ -> Error "proofs not implemented") - unit) + let proof_encoding : Backend.proof Data_encoding.t = + let open Data_encoding in + conv_with_guard Backend.serialise_proof Backend.deserialise_proof bytes let proof_start_state proof = Backend.proof_start_state proof diff --git a/src/riscv/lib/src/ocaml_api.rs b/src/riscv/lib/src/ocaml_api.rs index 6c56851e4cdb54471bc4774bf5596cc81fdc3182..f0688f4dc01f7b366162c0a2b87c37e8ab3004c0 100644 --- a/src/riscv/lib/src/ocaml_api.rs +++ b/src/riscv/lib/src/ocaml_api.rs @@ -31,6 +31,7 @@ use crate::state_backend::ManagerReadWrite; use crate::state_backend::hash::Hash; use crate::state_backend::owned_backend::Owned; use crate::state_backend::proof_backend::proof; +use crate::state_backend::proof_backend::proof::deserialise_proof; use crate::state_backend::proof_backend::proof::serialise_proof; use crate::storage; use crate::storage::StorageError; @@ -552,8 +553,8 @@ pub unsafe fn octez_riscv_serialise_proof(proof: Pointer) -> ocaml::Value #[ocaml::func] #[ocaml::sig("bytes -> (proof, string) Result.t")] -pub fn octez_riscv_deserialise_proof(_bytes: &[u8]) -> Result, String> { - todo!() +pub fn octez_riscv_deserialise_proof(bytes: &[u8]) -> Result, String> { + todo!("RV-555") } #[ocaml::func]