Automations
Provides an overview of the automation life cycle
Last updated
Provides an overview of the automation life cycle
Last updated
Ditto provides its own standard for programmable meta transactions. These signed calldata transactions contain information such as:
Automation key
Maximum gas price for execution
Maximum gas limit
Target contracts for the call and data
Chain id
These data is encoded as a merkle tree with the leaf corresponding to the data to be executed on the target chain and the hash signed by the user. The executor then routes the data via EntryPoint on the target chain providing the data in relevant leaf to be validated in the smart contract. Future version of the protocol enables the signing of the intent with the EntrPoint validating the desired outcome so that the solver can create the calldata at runtime.
Meta format enables gasless automation creation. Leveraging ditto prebuilt modules allows flexible logic enforcement in a permissionless environment.
Ditto's template library makes it easy to create execution checkers, optimized actions, and combine them into strategies such as:
Emergency repayment for Aave
Auto compounding for Uniswap V3
Delta-neutral leveraged strategy Aave + Uniswap V3
Additionally, Ditto uses built-in MEV protection modules in smart contracts via Uniswap's cardinality pools for delayed swaps. Check UniswapDEXModule and DexModule7579.
The Ditto appchain distributes responsibility ranges and ensures continuous simulation of meta transaction execution.
To create a meta transaction or meta automation, the target contract must be integrated into the Ditto contract entry point on the target network.
When working with AA (Account Abstraction), Ditto supports the 7579 standard for smart accounts as a module for creating automations. Once the module is installed, the user can interact directly with the appchain by sending signed meta automations.
To interact with the protocol, the user must ensure integration with Ditto's entry points on the execution networks, either independently or via Ditto's ready-made modules.
Meta automation assembly can be done either through Ditto's SDK or independently, as long as there is a stable connection to Ditto's RPC.
Ditto integration with EC7579 modular account abstraction standard enables automations on the wide range of industry acknowledged smart accounts such as Rhinestone, Biconomy, ZeroDev and Safe.
As the phase 1 we're going to support ETH Mainnet, Arbitrum, Base, Polygon, Optimism.
And as a Phase 2 we have Swell L2, Berachain and Monad in our pipeline.