package tezos-protocol-006-PsCARTHA
Only delegates with at least one roll take part in the amendment procedure. It works as follows:
- Proposal period: delegates can submit protocol amendment proposals using the proposal operation. At the end of a proposal period, the proposal with most supporters is selected and we move to a testing_vote period. If there are no proposals, or a tie between proposals, a new proposal period starts.
- Testing_vote period: delegates can cast votes to test or not the winning proposal using the ballot operation. At the end of a testing_vote period if participation reaches the quorum and the proposal has a supermajority in favor, we proceed to a testing period. Otherwise we go back to a proposal period. In any case, if there is enough participation the quorum is updated.
- Testing period: a test chain is forked for the lengh of the period. At the end of a testing period we move to a promotion_vote period.
- Promotion_vote period: delegates can cast votes to promote or not the tested proposal using the ballot operation. At the end of a promotion_vote period if participation reaches the quorum and the tested proposal has a supermajority in favor, it is activated as the new protocol. Otherwise we go back to a proposal period. In any case, if there is enough participation the quorum is updated.
val may_start_new_voting_period :
Alpha_context.context ->
Alpha_context.context
Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.t
If at the end of a voting period, moves to the next one following the state machine of the amendment procedure.
val record_proposals :
Alpha_context.context ->
Alpha_context.public_key_hash ->
Tezos_protocol_environment_006_PsCARTHA.Protocol_hash.t list ->
Alpha_context.context
Tezos_protocol_environment_006_PsCARTHA.Error_monad.tzresult
Tezos_protocol_environment_006_PsCARTHA.Lwt.t
Records a list of proposals for a delegate.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>