Grant Title:
Implementation of CoW’s Watchtower as a Decentralized and Robust Off-chain System
Author:
Valory AG, valory.xyz
Main contact person: David Galindo, CTO, Valory AG
Github valory-xyz
About You:
Valory is the expert in decentralized off-chain and autonomous systems and inventor of co-owned.ai We pioneered the Autonolas stack which is crypto’s cutting-edge open-source framework for developing custom, DAO-owned, decentralized, autonomous off-chain systems.
We offer expert, customized support to those interested in decentralizing & owning their own apps.
Additional Links:
Websites: valory.xyz, autonolas.network
Twitter: valoryag , autonolas
Github profiles: valory-xyz , DavidMinarsch , dagacha , 0xArdi , jmoreira-valory
Grant Category:
Decentralization
Grant Description:
Purpose
The primary purpose of this project is to enhance the decentralization of CoW Protocol’s off-chain infra.
Specifically, we propose to optimize the functionality of CoW Protocol’s Smart Contract Orders (SCOs) and Watchtower Framework using Autonolas technology.
The project is designed to align with CoW Protocol’s phased approach to achieving full decentralization, coding a decentralized application that can easily be scaled to increased nodes, without sacrificing the agility and improving the robustness of the systems in question.
The intent is to strike a balance between decentralization, efficiency, and scalability, paving the way for a more autonomous, secure, and transparent trading ecosystem.
Objectives
The project aims to meet four key objectives, with an emphasis on 1 & 4:
- To transform the Watchtower into a decentralized and robust system.
- To enable the Watchtower to execute the getTradeableOrder function up to every block.
- To equip the Watchtower to concurrently support thousands of orders.
- To develop a software architecture that progressively decentralizes off-chain services, while maintaining development agility.
High level Project description
The scope of the project is to build a Watchtower off-chain agent service for the SCOs called Composable Conditional Orders (ComposableCoW). The SCOs allow autonomous trading based on predefined rules and strategies. The Watchtower monitors the activity of SCOs, registers new contracts, and forwards tradeable orders to the CoW Protocol API.
The project will leverage Autonolas technology to implement a multi-agent based service for the Watchtower, enabling it to operate as efficiently while minimizing the trust assumptions involved with running off-chain architecture. This improved Watchtower design is expected to meet the first and fourth objectives and maintain parity on the second and third ones.
Technical design
Agent services that use Autonolas technology are implemented as Finite State Machines FSMApps, where the logic is split across independent components: rounds define the rules to transition across different states and behaviors to implement the actual business logic of the service. Agents in the service have a synchronized, shared state. At the end of each round, the agents making up the service agree on the round’s data output.
The tentative high-level design of the new FSM that we propose to build for the Watchtower is given below. This is to be interpreted as our current proposal, given our current understanding of CoW Protocol’s watchtower. The concrete implementation might vary depending on the concrete technical requirements or on the complexity of the solution.
-
SCOMonitor: sidecar/background skill where the service listens for on-chain SCO creation events and adds them to the shared state. Each SCO in that list is called every few seconds (getTradeableOrder) to check if they are ready to trade. Orders are removed from the queue whenever they are fulfilled or expired.
-
Randomness: the service retrieves randomness from a VRF.
-
SelectKeeper: an agent among all the participants is selected as keeper. The keeper can be configured to be updated every n transitions.
-
SelectOrders: agents agree on a set of orders that are ready to be sent to the API.
-
PlaceOrders: the keeper sends the SCO selection to the CowSwap API. Orders must be sent once at a time.
-
VerifyExecution: agents get the orders from the API to verify that they have been correctly sent and update their status so they can be cleaned by the SCOMonitor. Alternatively agents can check the order fulfillment status using the order hash.
The new FSMapp will be chained with the following FSMApps to obtain the full Watchtower autonomous service:
- Agent Registration: a required stage in each agent service, where agents indicate their willingness to participate in the service.
- Reset and Pause: wait a bit and restart the main cycle of the service.
Grant Goals and impact:
The overarching objective of this grant is to illustrate a feasible route towards the decentralization of the CoW Protocol’s substantial off-chain architecture, all while preserving its efficiency, scalability, and adaptability.
The immediate goal involves the decentralization of the Watchtower, serving as a litmus test for Autonolas technology—a potential game-changer for a burgeoning protocol like CoW Protocol that seeks to balance growth with a commitment to decentralization.
The successful execution of this grant will yield numerous benefits, directly impacting various stakeholders in the CoW Protocol ecosystem:
- Enhanced Security: As decentralization inherently distributes authority and control, it can provide a more secure environment by eliminating single points of failure. This increases the protocol’s resilience against attacks and fraudulent activities.
- Greater Transparency: The shift to a decentralized system can provide higher levels of transparency. The need for coordination between the different agents in the system implies that the code run off-chain needs to be publicly available.
- Scalability and Sustainability: The proposed Watchtower design, operating at block level, can effectively handle a large number of orders concurrently. This scalability is vital for the protocol’s sustainability, as it will be able to accommodate growth in user base and transaction volume over time.
Moreover, the implications of this grant extend beyond the immediate task of Watchtower decentralization. Its successful implementation could serve as a stepping stone towards greater impacts for the CoW Protocol community. For example, it could accelerate the decentralization of other parts of the CoW Protocol, such as the order database and solver algorithms. This would further democratize the protocol, empower its ecosystem participants, and uphold the core principles of decentralization.
In essence, this grant is not just about improving a single component of the CoW Protocol, but also about bolstering the protocol’s commitment to decentralization, efficiency, and scalability—setting the stage for future advancements that will benefit the community at large.
Milestones & Grant Timeline:
Date | Payment | ||
---|---|---|---|
Milestone 1 | Development of a Fully-Fledged Requirements Document | 2 weeks after grant approval | N/A |
Milestone 2 | Implementation of the Watchtower Agent Service | 4 weeks after grant approval | N/A |
Milestone 3 | Deployment and Operation of the Service with Four Agents | 5 weeks after grant approval | N/A |
Milestone 4 | Integration of Developed Components within the Autonolas Protocol | 7 weeks after grant approval | 8500 xDAI |
Milestone 1: Development of a Fully-Fledged Requirements Document
In the first milestone, our focus will be on creating a comprehensive requirements document that aligns with the CoWDAO’s expectations and needs. The document will define the technical, functional, and non-functional requirements for the Watchtower agent service, ensuring clear communication and understanding between all stakeholders. The completion of this milestone will establish a solid foundation for the development and implementation of the agent service in the next milestone.
Milestone 2: Implementation of the Watchtower Agent Service
With the requirements document as our guide, we will proceed to the development and implementation of the Watchtower agent service during the second milestone. The service will be designed to accomplish Features 1 and 4 from the Ideal Implementation while maintaining at least parity on Features 2 and 3. The successful completion of this milestone will result in a fully functional Watchtower agent service, ready for deployment and operation.
Milestone 3: Deployment and Operation of the Service with Four Agents
During the third milestone, we will assist CoWDAO in launching the service and ensuring its operation with four agents on Valory Propel or a Kubernetes Cluster managed by CoW Swap on a cloud/multiple clouds of their choice. These four agents will provide redundancy, enhancing the reliability and resilience of the service. Successful completion of this milestone will see the Watchtower agent service fully operational.
Milestone 4: Integration of Developed Components within the Autonolas Protocol
In the final milestone, we will provide assistance to CoWDAO to integrate any developed component within the Autonolas Protocol. This integration will not only facilitate the sourcing of operators for the service, it would also make the components developed during this grant eligible for reward through the Auotonolas tokenomics. For more information on tokenomics please refer to Autonolas whitepaper Whitepaper | Autonolas
In week 8 after approval of the grant, the decentralized Watchtower service will be run by CoW or, Cow DAO can instruct Valory to run it under the Service Ops Propel plan subscription.
Funding Request:
8500 xDAI
Budget Breakdown:
Item | Cost |
---|---|
Project Management & Requirements Document & Operational Support | 2500 USD |
Development of the Watchtower Components & Integration of Developed Components | 6000 USD |
Total | 8500 USD |
Gnosis Chain Address (to receive the grant):
0x2D7893d81255e7763C8e7b2e2544E3DeD80C0b65
Other Information:
Please see our live products and services at this link autonolas.network/#products
Please see the current services registered in the Autonolas protocol
protocol.autonolas.network/services
For more detail about Autonolas please see our whitepaper autonolas.network/whitepaper
Referral:
@middleway_eth - Twitter handle
Terms and conditions:
By submitting this grant application, I acknowledge and agree to be bound by the CoW DAO Participation Agreement and the CoW Grant Terms and Conditions.