Introduction to Gelato's "bots"
Executors are Gelato Network participants who provide infrastructure as a service to execute transactions as instructed by users of the Gelato Network. Executors are also referred to as “bots” or "keepers".
As soon as Executor receives a task to be executed, the Executor usually performs a simulation and if the simulation does well, the Executor submits the transaction on chain. The Executor then checks for its inclusion on every new block, and, in case of a task execution needing a resubmission, the Executor is responsible for bumping the gas price and re-submitting it.
One of the early core inventions of the Gelato Network was to coordinate task executions on a single platform amongst a broad set of transaction relayers ("Executors"). Whilst many Defi protocols that need decentralised keeper services default to primitive coordination mechanisms, such as asking executors to outbid each other in expensive gas wars, Gelato Network employs a coordination mechanism amongst its executors that comes at a fraction of the cost to miners and avoids racing conditions and winner-takes-all games.
Node operators that take part in the execution of tasks on the Gelato Network are running parallelised software that allocates a distinct portion of the global task pool to them at any given time. This parallel algorithm ensures none of the Executors are forced into expensive bidding wars with other Executors. One of the breakthroughs of recent Gelato V2 developments was to move from the primitive Round-Robin mechanism it pioneered to a fully parallelised task distribution algorithm that ensures that all open Gelato tasks can be serviced by Executors simultaneously, without racing conditions.
Gelato currently works with a set of whitelisted partners who provide Executor services. A core aim for Gelato is to further decentralize and enable anyone with the right resources to become an Executor. Executors will be required to stake a GEL tokens to become an Executor - creating accountability and incentivising them to act in the best interests of the user and protocol.