Skip to content

Commit

Permalink
BSIP47: Clarifications to merger validations
Browse files Browse the repository at this point in the history
  • Loading branch information
MichelSantos authored Sep 18, 2019
1 parent 418694d commit 419b355
Showing 1 changed file with 15 additions and 9 deletions.
24 changes: 15 additions & 9 deletions bsip-0047.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,34 +135,40 @@ _Committee validation checks_
* If `committee_voting_account` is present
* Let `new_committee_account` = `committee_voting_account`
* otherwise
* Let `new_committee_account` = `account_options.committee_account`
* Let `new_committee_account` = `account_options.committee_voting_account`
* `num_committee`, if present, is only allowed when:
* `new_committee_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`, and
* 0 ≤ `num_committee` ≤ size of new committee slate ≤ `chain_params.maximum_committee_count`
* If `num_committee` is present
* Let `new_num_committee` = `num_committee`
* otherwise
* Let `new_num_committee` = `account_options.num_committee`
* The _committee_ `votes_to_add`,`votes_to_remove`, and `num_committee`, if present, are valid:
* if `new_committee_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`, and
* if 0 ≤ `new_num_committee` ≤ size of new committee slate ≤ `chain_params.maximum_committee_count`
* Non-empty _committee_ `votes_to_add` and `votes_to_remove` are only allowed when:
* `new_committee_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`, and
* 0 ≤ `new_num_committee` ≤ size of new committee slate ≤ `chain_params.maximum_committee_count`

_Witness Validation Checks_
* Let the new witness slate consist of the current witness slate plus the witness `votes_to_add` minus the witness `votes_to_remove`
* If `witness_voting_account` is present
* Let `new_witness_account` = `witness_voting_account`
* otherwise
* Let `new_witness_account` = `account_options.witness_account`
* Let `new_witness_account` = `account_options.witness_voting_account`
* `num_witness`, if present, is only allowed when:
* if `new_witness_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`, and
* if 0 ≤ `num_witness` ≤ size of new witness slate ≤ `chain_params.maximum_witness_count`
* If `num_witness` is present
* Let `new_num_witness` = `num_witness`
* otherwise
* Let `new_num_witness` = `account_options.num_witness`
* The _witness_ `votes_to_add`,`votes_to_remove`, and `num_witness`, if present, are valid if:
* if `new_witness_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`, and
* if 0 ≤ `new_num_witness` ≤ size of new witness slate ≤ `chain_params.maximum_witness_count`
* Non-empty _witness_ `votes_to_add` and `votes_to_remove` are only allowed when:
* `new_witness_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`, and
* 0 ≤ `new_num_witness` ≤ size of new witness slate ≤ `chain_params.maximum_witness_count`

_Worker Validation Checks_
* If `worker_voting_account` is present
* Let `new_worker_account` = `worker_voting_account`
* otherwise
* Let `new_worker_account` = `account_options.witness_account`
* Let `new_worker_account` = `account_options.worker_voting_account`
* The _worker_ `votes_to_add` and `votes_to_remove` are valid:
* if `new_worker_account` = `GRAPHENE_PROXY_TO_SELF_ACCOUNT`

Expand Down

0 comments on commit 419b355

Please sign in to comment.