kleros / kleros-v2

Kleros version 2
https://v2.kleros.builders
MIT License
61 stars 43 forks source link

Rule in favor of the side who funded the appeal if only 1 side funded #416

Closed jaybuidl closed 1 year ago

jaybuidl commented 1 year ago

Appeals in the Arbitrables for v1

The Arbitrables integrated with Kleros v1 are currently implementing this behavior, as seen in this example:

// If one side paid its fees, the ruling is in its favor.
// Note that if the other side had also paid, an appeal would have been created.
Round storage round = arbitration.rounds[arbitration.rounds.length - 1];
if (round.fundedAnswers.length == 1) finalRuling = round.fundedAnswers[0];

Source

Question

Currently this is not implemented in v2. Do we want this as the default behavior for appeals?

Possible implementation

Inside DK.currentRuling(): check that the appeal period is over, if only 1 side is funded, override the ruling. It gets already picked up by KC.executeRuling() -> KC.currentRuling() -> DK.currentRuling().

jaybuidl commented 1 year ago

Extra context by @whwgeorge

To recall/to be clear, the current v1 situation for most of the arbitrables is that if: 1) the jurors rule for option A, 2) someone crowdfunds for B but 3) no one crowdfunds for A so there is no appeal, then the arbitrable interprets B as having won but Kleros interprets A has having won. Namely, challengers, submitters, parties to escrows, etc all are rewarded or penalized as if B had won, but a juror that voted for B is seen by Kleros as having been incoherent and is penalized while juror that voted for A are rewarded.

We want to change this in v2 so that, in the above example, both the arbitrable and Kleros see B as winning. This is a big part of why we want to move the appeal logic to the arbitrator side. So it is not only still a desired feature that if only 1 side funds the appeal, the ruling should be overridden from the point of view of the arbitrable contract, but now the ruling should also be overridden for juror incentivization.

My understanding was that the logic around how appeals are triggered was part of the dispute kits. So on some level you would also expect this to also be there.