-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Interop: block building (sequencer update) #10891
Comments
Totally agree, PBS would be the location for this work, but wouldn't change the work significantly. Another way of framing this is that filtering out invalid "executing messages" is a matter of protocol, not of policy. Therefore, delivering only protocol-acceptable transactions to the block builder is a concern which lives outside of the block builder. |
I believe we will want a similar architecture to what is used today - a set of sentry nodes that receive inbound transactions and forward them to the sequencer. These sentry nodes would be configured to execute the transactions when entering the mempool, look for |
Update the block building code in op-geth to use the superchain backend to validate executing messages. It should work with unsafe messages since we are optimizing for low latency.
This looks like adding an RPC client for
op-supervisor
into theop-geth
block building code here that drops transactions that include invalid executing messages. If a block is built that includes an invalid executing message, it will result in the block being considered invalid. See ethereum-optimism/specs#128 (comment) for some thoughts on the topic.The block-building and tx-pool invalidation code must be covered in op-e2e tests.
On PBS API
We want to add in a PBS API per ethereum-optimism/specs#116. We don't need to utilize the PBS API as part of interop directly. If we did want to utilize it, we would fork
op-geth
intoop-geth-interop
and add the block building code there and then use that geth to build blocks. This seems like it just adds extra infra + dev requirements that aren't necessary, its easier to just add the diff toop-geth
directlyThe text was updated successfully, but these errors were encountered: