RISC-V: Exercise PVM during verification step
Closes RV-361
Closes RV-369
What
Adds a step to the proof verification procedures of NodePvm (used in Rollup Node) and the PvmStepper (used in Sandbox) to exercise the PVM such that it is advanced one step or fed input.
Why
A proof contains a partial description of an initial state and the hash of the final state. After we have instantiated the partial PVM state from the proof, we need to transition to the next state. Otherwise, we would not be able to check the final state hash against the claimed state hash in the proof.
Manually Testing
make -C src/riscv all
Benchmarking
No performance impact has been identified.
Tasks for the Author
-
Link all Linear issues related to this MR using magic words (e.g. part of, relates to, closes). -
Eliminate dead code and other spurious artefacts introduced in your changes. -
Document new public functions, methods and types. -
Make sure the documentation for updated functions, methods, and types is correct. -
Add tests for bugs that have been fixed. -
Put in reasonable effort to ensure that CI will pass. make -C src/riscvdune build src/lib_riscvdune build src/rust_deps
-
Benchmark performance and populate the table above if needed. -
Explain changes to regression test captures when applicable. -
Write commit messages to reflect the changes they're about. -
Self-review your changes to ensure they are high-quality. -
Complete all of the above before assigning this MR to reviewers.
Edited by Ole Krüger