ethereum-optimism / ethereum-optimism/optimism
kona|op-devstack: Revise Sequencer detection while test bootstrapping
- Dominant language
- Go
- Stars
- 6.5k
- Forks
- 4k
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 145
Description
Found while attempting to run monorepo acceptance tests targeting kona-node.
op-devstack spins up preset network, and detect whether the L2 CL Node is sequencer via calling the `admin_sequencerActive()` API.
https://github.com/ethereum-optimism/optimism/blob/903584f595405d8db361c899d6e3500645e3e639/op-devstack/stack/match/sequencer.go#L10-L21
This means kona node must be always admin API enabled. Need to patch `op-devstack/sysgo/l2_cl_kona.go` and add `"KONA_NODE_RPC_ENABLE_ADMIN=true"`. Or we may patch the devstack to not use the admin API for sequencer detection.
Even after this fix, we may need kona-node patch at https://github.com/op-rs/kona/blob/fe6dfcf771059109f1d75043d5ecbbfa3b6ca1a5/crates/node/rpc/src/admin.rs#L95-L99.
This behavior is inconsistent with op-node. If admin API enabled but validator, we must not return `ErrorCode::MethodNotFound`
Contributor guide
Research direction
Start with op-devstack/stack/match/sequencer.go and op-devstack/sysgo/l2_cl_kona.go, then inspect kona's crates/node/rpc/src/admin.rs. Run the monorepo acceptance tests targeting kona-node and determine whether detection should avoid the admin API or adjust Kona behavior. Done means bootstrapping detects the sequencer correctly without requiring admin API access, with validator behavior consistent with op-node.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, rust
- Domain
- devtools, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100