Commit 60403ae
authored
fix: Make EVM Execution more robust (#2327)
<!--
Please read and fill out this form before submitting your PR.
Please make sure you have reviewed our contributors guide before
submitting your
first PR.
NOTE: PR titles should follow semantic commits:
https://www.conventionalcommits.org/en/v1.0.0/
-->
## Overview
- Use a mutex lock in EVM execution methods in EngineClient
- Call fork choice updated method correctly in EVM execution
- Add E2E test for running an EVM sequencer
- Refactor evm helper methods for use in e2e test
- Modify docker compose files to expose ws port and genesis json to
include address for testing
<!--
Please provide an explanation of the PR, including the appropriate
context,
background, goal, and rationale. If there is an issue with this
information,
please provide a tl;dr and link the issue.
Ex: Closes #<issue number>
-->
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new end-to-end test for the EVM aggregator, enabling
comprehensive integration testing with a local data availability
service, EVM node, and aggregator node.
- Added helper utilities for automated testing of EVM interactions in
Docker environments, including transaction creation, submission, and
verification.
- Enabled WebSocket support for the EVM node in Docker Compose
configurations.
- Added new accounts with balances to EVM genesis configurations.
- **Bug Fixes**
- Improved transaction execution reliability by allowing invalid
transactions to be skipped without crashing the node.
- **Refactor**
- Simplified and modularized test setup by delegating container
orchestration and transaction helpers to external functions.
- Enhanced concurrency safety by tracking forkchoice block hashes with
mutex protection.
- Adjusted test assertions to better verify block height consistency.
- **Chores**
- Updated and expanded dependencies across multiple modules to support
enhanced testing, cloud, container, and telemetry features.
- Added a new Go module for end-to-end testing with relevant
dependencies and configuration.
- Updated test scripts to support new build and test flows.
- Updated example commands and environment variables to reflect new
genesis hash values.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->1 parent 973aac3 commit 60403ae
17 files changed
Lines changed: 2283 additions & 222 deletions
File tree
- apps/evm
- based
- single
- chain
- execution/evm
- docker
- chain
- node
- scripts
- test/e2e
Large diffs are not rendered by default.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
34 | | - | |
| 34 | + | |
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
34 | 37 | | |
35 | 38 | | |
36 | 39 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
26 | 27 | | |
27 | 28 | | |
28 | 29 | | |
| 30 | + | |
29 | 31 | | |
30 | 32 | | |
31 | | - | |
| 33 | + | |
32 | 34 | | |
33 | 35 | | |
34 | 36 | | |
| |||
48 | 50 | | |
49 | 51 | | |
50 | 52 | | |
51 | | - | |
| 53 | + | |
52 | 54 | | |
53 | 55 | | |
54 | 56 | | |
| |||
61 | 63 | | |
62 | 64 | | |
63 | 65 | | |
64 | | - | |
| 66 | + | |
65 | 67 | | |
66 | 68 | | |
67 | 69 | | |
| |||
Large diffs are not rendered by default.
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
34 | 37 | | |
35 | 38 | | |
36 | 39 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
| 33 | + | |
33 | 34 | | |
34 | 35 | | |
35 | 36 | | |
| |||
46 | 47 | | |
47 | 48 | | |
48 | 49 | | |
| 50 | + | |
49 | 51 | | |
50 | 52 | | |
51 | 53 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| |||
40 | 41 | | |
41 | 42 | | |
42 | 43 | | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
43 | 49 | | |
44 | 50 | | |
45 | 51 | | |
| |||
168 | 174 | | |
169 | 175 | | |
170 | 176 | | |
171 | | - | |
| 177 | + | |
| 178 | + | |
172 | 179 | | |
173 | 180 | | |
174 | 181 | | |
| |||
264 | 271 | | |
265 | 272 | | |
266 | 273 | | |
267 | | - | |
268 | | - | |
269 | | - | |
270 | | - | |
| 274 | + | |
| 275 | + | |
271 | 276 | | |
272 | | - | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
273 | 288 | | |
| 289 | + | |
274 | 290 | | |
275 | 291 | | |
276 | 292 | | |
| |||
311 | 327 | | |
312 | 328 | | |
313 | 329 | | |
| 330 | + | |
314 | 331 | | |
315 | 332 | | |
316 | 333 | | |
| |||
319 | 336 | | |
320 | 337 | | |
321 | 338 | | |
| 339 | + | |
322 | 340 | | |
323 | 341 | | |
324 | 342 | | |
| |||
0 commit comments