Previously, we dove deep into BLS12–381, delegation toggle, new Michelson opcodes, and PVSS, which were features under exploration at Metastate.

The purpose of this article is to share details with the rest of the Tezos community on two features under exploration that are improvements of the Tezos governance mechanism: the 5th adoption period and shorter voting periods.

5th Adoption Period

Background

For more in-depth background, see this extensive write-up by bigTezzie on Tezos Agora.

The current Tezos governance process is characterised by its 4 phases: proposal, exploration, testing, and promotion. Considering that each period lasts 8 cycles (~23 natural days), a proposal that successfully undergoes all Tezos governance periods (meeting all quorum and positive supermajority requirements) is automatically adopted via governance after ~2.5 to 3 months.

Nonetheless, a common drawback that developers, bakers, and other stakeholders face is the uncertainty on a proposal’s success through all governance periods, combined with the abridge time left after detecting the latter to adapt existing infrastructures, tools, and applications accordingly. For illustration, consider the following scenario:

  • A proposal X has successfully progressed and is currently undergoing the 4th promotion period, which has the normal quorum and supermajority requirements.
  • Due to arbitrary circumstances, the majority of the bakers are not able to cast their votes until the last 24 hours.
  • If quorum and positive supermajority are met, the Tezos mainnet will switch its version to proposal X.
  • In this case, bakers, developers and other stakeholders would have less than 24 hours to adapt their infrastructure, tooling, and applications.

The Feature

The feature consists of the addition of a 5th governance period named adoption. The adoption period has the same length as the other periods and is automatically initiated after a proposal has successfully undergone the 4th period (promotion). During the adoption period, no voting nor quorum is required. In other words, it is a period-long delay of the new protocol’s activation.

Shorter Voting Periods

Background

A drawback of the current Tezos governance mechanism is its lengthiness, which, moreover, is augmented by the inclusion of the adoption period. Taking into consideration that currently each voting period lasts 8 cycles (~23 days, if a cycle lasts 2 days, 20 hours, and 16 minutes or 2.8444 days), a successful governance iteration on Tezos would require ~92 days. Worse, it would require ~115 days with the additional adoption period.

The Feature

The feature under exploration is shorter voting periods. In short, the modification reduces the length of all voting periods, including the adoption period, from 8 to 5 cycles. This feature alleviates the lengthiness of the governance mechanism without forsaking the advantages of the adoption period. Should this feature be adopted, a successful Tezos governance iteration would last ~71.1111 days or ~2.3379 months:

2.8444 days per cycle x 5 cycles x 5 voting periods = 71.1111 days

Shorter Voting Periods RPC Changes

The feature shorter voting periods required a clearer distinction between level and voting_period. Shorter voting periods comes with the following RPC changes:

  • .../votes/current_period_kind and the two fields {voting_period,voting_period_position} of the RPC .../helpers/level have been marked as deprecated. Note that, even if marked as deprecated, they remain functional and compatible with the predecessor protocol.
  • a new RPC .../votes/current_period, which contains all information related to the current voting period.

Summary

In this article we share the details of two features related to the Tezos governance mechanism that are under exploration.

First, the adoption period, which is a period-length delay of a governance approved (successfully undergone the promotion period) proposal’s activation, facilitating a buffer for developers, bakers, and other stakeholders to adapt their tooling and infrastructure to the new protocol. The second feature is shorter governance periods, which reduces the duration of all voting periods (including the adoption period) from 8 to 5 cycles, thereby alleviating the lengthiness of the governance process without forsaking the advantages of the adoption period.

More Resources

The source code of both features are available under the following link: https://gitlab.com/metastatedev/tezos/-/merge_requests/333

More on Tezos protocol R&D articles and summaries:

  • Metastate’s Tezos protocol upgrades website
  • The Technical Evolution of Tezos article

Image credits: Camels — Photo by Sucheta Basak on Unsplash.

Metastate has ceased its activities on the 31st of January 2021. The team members have joined a new company and working on a new project. If you're interested in distributed systems research and engineering and systems engineering in Rust, checkout the open positions at Heliax.

If you have any feedback or questions on this article, please do not hesitate to contact us: hello@heliax.dev.