KIP Development Courts on xDai

Development Courts

I propose to create a number of new courts on the xDai version of Kleros for use with Feature (but it can be used for any kind of IT freelancing platform).

Tree of Courts Schema

Namely, I propose to create the following xDai courts with the listed parameters:

xDai Development Court

Parameters

Court name : xDai Development
Parent court : xDai General Court
hiddenVotes : false
Proposed juror fee : 25.0 xDai
Proposed minstake : 1400.0 PNK
Proposed alpha : 0.5
jurorsForCourtJump : 63
timesPerPeriod : [280800,437400,437400,291600]

Description

Court Purpose

In this court, jurors will solve disputes involving the respect of specifications given by the client.

Required Skills

This court requires an advanced level of programmation. Jurors who are not senior developers are advised to stake into this court only if they have some basics of low-level programming languages, ​​algorithmic and knowledge of good practices of development.

Example

Developper does not respect indentation, does not name variables explicitly or has not made a clear file structure. In such cases, jurors should refuse the proposal made by the developer.

xDai Solidity Court

Policies

  • If the disputed code is of significant size (> 500 code lines), parties in the dispute should point out specific parts of the content which are being disputed. Otherwise, jurors should refuse to arbitrate.

Parameters

Court name : xDai Solidity
Parent court : xDai Development
hiddenVotes : false
Proposed juror fee : 22 xDai
Proposed minstake : 1400.0 PNK
Proposed alpha : 0.16
jurorsForCourtJump : 63
timesPerPeriod : [280800,437400,437400,291600]

Description

Required Skills

This court requires an advanced level of solidity. Jurors who are not solidity senior developers are advised to stake into this court only if they also know how to make relatively simple contracts, know the main solidity hacks and can compute the complexity of simple functions.

xDai Javascript Court

Policies

  • If the disputed code is of significant size (> 700 code lines), parties in the dispute should point out specific parts of the content which are being disputed. Otherwise, jurors should refuse to arbitrate.

Parameters

Court name : xDai Javascript
Parent court : xDai Development
hiddenVotes : false
Proposed juror fee : 22 xDai
Proposed minstake : 1400.0 PNK
Proposed alpha : 0.16
jurorsForCourtJump : 63
timesPerPeriod : [280800,437400,437400,291600]

Description

Required Skills

This court requires an advanced level of javascript. Jurors who are not javascript senior developers are advised to stake into this court only if they know the main frameworks/libraries (ExpressJs, React, EthersJs…) and be comfortable with testing, APIs or languages to interact with databases.

[UPDATE]

Changes to alpha and minstakes of child courts following @William’s feedback.

1 Like

Interesting. One small point on the proposal: minstakes need to be monotonically non-decreasing as you go down a branch of the court tree, as someone who stakes in a court is also staked in its parent court. So if the xDai Development court has a minstake of 1400 PNK, then the other two child courts need to have at least that large of a minstake. If you want to keep the amount of locked PNK per vote the same, you can adjust the alphas accordingly. For example you could have minstake 1400 PNK, alpha .5 for xDai Development, and then minstake 1400 PNK, alpha .16 for xDai Solidity and xDai Javascript.

2 Likes

Having courts to resolve development disputes seems good but the proposed juror fees seems really low. As a software engineer I can’t see myself allocating the time and effort of reading specifications then reviewing code for 22/25 xDai.

For an European or an American these prices are not interesting but it’s not necessarily the case for developers from Egypt or Morocco where these services are much lower. See Offshore Developers.

Since on Kleros, there is more a lack of disputes than jurors, it is more interesting to give the low range of arbitration fees so that these fees are not a limiting point to use Kleros as arbitrator.

Hey Nicolas, congratulations on building Feature.sh, it looks really promising!

2 Likes

Thanks! Feature is currently in beta version and free for open-source projects :slight_smile:

1 Like

I agree that 22 DAI seems pretty low to solve a software dispute. I think a reasonable amount would be 50 DAI. The dapp using it could start with only 1 juror if cost is a concern.

3 arguments in favor of a relatively low fee :

  • if the bug (or any non respect with the specifications) is already well identified by the challenger, it can be confirmed relatively quickly;
  • if the majority of the cases are about simple cases: basic ICO smart contract, vesting, multisig… it can be relatively fast to understand and detect the error;
  • finally, the third argument is about the Kleros ecosystem. Low arbitrage fees will tend to favor disputes since the commitment is lower. And I make the hypothesis that some senior developers will indirectly see it as a way to support the Kleros ecosystem even if the arbitration fees are low (meta-incentive).

Afterwards, we can iterate to increase the fees if necessary.

Can we “split” the difference with 30DAI ?

We can try with 30 DAI, but in this case I would remove the word “senior” from the skill description.

Ok let’s try this set up!