ethereum-optimism / ethereum-optimism/optimism

Match acceptance test topology to real world topology

Open
#16,746 1 comment 0 reactions 0 assignees View on GitHub
A-acceptance-tests A-kt-devnet
Dominant language
Go
Stars
6.5k
Forks
4k
Avg merge
2d 15h
Merged PRs (30d)
145

Description

Current local kurtosis interop devnet exposes sequencer to public, which diverges with production. The topology for production should follow([Ref](https://github.com/ethereum-optimism/design-docs/blob/main/security/fma-interop-tx-handling.md#the-solution-design)):
- All Executing Message are checked once at proxyd ingress.
- All Executing Message are checked once at Node Mempool ingress (not counting Sequencer).
- All Executing Message in Node Mempools are Batched at checked on a regular interval.
- If an Executing Message is ever Invalid, it is discarded and not retried.
- No Checks are done at Block Building time.

We do not have proxyd enabled, and the default topology provides single sequencer node per chain, does not test the verifier mempool check etc.

Provide an abstraction for both sysext/sysgo side to match the test environment with production.

Contributor guide

Open the contributing guide

Research direction

Read the linked FMA interop transaction-handling design and inspect the sysext and sysgo acceptance-test environments first. Define how both environments can represent the production topology, including proxyd ingress, verifier mempool checks, batching, and multiple sequencer nodes; done means the acceptance tests exercise those production-aligned checks without block-building checks.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
distributed-systems, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.