Skip to main content

Bundler

The Bundler is a role within the Atlas protocol, responsible for generating and submitting transactions to the blockchain. By aggregating a single User Operation (UserOp) with one or more Solver Operations (SolverOps), the Bundler ensures that transactions are efficiently processed while adhering to the protocol's constraints and maintaining flexibility to accommodate various decentralized applications (DApps).

Key Responsibilities

1. Transaction Generation

The Bundler's primary role is to generate transactions that combine a UserOp with SolverOps. This involves:

  • Single User Operation (UserOp): Handling one UserOp per transaction, representing a user's intended action within the DeFi ecosystem.
  • Multiple Solver Operations (SolverOps): Including one or more SolverOps proposed by solvers to fulfill the user's intent or optimize transaction execution for Miner Extractable Value (MEV) opportunities.
  • Creating Bundled Transactions: Directing the bundled transaction to an Atlas Module, encapsulating the UserOp and associated SolverOps to enhance efficiency and reduce gas costs.

2. Gas Payment

The Bundler covers the gas fees associated with transaction execution by:

  • Managing Gas Costs: Calculating and allocating necessary gas to ensure successful processing.
  • Funding Mechanism: Utilizing allocated funds to cover gas fees, enabling seamless transaction execution without burdening end-users.

3. Submission to the Mempool

After bundling, the Bundler submits transactions to the mempool for inclusion in the next block by:

  • Broadcasting Bundles: Promptly propagating the bundled transaction to increase the likelihood of timely inclusion.
  • Handling Re-submissions: Managing re-submissions if transactions aren't immediately picked up to enhance execution success rates.

Flexibility and Customization

The Bundler's flexibility is influenced by the chosen model for assuming the Bundler role:

1. User as Bundler

  • Direct Control: Users manage their transactions directly.
  • Transaction Costs: Users are responsible for covering the gas fees associated with their transactions. (get refunded by solver)
  • Enhanced Security: Reduces reliance on third parties, minimizing potential attack vectors or points of failure.

2. Dedicated Bundler

  • Sponsorship of Gas Costs: Manages transaction costs on behalf of users, enabling gasless transactions.
  • Scalability: Handles higher transaction volumes efficiently.
  • Specialized Management: Implements optimized bundling strategies.

Design Decisions Impacting Flexibility

  • Customization of Bundling Logic: Tailored strategies based on the Bundler model.
  • Adaptability to Network Conditions: Dynamic adjustment of strategies by dedicated Bundlers.
  • Integration with DApp Control: Ensures unique execution logic and governance while leveraging bundling capabilities.

Ensuring Transaction Integrity

To maintain reliability and security, the Bundler implements:

  • Validation Processes: Verifies that UserOp and SolverOps meet protocol criteria.
  • Error Handling: Detects and addresses issues, ensuring appropriate measures like reverting state changes or re-submitting corrected bundles.

Interaction with the Auctioneer

The Bundler collaborates with the Auctioneer to handle meta-transactions within the Atlas protocol. This collaboration ensures that meta-transactions are properly formatted and submitted as regular transactions to the blockchain.

Responsibilities in Collaboration

  • Handling Meta-Transactions: Utilizing meta-transactions provided by users and converting them into regular transactions suitable for blockchain submission.
  • Submitting Transactions: Ensuring that converted transactions adhere to protocol specifications and are ready for inclusion in the blockchain.
  • Managing Submissions: Overseeing the timely and accurate submission of transactions to the mempool.

Interaction Workflow

  1. Meta-Transaction Handling:

    • Reception: The Bundler receives meta-transactions from users or DApps.
    • Conversion: Transforms meta-transactions into regular transactions compatible with the blockchain.
  2. Submission Process:

    • Formatting: Ensures that converted transactions are correctly formatted according to protocol specifications.
    • Auctioneer Interaction: While not directly involved in optimizing transactions, the Bundler works alongside the Auctioneer to facilitate the smooth submission of transactions to the mempool.
  3. Final Submission:

    • Mempool Submission: The Bundler submits the formatted regular transactions to the mempool for miners or validators to include in the blockchain.
    • Execution Oversight: Monitors the inclusion of transactions and manages any necessary adjustments to maintain transaction efficiency.

This collaboration ensures that meta-transactions are seamlessly integrated into the blockchain ecosystem, providing users with enhanced flexibility and ease of transaction management without direct optimization responsibilities.

Conclusion

Bundling is an essential process within the Atlas protocol, enabling the efficient submission of User Operations (UserOps) alongside Solver Operations (SolverOps). By aggregating a single UserOp with one or more SolverOps, Bundling ensures that transactions are processed effectively, managing gas costs and maintaining transaction integrity. The flexible and adaptive design of the Bundling process accommodates a wide range of DApps and use cases, particularly through the handling of meta-transactions which are submitted as regular transactions to the blockchain.