op-node: refactor sequencer to use EngineControl, test sequencing#4757
op-node: refactor sequencer to use EngineControl, test sequencing#4757mergify[bot] merged 2 commits intodevelopfrom
Conversation
…h chaos-monkey-like test
|
|
This PR has been added to the merge queue, and will be merged soon. |
|
This PR is next in line to be merged, and will be merged as soon as checks pass. |
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## develop #4757 +/- ##
===========================================
- Coverage 40.62% 36.33% -4.29%
===========================================
Files 327 180 -147
Lines 18600 14396 -4204
Branches 768 0 -768
===========================================
- Hits 7556 5231 -2325
+ Misses 10484 8637 -1847
+ Partials 560 528 -32
Flags with carried forward coverage won't be shown. Click here to find out more.
|
Description
This cleans up the sequencer code-path by removing all remaining engine state from the
DriverandSequencerin favor of using justEngineControl,and exposing a minimal sequencer planning interface to the
Driverloop.For origin selection the L1 head is still being passed around, this is addressed in the next PR.
Tests
I removed the trail-of-bits test because it's only testing 2 properties around sequencer state, which has now been refactored away.
Instead, we now have a large chaos-monkey like test:
we run the
Sequencerwith a fakedEngineControland inputs (origin selection / attributes building) and throw chaos it at it:And then at the end of test we assert some chain health metrics,
to make sure we can deal with the above errors and still maintain a reasonably healthy L2 chain.
Removing the old test + writing this new large one also means this PR had to be larger, but I tried to keep the functionality changes limited to just the
Sequencerand removal of the old sequencer state from the driver.Additional context
Fix ENG-3104
Stacked on #4756 and draft until that is merged.
Full PR stack: