This repository contains the implementation for integrating mev-commit preconfirmations with Taiko. It enables Taiko users to receive instant preconfirmations committed by L1 execution service providers. This is a work in progress, for the latest updates please follow the Taiko forum or reach out to the Primev team.
mev-commit is a credible commitment network designed for commitment games between bidders and execution service providers, such as block builders, sequencers, and more. By leveraging preconfirmations, Taiko users can ensure their transactions are executed according to specific requirements, backed by provider stakes that can be slashed if commitments are not fulfilled.
- Preconfirmations: Real-time commitments ensuring transaction execution as specified.
- Integration with Taiko: Enabling preconfirmations for Taiko transactions.
- Encrypted Mempool: Enhanced transaction privacy with our latest release.
- Holesky Testnet: Currently live on the Holesky testnet with ~11,000 validators opted in.
- docker/: Configuration files for Docker, including Grafana and Prometheus setup.
grafana/custom/settings.ini
prometheus/l2/prometheus.yml
- execution_engine/: Dockerfile for the execution engine.
Dockerfile
- funder/: Dockerfile and entrypoint script for the funder.
Dockerfile
entrypoint.sh
- mev-commit/: Dockerfile and entrypoint script for mev-commit.
Dockerfile
entrypoint.sh
- script/: Various scripts for starting components and updating environment variables.
start-driver.sh
start-proposer.sh
start-prover-relayer.sh
update-env.sh
- docker-compose.yml: Docker Compose file for setting up the integration.
- Makefile: Build and deployment commands.
- .env.sample: Sample environment configuration file.
- .gitignore: Git ignore file.
- Docker and Docker Compose installed.
- Basic understanding of Docker and containerized applications.
Copy the sample environment file and update the necessary values.
cp .env.sample .env
Use the Makefile to build and start the services.
make build
make up
Verify that all services are running correctly. Access the Grafana dashboard to monitor the integration.
The current integration(shown by the diagram below) is a work in progress of Taiko users being able to receive instant preconfirmations committed to by L1 execution service providers.
- Note: This integration presumes an established relationship between the user and the bidder bot.
User sends a transaction to the Taiko node.
A preconfirmation bidder bot reads the mempool and creates a bid based on the transaction to the mev-commit Taiko provider.
The mev-commit Taiko provider issues a commitment and passes this information to the Taiko node.
Mev-commit logic inside the Taiko node validates the operation and sends it to L1.
- Complete the end-to-end integration and stand up L1 preconfirmations for Taiko.
- Test and collect system data.
- Present instructions to the Taiko community on how to use preconfirmations.
- Once the community is familiar with the setup, discuss mainnet availability.
- Develop a mainnet co-incentive program to enable the Taiko community to be active in mev-commit governance and for the mev-commit ecosystem to benefit Taiko.
For those interested in preconfirmations on Ethereum and beyond, please reach out to us through our contact form. We're very excited about bringing preconfirmations to the Taiko community and more, and we'd love to hear any thoughts or feedback you have.