Skip to main content

FAQs

What is Atlas

Atlas is a permissionless and modular smart contract framework for Execution Abstraction. It provides dApps, frontends and protocols with a generalized auction system in which solvers compete to provide optimal solutions for user intents or MEV redistribution.

What is Execution Abstraction?

Execution Abstraction allows front-end applications, wallets, and other entities to define and customize the execution context of operations within a transaction. This abstraction makes it possible to control what happens before, during, and after operations, ensuring tailored transaction processing and protection against issues like MEV (Miner Extractable Value) exploitation.

How does Atlas handle Miner Extractable Value (MEV)?

Atlas addresses MEV by providing expanded control over transaction execution. It uses operations bundled into single transactions, preventing miners, validators, and other third parties from manipulating the order of operations. This approach helps protect users from predatory practices like front-running and ensures the equitable distribution of value.

Is Atlas open source?

Yes, Atlas is open source under the permissive MIT license (free to access and modify).

How does Atlas ensure the security of user operations and solver operations?

Atlas ensures security through various mechanisms, including signature verification, atomic execution of bundled operations, and the use of smart contracts to manage interactions. The protocol also employs the CallChainHash mechanism to guarantee the execution order of Solver Operations, preventing manipulation by bundlers or other parties.

Can Atlas be integrated with existing DeFi protocols without requiring significant changes to their architecture?

Yes, Atlas is designed to be flexible and can be integrated with existing DeFi protocols with minimal changes. The protocol provides standard modules and templates to simplify the integration process. However, the extent of changes required may vary depending on the specific protocol and desired functionality.

What are the performance implications of using Atlas, particularly in terms of transaction speed and gas costs?

Atlas introduces some additional gas overhead due to its complex mechanisms for bundling and auctions. However, this overhead is designed to be covered by Solvers, not users. The performance implications are as follows:

  1. Gas Overhead: There is an additional gas cost for using Atlas, primarily due to the execution of bundling logic and auction mechanisms.

  2. Solver Coverage: Importantly, this gas overhead is covered by the Solvers participating in the network, not by the end-users. This means users don't directly bear the additional gas costs.

  3. Efficiency in Low-Gas Environments: On EVM chains with low gas costs, the Atlas overhead becomes negligible, often amounting to a rounding error in the overall transaction cost.

  4. Bundling Benefits: In many scenarios, Atlas can lead to reduced overall gas costs by bundling multiple operations into a single transaction, offsetting the overhead. This bundling efficiency can result in significant gas savings compared to executing operations individually. Moreover, Atlas transactions are resistant to nonce or gas price manipulation games that are common in mempool-enabled EVM chains, providing a more stable and predictable execution environment.

  5. Cheap Reverts for Solvers: Atlas implements cheap reverts for Solvers, allowing them to efficiently abort transactions that are known to fail (e.g., when another Solver has already executed successfully). This feature helps prevent unnecessary gas costs for redundant or invalid operations.

  6. Optimization for Value Extraction: While there's a gas overhead, Atlas is designed to optimize value extraction, potentially leading to better overall economic outcomes for users and protocols.

The exact performance impact can vary based on the specific use case, implementation, and the EVM chain being used. In general, Atlas aims to provide net positive value despite the gas overhead, especially in low-gas environments where the overhead is minimal.

How does Atlas handle network congestion or high gas price scenarios?

Atlas includes mechanisms to adapt to network conditions, while still leveraging the blockchain's native transaction pricing:

  1. Regular Transaction Pricing: The Bundler prices the bundled transaction using the regular transaction pricing mechanism of the underlying blockchain. This means Atlas transactions are subject to the same gas price dynamics as standard transactions.

  2. Flexible Gas Pricing Strategies: Within this framework, Atlas allows for flexible gas pricing strategies. Solvers can adjust their bids based on current network conditions and the value of the transaction.

  3. Transaction Prioritization: The protocol can prioritize transactions based on various factors, including bid values and user-defined preferences.

  4. Solver Competition: The competitive nature of the solver network can lead to more efficient execution strategies, potentially mitigating some effects of network congestion.

While Atlas operates within the constraints of the network's congestion and gas pricing, its bundling and solver competition mechanisms aim to optimize transaction execution even in challenging network conditions.

Is there a limit to the number of operations that can be bundled in a single Atlas transaction?

While there's no hard-coded limit to the number of operations that can be bundled, practical limits are imposed by block gas limits and computational constraints. The exact number of operations that can be bundled depends on the complexity of each operation and the current network conditions.

How does Atlas ensure fairness in the solver bidding process?

Atlas employs a decentralized and permissionless auction system where solvers compete to provide optimal solutions. The protocol uses smart contracts to manage how operations interact and to select auction winners, reducing trust assumptions and potential manipulation. The specific fairness mechanisms can be customized through the DAppControl modules.

Can Atlas be used in cross-chain operations or is it limited to a single blockchain?

Currently, Atlas is designed to operate within a single blockchain ecosystem. However, the protocol's modular architecture allows for potential future extensions to support cross-chain operations. Any cross-chain functionality would require careful design and implementation to ensure security and atomicity across different networks.

What measures does Atlas take to prevent centralization in the auctioneer and bundler roles?

Atlas is designed with decentralization in mind. The protocol allows for various models of auctioneer and bundler assignment, including decentralized and permissionless options. The specific measures can be customized through the DAppControl modules, allowing protocols to implement their preferred balance of efficiency and decentralization.

How does Atlas handle failed operations within a bundled transaction?

Atlas executes bundled operations atomically, meaning that either all operations in a bundle succeed or the entire transaction reverts. This ensures consistency and prevents partial execution scenarios that could lead to unintended consequences. The protocol includes error handling mechanisms to manage and report on failed operations.

Are there any specific regulatory considerations or compliance measures built into the Atlas protocol?

Atlas is designed as a flexible framework that can be adapted to various regulatory environments. While the core protocol doesn't include specific compliance measures, it allows for the implementation of custom rules and checks through DAppControl modules. This enables protocols built on Atlas to implement necessary compliance measures based on their specific regulatory requirements.