Bundler
Role
The bundler is the party submitting the final Atlas transaction to the blockchain. It receives a set of user, solver, and dApp operations, compiles them into an Atlas bundle, and finally calls the metacall
function on the Atlas core contract.
The bundler role can be fulfilled by the user themselves, or by a third party, as per dApp rules. When the bundler is a third party, it is typically called by the auctioneer (referred to as initiator
in the below diagram).

Duties
The bundler must:
- Ensure the integrity of the operations, through validation and simulation.
- Ensure it has the right to submit the bundle (or face transaction revert), as per dApp rules.
- Ensure timely inclusion of submitted transactions.
- Provide resulting transaction hash to the initiator.
info
The bundler must expose a public API, as defined by the bundler API specifications.