rollup-data-availability
rollup-data-availability copied to clipboard
Magi as a sequencer
Description
Determine what needs to be done to use magi as a sequencer.
Additional info
The original op-node is incredibly unreliable, with panics and null pointers in most places, and is written in go. We have a partial implementation of DA on magi over at ./op-stack/optimism-rs
. The maintainers of Magi are very receptive to working together and for us to support Magi's development, especially around the DA interface issues. It has been confirmed that we shouldn't use Magi in production yet because it is new and unaudited, but for us, it would probably be easier to work with Magi since it is in rust.
The main issue is magi
is missing a bunch of endpoints that the sequencer/batcher
actors need, whilst it is able to run as a non-sequencer, it needs a few endpoints to be able to work well. So far, the endpoints I found are:
- [ ] optimism_rollupConfig
- [ ] optimism_sync
Additionally, this work might mitigate any headaches we have with go -> rust as we build the client for the DA layer, since the current client is written in go(./op-stack/openrpc
) and is mostly untested.