feat(riscv-guest): l2 exec guest coverage test harness - #3758
Open
Filter94 wants to merge 5 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a host-side test harness for the l2-execution guest by introducing a test-only SSZ encoder for vanilla StatelessInput, a conflation-plan DSL + scenario suite, and an execution seam that allows exercising conflation logic end-to-end with a stubbed per-block engine.
Changes:
- Add a test-only SSZ encoder (
stateless_input_encode) plus round-trip and golden re-encode tests against EF fixtures. - Introduce a
ConflationPlanDSL, parity tests for itsStubEngine, and a multi-scenario range test suite for conflation invariants. - Refactor guest entry to
runL2ExecutionWithEngineand tighten non-genesis parent-header witness requirements in per-block execution.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| riscv-guests/l2-execution/test/stateless_input_encode.zig | New test-only SSZ encoder for vanilla StatelessInput wire bytes. |
| riscv-guests/l2-execution/test/stateless_input_encode_test.zig | Round-trip and golden-byte tests for the new encoder. |
| riscv-guests/l2-execution/test/legacy_tx_rlp.zig | Shared helper to RLP-encode legacy transactions for fixtures/tests. |
| riscv-guests/l2-execution/test/l2_execution_range_test.zig | End-to-end conflation scenario suite (happy path + single-mutation rejects). |
| riscv-guests/l2-execution/test/conflation_plan.zig | New DSL to fabricate consistent multi-block inputs and drive conflation via a stub engine. |
| riscv-guests/l2-execution/test/conflation_plan_parity_test.zig | Guards stub realism against the real execution seam and smoke-tests the DSL. |
| riscv-guests/l2-execution/src/l2_execution.zig | Introduce runL2ExecutionWithEngine seam and use it from runL2Execution. |
| riscv-guests/l2-execution/src/execution.zig | Require resolvable parent header for non-genesis blocks (avoid self-referential pre-state). |
| riscv-guests/l2-execution/build.zig.zon | Add ssz library dependency for test-side serialization. |
| riscv-guests/l2-execution/build.zig | Wire new test modules/tests and add ssz import for the encoder module. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Signed-off-by: Roman <4833306+Filter94@users.noreply.github.com>
…th/lineth-monorepo into test/l2-exec-guest-coverage-pr1
…th/lineth-monorepo into test/l2-exec-guest-coverage-pr1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR implements issue(s) #
Checklist
PR.