ethereum-optimism / ethereum-optimism/optimism

[op-conductor-mon] Prefer rollup boost-enabled sequencer election

Open
#15,874 4 comments 0 reactions 1 assignee Claimed by @yashvardhan-kukreja View on GitHub
Dominant language
Go
Stars
6.5k
Forks
4k
Avg merge
2d 15h
Merged PRs (30d)
145

Description

A Flashblocks failure mode we need to watch out for is the case where the rollup boost instance of every sequencer fails simultaneously.

To be able to respond to this scenario in an automated way, we'll want to run at least one backup sequencer that is not configured with rollup boost (just default geth block building). This way, we can fall back to it if all rollup boost-enabled sequencers fail.

However if we do this, we should modify conductor's leader election logic such that it prioritizes / prefers rollup boost-enabled sequencers - this will ensure that conductor only selects the non-rollup boost-enabled sequencer as a last resort in case all other sequencers are unhealthy.

Note: this actually would need to be implemented in op-conductor-mon rather than conductor, see [comment](https://github.com/ethereum-optimism/optimism/issues/15874#issuecomment-2894783738).

**Acceptance Criteria**
- [ ] Short design doc outlining the specific approach
- [ ] Align on conductor topology - in particular, how many of what sequencer types to run in Labs infra and Sunnyside infra
- [ ] Implement required changes in conductor
- [ ] Write op-acceptor tests that verify this failover logic

Note: This is a P0 / blocking capability for the High Availability Interop workstream: https://github.com/ethereum-optimism/optimism/issues/15992

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.