Doges On Trial — Pilot Explainer

Stuart James
Kleros
Published in
12 min readJul 30, 2018

The Pilot

Doges on Trial is our first cryptoeconomic experiment on the Ethereum mainnet. It’s based on Kleros’ curated list application, which is a key area of research within the decentralized ecosystem.

This post will focus specifically on how to use the interface and interact with the experiment. To read more on the pilot including an in-depth explanation, follow this link and for a video explainer of the interface watch this and this.

Disclaimer (Sort of). The guide may seem a little complex but bear with it. Remember you’re experimenting with advanced civic technology which may well be a cornerstone of the future blockchain ecosystem.

Key links

Doges on Trial listing and submitting = https://dogesontrial.dog/

Juror Interface = https://juror.kleros.io/

The Full Flow:

The full flow chart for the Doge List. Notice, even after an image is accepted (for example a cat) there can still be an appeal on that outcome.

Where’s the Dapp and what does it look like?

The Doges on Trial experiment is made up of two different sections: the List Interface (where users submit and challenge images) and the Juror Dashboard (where users act as jurors on disputes about images).

Let’s start with the List Interface. Go to dogesontrial.dog and you will see a page like the one below (remember you need to have a Web3 browser like MetaMask to see the page. To learn more, read this post). Here you can see a list of pictures already submitted by the community.

You will see colored dots on the top right of the images.

Green = The image was accepted into the list.

The green dot indicates that the image was accepted into the list.

Yellow = The image was flagged by a prosecutor and is now under trial. Kleros jurors are currently evaluating the evidence and will produce a decision.

The yellow dot indicates that the image is currently under trial.

Blue = The image is in the “challenging period”. It was neither accepted nor challenged.

The blue dot indicates that the image was neither accepted nor challenged.

There are three different roles users can play in the Doges on Trial experiment:

  1. Submitter
  2. Prosecutor
  3. Jurors

Submitter

The role of Submitters is to submit images and try to have them accepted into the list. There are economic incentives for them to do so (to learn more about these economic incentives, read this post).

Here’s a brief video overview of this part of the interface.

To submit an image, click on the ‘Submit Doge’ button in the top right of the screen.

Click here in order to submit a Doge to the list.

You will be presented with an uploader box as shown below.

In this screen, you can submit your image to the Doge list.

Click ‘Browse Image’ to search for the image in your file system (or alternatively, drag and drop the image you want to submit). In this example we used the image directly below.

This is the image we chose to submit to the Doge list.

In order to submit your image, you will have to pay a deposit fee in ETH. The deposit will be refunded if your image is accepted. If your image is challenged, the prosecutor will have to submit an equal amount of ETH to send the image to trial. The outcome of that trial will be decided by Kleros’ jurors. More on this, in the next section.

Image successfully uploaded and awaiting gas fee.

Once your image is uploaded, the grayed out ‘Submit Doge’ button will change to blue and you will see your image layered underneath the ‘Upload’ icon.

Click the ‘Submit Doge’ button now.

After you click on ‘Submit Doge’ a MetaMask pop up will appear for you to sign the transaction.

Once you have clicked the ‘Submit’ button, MetaMask popup will appear. Now you need to add the file into the Ethereum blockchain. Check the details and then click ‘Confirm’ to finalize the transaction. Remember, you need to have ETH in your MetaMask in order to pay the transaction fee (more about this, in this post). The transaction could take some seconds for processing. Please, be patient and remember: you’re dealing with really experimental technology.

If all goes well you’ll be greeted with this message.

Now the image should be in the list. If for any reason you get an error, it’s most likely to be a problem with the gas fee or some congestion in the Ethereum network. If you’re unsure, you can visit our Telegram to ask for support.

Stage one completed. Successfully submitted image.

Nice, part one is done. The image was successfully submitted and now should appear into the list with a blue dot, signifying it has not yet been accepted and is still available to challenge.

Prosecutor

The role of Prosecutors is to challenge submissions they think do not comply with the rule of being a Doge image.

If you see an image on the list that is not a Doge (and thus have no right to be accepted), you can challenge it and send it to trial. By doing this, three things will happen.

  1. You will pay an equal ETH fee as the submitter to send the image to trial (think of this as the court fee. You will get it back if you win).
  2. Kleros jurors will be randomly selected to judge the image. They will be compensated with funds lost by the losing party.
  3. The prosecutor if they win, will gain 0.03ETH.
We’re going to send our own Doge on trial. Much Betrayal!

Click ‘Send to Trial!’ in order to challenge this image. Again, the MetaMask popup will appear for you to pay the ETH fee necessary to challenge the image.

This time the images will be shown behind the Metamask Confirmation popup.

Double check the details in MetaMask and click ‘Confirm’ to sign the transaction.

See you in court, Shiba!

Once the transaction has gone through, you will see that the image has changed status in the list: it’s now ‘Under Trial’. The total deposited ETH is now double the initial cost of the submission (it now includes the amount deposited in the initial submission and the amount deposited for the challenge).

Now the image will await trial on Kleros juror side. Until that moment the ETH will remain locked and the image will be in an ‘Under Trial’ state as indicated by the yellow dot now showing over the image.

Juror

There was no Doge Dredd on the internet… Until now.

Let’s go now to the Juror Dashboard, where jurors will arbitrate on cases. For a video explainer of the juror process check the video below.

The Juror Dashboard. Here you can see your notifications about open, pending and closed cases. This is also where you will deposit your PNK in order to be drawn as a juror.

In order to be drawn as jurors, users need some PNK (Pinakion) which is our native token (to find out more about how PNK works for juror selection and incentives, read our white paper). If you don’t have any PNK yet head over to IDEX where you can pick some up.

Get Your PNK Ready

The first thing you need to do is to load your PNK into the Kleros contract which makes them available for you to use as a juror. For this, go to the Juror Dashboard and click on the ‘Tokens’ link in the menu bar.

In this screen, you can transfer your PNK to Kleros’ contract, which will make them available for you to use them to be drawn as a juror and arbitrate disputes.

Enter the amount of PNK you want to transfer (we recommend at least 1000 PNK) and click ‘Transfer PNK’. A MetaMask popup will open for you to send the transaction. Once your tokens have arrived they will appear as shown below.

PNK Successfully transferred to the contract.

Now your tokens are available for you to use. If you want to be drawn as a juror in disputes, you need to deposit them into the court (by the way, did you know that this system is inspired by how courts used to work in Ancient Athens? To learn more, read this post).

Go back to the ‘Home’ screen of the juror. On the left. now it says 1000 PNK, which is the amount of tokens available for you to deposit. So now go ahead and click on the small blue ‘Deposit’ button.

Click on the blue button to deposit PNK in order to be randomly drawn as a juror.
In this window, you can select how many tokens to deposit.

A window will appear asking how many you want to deposit. There is no ‘set amount’ of tokens you need to deposit in order to be drawn as juror (although the minimum amount to deposit is 800 PNK). Your chances of being drawn will depend on how many tokens other users are willing to deposit. If some users deposit a large amount of PNK (20,000 for example) they will have a much larger chance of being drawn to arbitrate than a juror who deposits 1000 PNK (if you want to learn more about how selection works, read our white paper).

Let’s go ahead and deposit some PNK by clicking ‘Deposit PNK’.

1000 PNK have been deposited, giving the user the possibility of being drawn as juror.

Now we can see that 1000 PNK has been deposited (the full blue circle). If you’ve reached the stage above, great, you’re good to go.

Periods

In this early version of Kleros, court sessions will have a duration of 84 hours, during which users will be able to conduct different actions.

1) Users submit images to the list.

2) Challenge period (1 day).

This is the time that prosecutors have to challenge images.

Note: You can challenge at any time via the Doge List interface and the dispute will be automatically scheduled for the next session.

3) Deposit period (1 day).

Users can only deposit PNK during some pre-defined time frames (think of these as the court office hours). After all PNK were received for the period, the random selection of jurors takes place.

4) Ruling period (36 hours).

This is the time that drawn jurors have to produce a decision.

5) Appeal period (23 hours).

This is the time users will have to appeal rounds.

6) Execution period (1 hour).

During this period, the court executes rounds. Funds in ETH and PNK are redistributed.

From the beginning to the end, the session will have a duration of 84 hours. We know this can be hard to follow by users. So we will announce it on a regular basis in our Telegram group and our forum.

Of course, this design works like this just because this is an early version of Kleros. In future versions, users will be able to deposit PNK at any time and the user flow will be much more friendly.

Our Periods in visual form

OK, so what’s next?

During the ‘Deposit’ period, you will be able to deposit your PNK to be able to be randomly drawn as juror.

As explained above. Here you can deposit your PNK

After the deposit is done and the court session moves to the ‘Ruling Period’, users are drawn to arbitrate disputes on the challenged images. If you go to the ‘Disputes’ screen of your juror dashboard, you will see the cases in which you have been drawn as a juror.

Dispute Dashboard showing two cases that the juror has been selected to arbitrate.

You will see in the ‘Status’ column these current cases are ‘Pending’ meaning they have yet to be ruled. Let’s click on one and open it now.

An open case awaiting judgement.

Each challenged image will show the information as displayed above including the parties involved, the category and the arbitration fee.

Below you will see the image in question to be ruled on and a simple ‘Yes /No’ choice. Is the image a Doge? Yes or no.

After you have voted, you can relax. The ‘Ruling Period’ lasts for 36 hours, which should be enough time for all jurors to analyze the evidence and cast their vote.

The Decision

After the ‘Ruling Period’ has completed, you will be able to view the outcome of your cases.

The jury decided unanymously (3 votes to 0) that this image is a Doge.

In this case, all 3 jurors voted to accept this image as a Doge. This means that, provided there is no appeal, it will be accepted into the Doge list. (More on this, below). Since all jurors voted coherently, there is no PNK redistribution between them. They will all recover the PNK they deposited in order to be drawn as jurors.

Let’s look at a different case, where one juror votes that the image is a Doge and two jurors vote that it isn’t.

This screen shows PNK redistribution from the incoherent juror to the coherent jurors.

As per Kleros’ incentive mechanism, there will be a PNK redistribution from the incoherent juror to those who were coherent (again, to learn more about how incentives work, read our white paper).

Appeal Stage

Once the 36 hour ruling period has ended, the session moves into the appeal stage. This allows any Submitters or Prosecutors who disagree with the jurors’ decision to appeal the ruling. For this, you will have to deposit ETH once more to open the appeal case.

The appeal will then be sent through the same dispute cycle as illustrated above. The appeal system allows users to have their image rejudged on the basis they believe the initial decision was made erroneously.

Execution

Finally, we move into the execution period. This is the final stage in the session. All images accepted as Doges will be listed, and those that were rejected by jurors are declined.

Cases in your juror panel interface will now have changed status as shown below.

At this point the stake of the losing party is given to the other and the image is rejected if the prosecutor wins. The image can also be rechallenged at this point so even if you were to get a cat accepted, the possibilty to challenge is still open.

The infographic below can show you the full dispute and listing process.

Here we can see the prosecutor can appeal even after the image is ruled ‘yes’ to being a doge.
Cases are now shown as ‘Resolved’.

The End

Well done! You made it to the end of the tutorial. Should you have any questions, come to our Telegram group and we will be happy to assist you.

The future of justice is built on these experiments so from all the Kleros team, thanks for taking part!

Payout Policy

The Doges on Trial experiment runs on the Ethereum Mainnet with real ETH in order to test how agents respond to economic incentives.

  • The payout policy of the experiment is defined as follows: A total of 1,000,000 Doge Coins (DOGE) will be split among submitters in proportion to the amount of unique doge pictures they get accepted into the list.
  • One cryptokitty and 2 ETH will be paid for each of the first 10 cat pictures accepted into the list.
  • To be considered valid, a picture must clearly display a doge or a cat. Pictures with hidden doges or cats will not be considered as valid if a normal observer would not be able to see it without help (e.g., an image with a doge only a few px large would not be considered valid, because an observer would be unable to see it with plain sight).
  • If a picture is submitted multiple times, only the first one will be considered valid.
  • Pictures which are only a slight modification of a previously submitted picture will not be considered valid.
  • Pictures which contain both a doge and a cat will not be considered valid.
  • Coopérative Kleros’ team will have the final decision on wether a picture is valid or not for the purpose of the payout.
  • Coopérative Kleros’ team can decide, at its sole discretion, to change any parameter of the experiment to fulfill its research goals.
  • By participating in the Doges on Trial experiment, you agree to all these conditions.

Join Kleros!

Join the community chat on Telegram.

Visit our website.

Follow us on Twitter.

Join our Slack for developer conversations.

Contribute on Github.

--

--