RISC-V: Rollup node implements proof encoding
Part of RV-555
What
The rollup node implements proof_encoding by using the same implementation as in the protocol.
Why
This is needed to enable end-to-end testing of fraud proofs for RISC-V
How
Implemented the same encoding as in the protocol. The reason why the implementations are not equalized is because we may need in the future to specialise the protocol or rollup node implementation of these encodings. For example, the protocol might associate with a proof an already allocated proof backend instead of having just plain bytes. This will improve performance by avoiding reparsing the proof everytime it is used.
Manually Testing
Tests for the serialisation / deserialisation in unit tests on the rust side in this MR: !17438 (closed)
Benchmarking
MR does not change the RISCV interpreter, only rollup node and protocol.
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.