PROTO/RISC-V: Protocol implementation for the RISC-V PVM
Closes RV-320
What
Implement the riscv PVM inside the protocol. Specifically, change the dummy implementation of Alpha_context.Sc_rollup.Sc_rollup_riscv
from a dummy one to a proper one that uses a dummy module from the protocol environment.
The protocol environment will import and make available the required functionality in a follow up MR, see !15918
Why
Integrate the required riscv pvm functionalities in the protocol, (e.g. proof verification, obtaining the hash of a state, etc)
How
Change dummy implementation in proto_alpha/lib_protocol/sc_rollup_riscv.ml
.
Moved registration of RISCV errors (from the rollup node implementation of the riscv pvm in proto_alpha/lib_sc_rollup_node/riscv_pvm.ml
) to this implementation to avoid double registration.
Mocked a Riscv
protocol environment module for functions that need to be called from the Rust library.
Manually testing the MR
Tests will be added once the protocol environment is implemented, as previously all the protocol code for the riscv pvm was a stub, and this MR does not change that.
Existing related tests can be run:
dune exec tezt/tests/main.exe -- riscv
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rst
for the protocol and the environment,CHANGES.rst
at the root of the repository for everything else). -
Select suitable reviewers using the Reviewers
field below. -
Select as Assignee
the next person who should take action on that MR