Free Market Dispute Resolution: {{Regarbitrator}} / {{Regforum}} — Request for Comments

Kevin Rose
EOS New York
Published in
7 min readSep 19, 2018

This post is a follow-up to our previous article which outlines our vision for a free-market dispute resolution system on EOS.

The post can be read here.

EOS New York has finished coding the system-level additions of {{regarbitrator/regforum}}. Thank you to HK EOS for providing feedback and contributing to its completion. We are requesting comments from the community and will review any feedback submitted to our repository. After feedback has been integrated within a reasonable timeframe we will submit a pull request and request a referendum. The readme is as follows:

eosio.arb

The eosio.arb contract allows for forums and arbitrators to register their information on-chain.

Dependencies:

To build the contract:

  • First, ensure that your eosio is compiled to the core symbol for the EOSIO blockchain that intend to deploy to.
  • Second, make sure that you have sudo make installed eosio.
  • Third, make sure that you have built and installed eosio.cdt
  • Run eosio-cpp /path/to/eosio.arb.cpp -o /path/to/build/directory/eosio.arb.wasm The naming convention is system_arb::actionname followed by a list of paramters.

After build:

  • Use cleos to set contract by pointing to the previously mentioned build directory.

Actions

regforum

Required authority: Forum account owner

Parameters: account_name forum, eosio::public_key forum_key, string url

Description: Register an account as a forum. All fields required. RAM is billed to the forum’s account. Account is added to the forums table.

unregforum

Required authority: Forum account owner

Parameters: account_name forum

Description: Remove account from the forums table.

regarb

Required authority: Account owner

Parameters: account_name arbitrator, eosio::public_key forum_key, string url

Description: Register an account as a arbitrator. All fields required. RAM is billed to the arbitrator’s account. Account is added to the arbitrators table.

unregarb

Required authority: Account owner

Parameters: account_name arbitrator

Description: Remove account from the arbitrators table.

Tables

You can find information on the tables using cleos:

cleos get table <contract account> <contract account> <table name>

forums

Description: Table of forums. Indexed by forum account name.

Code: _self

Scope: _self

arbitrators

Description: Table of arbitrators. Indexed by arbitrator account name.

Code: _self

Scope: _self

Ricardians

Action — {{regarb}}

Description

The regarbitrator agreement serves to create a database of professionals who offer their services for on-chain dispute resolution as well as a method for these professionals to be identified by the EOS blockchain and Block Producers. Inspiration for this language comes directly from American Bar Association Code of Ethics for Arbitrators in Commercial Disputes.

The intent of the {{ regarb }} action is to register an account as a valid candidate for arbitrating the resolution of an agreement pertaining to property on the EOS Mainnet Blockchain {{ chain_id }}.

I, {{arbitrator}}, hereby nominate myself for consideration as a valid arbitrator for dispute resolution services deriving from on-chain disputes.

If {{arbitrator}} is selected to provide dispute resolution services by consenting parties, I will sign all messages with {{arbitrator key}} and I hereby attest that I will keep this key secret and secure.

If {{arbitrator}} is unable to perform obligations under this contract I will resign my position by resubmitting this contract with the null arbitrator key.

I, {{arbitrator}} hereby agree to only use {{arbitrator_key}} to sign messages if accompanied by the cryptographic hash of the set of rules for dispute resolution used to resolve the dispute and to only communicate on-chain directly with {regforum} for which I am associated.

I, {{arbitrator}} agree to maintain the following information on {{chain_id}} which can be accessed by any EOS member; (1) Location (2) Fee Schedule (If independent) (3) Area(s) of Expertise (4) Language(s) (5) EOS Account Name

I, {{arbitrator}} agree that I can serve impartially; (1) that I can serve independently from the parties, potential witnesses, and the other arbitrators; (2) that I am competent to serve; and (3) that I can be available to commence the arbitration in accordance with the requirements of the proceeding and thereafter to devote the time and attention to its completion that the parties are reasonably entitled to expect.

I {{ arbitrator }} will avoid entering into any business, professional, or personal relationship, or acquire any financial or personal interest, which is likely to affect impartiality or which might reasonably create the appearance of partiality.

For a reasonable period of time after the decision of a case, I {{ arbitrator }} will avoid entering into any such relationship, or acquire any such interest, in circumstances which might reasonably create the appearance that I have been influenced in the arbitration by the anticipation or expectation of the relationship or interest.

I, {{ arbitrator }} will conduct myself in a way that is fair to all parties and will not be swayed by outside pressure, public clamor, and fear of criticism or self-interest. I will avoid conduct and statements that give the appearance of partiality toward or against any party.

{{ arbitrator }} authority is derived from the EOS Constitution. I will neither exceed that authority nor do less than is required to exercise that authority completely. Where the agreement of the parties sets forth procedures of a specific on-chain forum to be followed in conducting the arbitration or refers to rules to be followed, it is the obligation of the arbitrator to comply with such procedures or rules so long as they do not conflict with the ratified EOS Constitution. An arbitrator has no ethical obligation to comply with any agreement, procedures or rules that are unlawful or that, in the arbitrator’s judgment, would be inconsistent with the EOS Constitution.

I, {{ arbitrator }} will conduct the arbitration process so as to advance the fair and efficient resolution of the matters submitted for decision. I will make all reasonable efforts to prevent delaying tactics, harassment of parties or other participants, or other abuse or disruption of the arbitration process.

The ethical obligations of {{ arbitrator }} begin upon acceptance of an agreement to arbitrate a dispute and continue throughout all stages of the proceeding. In addition, as set forth in this contract, certain ethical obligations begin as soon as a person is requested to serve as an arbitrator and certain ethical obligations continue after the decision in the proceeding has been given to the parties.

Once I, {{ arbitrator }} have accepted an agreement to arbitrate a dispute, I will not withdraw or abandon the position unless compelled to do so by unanticipated circumstances that would render it impossible or impracticable to continue. For where I am to be compensated for my services, I may withdraw if the parties fail or refuse to provide for payment of the compensation as agreed.

If I, {{ arbitrator }} withdraw prior to the completion of the arbitration, whether upon my initiative or upon the request of one or more of the parties, I will take reasonable steps to protect the interests of the parties in the arbitration, including return of evidentiary materials and protection of confidentiality.

Where I, {{ arbitrator }}, are contracted directly by parties to a dispute I will communicate any award resulting from such a dispute on-chain to elected Block Producers from account ID {{ arbitrator }}. Proof of consent to arbitrate will accompany any such award.

Action — {regforum}

Description

The Regforum agreement serves to create a database of arbitration forums willing to do business on EOS as well as serve as a means for the EOS blockchain and Block Producers to identify them. This language was based on the American Arbitration Association and the International Center for Dispute Resolution.

The intent of the {{ regforum }} action is to register an account as a recognized organization which administers the process of arbitration of disputes on the EOS Mainnet blockchain {{chain ID}}.

{{ forum }} will provide effective, efficient, and economical methods of dispute resolution to the token-holders of the EOS Mainnet Blockchain.

{{ forum }} will administer arbitration cases but not determine the merits of a case. {{ forum }} will neither write arbitrator awards nor review the merits of their reasoning.

{{ forum }} will provide a method of judicial oversight for arbitrator impartiality.

{{ forum }} will maintain a website which will include therein a fee schedule, online case access, and an up to date set(s) of rules for dispute resolution under which {{ forum }} will administer.

{{ forum }} agree to maintain the following information on {{chain_id}} which can be accessed by any EOS member;

URL of Main Website URL of Rules of Dispute Resolution URL of Fee Schedule EOS Account ID Complete list of member {{regarb}} {{ forum }} will be responsible for the timely on-chain communication transmission to EOS elected Block Producers regarding arbitrator awards. Any award communicated will be accompanied by on-chain proof of parties’ consent to arbitrate using the rules under which the award was authored.

Arbitrators that are members of {{ forum }} roster will be bound by and signatories of the regarbitrator agreement.

EOS New York is a Top 21 Block Producer on the EOS Mainnet Blockchain

Website
Twitter
Medium
STEEM
Meetup
Telegram
Weibo
Bihu

--

--

Kevin Rose
EOS New York

Former EOS Block Producer. Now Windranger / BitDAO