Module Octez_riscv_nds_disk

On-disk implementation of the RISC-V new durable storage.

All data is persisted to disk via a repository. State survives process restarts. This variant is used by the rollup node for production storage.

module Repo : sig ... end

On-disk repository handle.

Proof objects for the on-disk durable storage.

module Normal : sig ... end

Normal mode: registry and database operations.

Prove mode: registry, database, and proof lifecycle.

Verify mode: registry, database, and verify entry point.

Typed mode-switching

These constructors extend the common Nds.tag type with this backend's three mode tags, refining the wrapped registry type to a concrete on-disk variant. They let backend-aware callers recover the concrete Registry.t from an opaque Nds.t via the unwrap_* helpers below.

val unwrap_normal : Octez_riscv_nds_common.Nds.t -> Normal.Registry.t option

unwrap_normal nds returns Some r if nds was wrapped with Normal_tag, None otherwise. Callers that need the concrete Normal.Registry.t (e.g. to call Prove.start_proof) use this helper to escape the existential.

val unwrap_prove : Octez_riscv_nds_common.Nds.t -> Prove.Registry.t option

unwrap_prove nds returns Some r if nds was wrapped with Prove_tag, None otherwise.

val unwrap_verify : Octez_riscv_nds_common.Nds.t -> Verify.Registry.t option

unwrap_verify nds returns Some r if nds was wrapped with Verify_tag, None otherwise.