retriev icon indicating copy to clipboard operation
retriev copied to clipboard

Splitting appeal fee

Open irenegia opened this issue 3 years ago • 4 comments

Context

Idea is to change the split of the appeal fees on retriev protocol.

Estimate time

1 week

Effort

Agree on the protocol change, then write the code and deploy new contracts.

irenegia avatar Nov 15 '22 12:11 irenegia

Why?

To avoid the following "bad" behaviour from providers: never answering retrieval requests from clients, only answering to the referees.

Question: can we use reputation only to prevent this behaviour? We could say that a provider doing that looses reputation because many "appeal requests" are onchain, but notice that basing reputation on numbers of "appeal requests" may be risky. A client can use this (paying gas and fee) to ruin a providers reputation.

We think that splitting the fee (or adding a fee for the provider) is the right countermeasure for the bad behaviour described above.

Next steps:

  • [ ] check with @danlessa the effect of this changes on the cryptoecon analysis

irenegia avatar Nov 18 '22 09:11 irenegia

Some thoughts on the matter:

If anything, I would say that the current protocol actually incentivizes providers (with some considerations around CapEx and slash risk) to ignore requests from the clients.

The splitting fee addition is an good suggestion, but we should take care on how we design that. For instance, the cost for the provider would come from the collateral or out of the pocket? Also how would be the functional form for that? Should the provider always pay the same fee on every appeal, or should it use another form like an positive exponential (punishing form) or negative exponential (forgiving form) over time? How much do we want to expose the parameters selection to the marketplace?

We should study how this would take form by taking into consideration the following dimensions:

  • Deals with high collateral per payment
  • Deals with low collateral per payment
  • Deals that has an high number of expected retrievals
  • Deals that has an low number of expected retrievals

I suspect that we're not going to have an "optimal" number for the splitting_fraction. It may even be that the form isn't even linear - eg. miners with low collateral per payment AND high number of expected retrievals may require an forgiving form, while high collateral per payment and low number of expected retrievals can perhaps bear an linear / punishing form.

danlessa avatar Nov 22 '22 12:11 danlessa

If anything, I would say that the current protocol actually incentivizes providers (with some considerations around CapEx and slash risk) to ignore requests from the clients.

why this?

irenegia avatar Nov 22 '22 15:11 irenegia

@irenegia Let's assume that:

  1. The OpEx for the provider to answer an appeal is equal to him to provide an request from the client
  2. The provider has 100% certainty that he is not going to get slashed, so CapEx doesn't matter

Then this implies that the provider has no direct economic incentive at all in answering an client request, as not doing so forgoes him some OpEx. At worst for him, it will result into an appeal, which is marginally equivalent to him to answer an client request.

From the client side, appealing is costly, so we can expect that the expected number of client requests will be lower or equal to the expected number of client appeals conditional on requests not being answered (which is limited by an max amount). In that sense, the provider NPV when only answering appeals will be lower bounded by the NPV when answering all client requests.

Some things that can change this conclusion:

  • The provider OpEx for answering appeals being higher than answering client requests
  • Having negative externalities on the provider (eg. reputation at stake)
  • Appeals introducing costs to the provider
  • Some CapEx at stake (eg. there's an non-null probability of slashing to occur)
  • Referee requests being disguised as client requests

Some things that may re-frame the conclusion:

  • If providers systematically won't answer direct client requests, then appealing will be considered an de-facto way of retrieving storage, which will increase the protocol usage. Clients will tend to use lower payments so that they can bear the cost of appealing more. Things that may increase the client leverage is by allowing him to select an higher number of maximum appeals or an lower committee fee.
    • Over time, we could expect that providers that receives high payments are the ones that DO answer the client requests, so there's an second-order incentive against shirking on clients there.
  • On aggregate, appeal fees are values that could be sent as payments instead, so there's an delicate market balance in there. Providers may be willing to do the "directly irrational thing" in order to collect the reputational benefits of receiving higher payments. Note that this is not explicitly part of the protocol but rather an emerging behavior.

danlessa avatar Nov 22 '22 16:11 danlessa