CIP-57: Solver rewards on all chains

CIP: 57
title: Solver rewards on all chains
author: Haris Angelidakis, Andrea Canidio, Felix Henneke, Bram van den Berg
status: Draft
created:  2024-11-11

Simple Summary

CoW Protocol is currently operating on Ethereum mainnet, Gnosis Chain and Arbitrum One, and with its state-of-the-art solver competition, users on these chains are provided with a great quality of service. A key driving force behind the evolution of the solver competition has been the solver rewards program that is currently live on mainnet, with the latest specifications described in CIP-36, CIP-38 and CIP-44.

Since the program has worked very well on mainnet, we propose to extend it to the rest of the chains the protocol is operating, namely Gnosis Chain and Arbitrum. This would allow existing solvers to further improve on each of these chains, and moreover, it would incentivize new solvers that are potentially specialized in certain chains and do not necessarily (want to) participate in the mainnet competition to join any non-mainnet competition without having to worry that there are no rewards allocated for them. Ultimately, the protocol will benefit as this would establish very strong competition on a per chain basis.

Specifically, we propose to use the same rewards mechanism that has already worked very well on mainnet, with the only adaptation being the caps, that will become chain-dependent, and will always be denominated in the native currency of each chain.

Moreover, and given that bonding pools currently exist only mainnet, we propose that vouching for all solvers, regardless of chain they are operating on, continues to happen on mainnet, thus establishing an onchain link between solver addresses, bonding pools, and respective rewards addresses, making vouching transactions on mainnet the single source of truth for this vouching for all solvers will happen on each respective chain, while continuing to use the mainnet bonding pool address in the vouching transactions.

Motivation

In order to maintain best possible service, the protocol is relying on a strong and diverse competition among solvers. As solvers are becoming more and more sophisticated, it is expected that they need funding in order for them to be able to continue operating and providing their services to the protocol. CoW DAO so far has chosen the option of incentivizing and rewarding solvers via a second-price auction mechanism, that allows solvers to truthfully bid (in most cases) in each batch auction the protocol is creating, thus minimizing the potential of solvers gaming the mechanism in order to profit at the expense of users.

However, these incentives are currently available only on mainnet. This means that competition on other chains is not so robust, and solvers, in the lack of other sources of income, could, in principle, start turning the auction into a first-price auction where they deliberately provide slightly worse prices, in order to be able to collect some profit themselves in case they win the auction so that they can cover their expenses.

Thus, it is clear that in order to maintain a healthy competition on all chains that the protocol operates, as well as attract new solver teams that are not necessarily interested in participating in the mainnet competition, a rewards mechanism per chain is needed.

As the current mechanism on mainnet has proved to be very successful, it is natural to continue using that mechanism on other chains as well.

Specification

The proposal consists of the following:

  • Use the solver rewards mechanism that is currently active on mainnet to provide rewards on Gnosis Chain and Arbitrum One, and these rewards should always be paid out to solvers in COW, with the accounting taking place once a week (similar to mainnet). Specifically, the accounting weeks on all chains will be aligned and will be from Tuesday midnight UTC to next Tuesday midnight UTC, similar to how accounting weeks are currently set up on mainnet.

  • At a high level, treat the mechanisms on all chains as a single mechanism that is parameterized by the 4 caps:

    • Upper cap on the per batch reward
    • Lower cap on the per batch reward
    • COW cap on the per quote reward
    • Native-currency cap on the per quote reward

    This implies that a CIP that proposes a change to the mechanism automatically applies to all chains, unless there is a chain-specific clause in that CIP (such as chain-specific caps).

  • The above unification also means that whenever the protocol deploys on a new chain, the existing rewards mechanism should automatically be enabled on that chain from day 1, with the corresponding caps being selected conservatively by the core team. We also propose that with each new deployment, the core team should be allowed to adjust the caps, if needed, after the 4 weeks (and only then) without the need for an additional CIP, in order to mitigate cases where the original configuration of the caps turned out to be suboptimal (due to lack of data).

  • The guiding principle for selecting caps should be that the amount of rewards being given out every week is fully covered by the average protocol revenue on the corresponding chain on that week, on average. In case of limited data, caps should be conservatively selected so as to prevent severe overspending (where again, overspending is defined with respect to the protocol revenues on the corresponding chain).

  • We propose to use the following caps on Gnosis Chain:

    • upper cap of 10 xDAI
    • lower cap of -10 xDAI
    • COW cap of 6 COW for the per quote reward, as on mainnet
    • 0.15 xDAI cap for the per quote reward

    These numbers were derived by observing data for 8 weeks (October 1, 2024 until November 26, 2024) and are aimed to align how much revenue the protocol generated on Gnosis Chain with how many rewards are handed to solvers. The interested reader can have a look at this query (that computes the total protocol revenue) and this query that showcases how rewards change with different caps.

  • We propose to use the following caps on Arbitrum:

    • upper cap of 0.012 ETH, as on mainnet
    • lower cap of -0.010 ETH, as on mainnet
    • COW cap of 6 COW for the per quote reward, as on mainnet
    • 0.0002 ETH for the per quote reward

    These numbers again were derived by observing data for 8 weeks (October 1, 2024 until November 26, 2024) and using this query (that computes the total protocol revenue) and this query that showcases how rewards change with different caps. As a comment, the choice for Arbitrum is very close to the current configuration of the mainnet rewards, and the rationale for this was that mainnet rewards have worked very reliably and successfully over the past several months, so given the common native currency, it is reasonable to start with similar/identical amounts for Arbitrum as well.

  • If the CIP successfully passes, we propose to retroactively compute and pay the rewards on Gnosis Chain as proposed by the mechanism for all batch auctions that took place after October 15 1, 2024, 00:00 UTC. Similarly, we propose to retroactively compute and pay rewards on Arbitrum as proposed by the mechanism for all batch auctions that took place after October 1, 2024, 00:00 UTC.

  • To determine which bonding pool B and rewards address R a solver address S on chain X is linked to, we propose that a vouching transaction on chain X should be executed that links address S with the mainnet bonding pool B and rewards address R. Together with the whitelisting of address S on chain X, this would then be interpreted as follows: the bonding pool B that exists on mainnet vouches for the solver address S that operates on chain X, and any rewards that solver S will claim on chain X should be redirected to the rewards address R on the corresponding chain X.

2 Likes

Supportive. I would like the actual CIP vote of any ammendments/changes to the rules to become a vote on whether a pull-request to docs/docs/cow-protocol/reference/core/auctions at main · cowprotocol/docs · GitHub should be merged (starting with this one).

This way we can make sure the rules of the games are clearly specified in Batch Auction mechanism | CoW Protocol Documentation and a solver team doesn’t have to travel back in time and apply all historic CIP in their mind in order to retreive the current rules of the game. At the same time version control will allow to keep a full record of historic rules.

1 Like

Thank you for sharing the proposal!

We would appreciate it if you could clarify the reasons why there is already a certain level of solver competition on Arbitrum. Were there any previous incentive or reward programs that contributed to this activity? Understanding the historical context would help us evaluate the situation more effectively.

  • When we look at this dune query, we can observe a significant amount of solver activity, although it is unclear for us if this level of participation is sufficient.
  • Solver should be funded properly, but at the same time, excessive rewards could lead to inefficiencies.
  • As we already have some solvers’ activity, we believe it is essential to first understand the underlying economic incentives that drive their current activity before deciding on additional measures.

This is a good question. I don’t want to answer on behalf of solvers here, as I actually don’t know myself the exact reasons some solvers have decided to deploy on Arbitrum without rewards there, but here are some thoughts.

All solvers that are currently live on Arbitrum started on mainnet, where there is a proper rewards mechanism that has been active for more than 2 years. This means that the infra/machinery of each solver was actually developed on mainnet, and for some of them, I suspect, it just was very simple to enable their solver on Arbitrum (i.e., minimal engineering work and small additional costs). Of course, why do it in the first place? Some reasons could be:

  • first-mover advantage, in the anticipation of rewards. Indeed, multiple teams have consistently asked about if and when rewards are coming on Arbitrum. It is likely that if you join the competition at an advanced stage, you will struggle more.
  • solvers want to capture and showcase volumes on multiple chains, for their own reasons (.e.,g marketing, fundrasing etc), and that i think it’s definitely fine.

Coming back to the main proposal of the CIP, I would say that the reason we are proposing a rewards mechanism is that we have seen solvers lose interest over time for Arbitrum because there are no rewards, which leads to a weaker competition and thus suboptimal executions. This is understandable, and could lead to the auction turning into a first-price auction where solvers could try to opportunistically capture surplus here and there in order to generate some profit for themselves. In such a case, attempting to enforce fairness/EBBO in the complete absence of any rewards mechanism becomes much tougher. Note: we haven’t seen such behavior from solvers but that doesn’t mean that we shouldn’t be proactive in pushing towards eliminating the possibility of such behaviors.

Since the solver competition and the rewards mechanism have been instrumental for having such a diverse and robust mainnet competition, I feel that if we want to have a healthy competition on Arbitrum, that will lead into growth and the protocol claiming a significant market share on Arbitrum (or any other chain), a proper rewards mechanism that incentives solvers to both join the competition but also behave appropriately and for the users’ benefit is necessary.

(Not sure if that addresses your concerns. If not let me know and we can discuss more)

1 Like

The CIP text has been updated, with the main change being the concrete caps that are now included in the text.

I strongly encourage everyone to have a close look at the text and the relevant Dune queries.

Thank you for updating the specific caps. We (Portus solver) think this is a good start, and it will give us more incentive to improve our competitiveness on Gnosis Chain and Arbitrum, making CoW Swap more competitive together.

I would like to ask, compared to the quote reward on Mainnet, with the current token price, the reward on Arbitrum is 1/3, and on Gnosis Chain it’s about 1/15. Is there any rationale behind this?

3 Likes

Good question. I cannot necessarily fully justify the choice of quote caps but here are some thoughts/reasons around those.

The quote rewards mechanism is arguably simplistic and eventually will need to be reworked. Until that happens, the choice of caps was done so that quote rewards don’t lead to overspending, but also motivate quoting solvers enough to continue providing their services.

A few “reasons” for smaller caps on non-mainnet: fewer requests than on mainnet (for now) which means less stress on the infra of the quoters, liquidity on Gnosis that is not very scattered which means that the task overall is slightly easier there, and more possibility for gaming, due to very low gas costs on these chains. For the last one, we, of course, have monitoring, and we trust solvers that they will not engage in washtrading in order to boost their quote rewards, but still we want to protect the protocol from overspending. As for quoting on Gnosis vs Arbitrum, i would say that we do want to encourage growth on Arbitrum, as current market share is low, and also the point of liquidity for Gnosis that i mentioned above probably doesn’t apply as much on Arbitrum, so routing is a bit more interesting there.

In any case, i think we should eventually address the quoting competition and replace its mechanism with a more robust one, similar to how the solver competition evolved and reached its current second-price mechanism state.

2 Likes

Btw, if there are no serious concerns, I am thinking of moving this to voting some time later today

1 Like

Thank you for sharing. I can understand the reasoning behind the quote reward setup for these three chains. Once the rewards go live, I’ll further evaluate the balance between the infra and the rewards. I support this proposal.

1 Like

https://snapshot.box/#/s:cow.eth/proposal/0x46d4fea1492207cf400fcb7a01141a7d4c730791d658cc77236941fc9eb7dccb

1 Like