From 06be48fa0b096ca3e134a61cdbdcefc75237a767 Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Mon, 10 Jun 2024 15:48:21 -0500 Subject: [PATCH] arbitration --- specification/docs/arbitration.md | 38 +++++++++++++++++++++++++++++ specification/docs/publishing.md | 0 specification/docs/system-design.md | 2 +- specification/mkdocs.yml | 10 +++++--- 4 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 specification/docs/arbitration.md create mode 100644 specification/docs/publishing.md diff --git a/specification/docs/arbitration.md b/specification/docs/arbitration.md new file mode 100644 index 0000000..5a1b595 --- /dev/null +++ b/specification/docs/arbitration.md @@ -0,0 +1,38 @@ +```mermaid +sequenceDiagram + +participant complainant as Complainant +participant contract as Disputed Contract +box Arbitration DAO +participant arbitration as Arbitration Contract +participant forum as Forum +participant bench as Bench +end +participant arbitrator as Arbitrator +participant arbitrators as Arbitration DAO Members + +arbitrator ->> arbitration : Stake availability +complainant ->> contract : Initiate dispute +contract ->>+ arbitration : Transfer disputed funds +arbitration ->>+ arbitrator : Assign arbitrator +loop Resolution +arbitrator ->>+ forum : Post resolution +arbitrator ->> arbitration : Submit resolution +deactivate arbitrator +arbitration ->>+ bench : Initiate Validation Pool
Includes portion of disputed funds as fee +bench -->> forum : VP targets resolution post +arbitrators ->> bench : Stake for/against VP +alt VP passes, resolution favors complainant +arbitration ->> complainant : Transfer remaining disputed funds +else VP passes, resolution favors disputed contract +arbitration ->> contract : Transfer remaining disputed funds +else VP fails +arbitration ->> arbitrator : Assign new arbitrator +end +deactivate bench +end %% loop +deactivate arbitration +deactivate forum + + +``` \ No newline at end of file diff --git a/specification/docs/publishing.md b/specification/docs/publishing.md new file mode 100644 index 0000000..e69de29 diff --git a/specification/docs/system-design.md b/specification/docs/system-design.md index 6edf5e6..fdd3a24 100644 --- a/specification/docs/system-design.md +++ b/specification/docs/system-design.md @@ -72,7 +72,7 @@ To achieve the Bench requirements, the contract must do the following: 1. Stake should be rejected if the VP `duration` has already elapsed. - 1. Staking REP means that a DAO member makes an allowance for the given amount of REP to be withdrawn from their balance. The amount of the shall be recorded along with the boolean `inFavor`, but the REP is not to be withdraws from the sender's balance until certain conditions are met durint the evaluation of the VP outcome (explained below). + 1. Staking REP means that a DAO member makes an allowance for the given amount of REP to be withdrawn from their balance. The amount of the shall be recorded along with the boolean `inFavor`, but the REP is not to be withdraws from the sender's balance until certain conditions are met during the evaluation of the VP outcome (explained below). 1. Implement a method for evaluating the outcome of a Validation Pool diff --git a/specification/mkdocs.yml b/specification/mkdocs.yml index 227f0f9..561a7ab 100644 --- a/specification/mkdocs.yml +++ b/specification/mkdocs.yml @@ -17,9 +17,13 @@ markdown_extensions: nav: - Overview: index.md - Terminology: terminology.md - - Requirements: requirements.md - - System Design: system-design.md - - User Stories: user-stories.md + - Generalized DAO: + - Requirements: requirements.md + - System Design: system-design.md + - User Stories: user-stories.md + - Specialized DAOs: + - Arbitration: arbitration.md + - Publishing: publishing.md - Implementation: - Ethereum Prototype: implementation-solidity.md - Casper Production: implementation-casper.md