Quebec A (PsquebeCa)

This is a joint post from Nomadic Labs, TriliTech, & Functori.

Following the activation of the Paris protocol upgrade on June 4th, we are pleased to announce the Quebec protocol proposal is ready. This protocol proposal builds upon the major contributions introduced by Paris and delivers milestones from the recently unveiled road to Tezos X.

A few weeks ago, we posted a feedback request on Tezos Agora focusing on one of Quebec’s prospective features: the introduction of an adaptive maximum bound for Adaptive Issuance.

Based on the community’s feedback we have decided to prepare two variants for the Quebec proposal. Both Quebec A and Quebec B bring forward:

  • 8 second block times: As the current 10 second block times on Tezos layer 1 have proven to be stable and safe, Quebec A and B propose to take the next step and reduce minimal block times by a further 2 seconds. Should either of the variants be adopted by the community, layer 1 finality would be reduced to 16 seconds, improving overall user experience, and setting the foundations for a lower-latency future for Tezos layer 1.
  • An adaptive maximum issuance bound: This new component of the Adaptive Issuance mechanism makes maximum issuance bounds dependent on the staked ratio. It prevents potential future scenarios where a stagnation of global staked tez close to the target ratio could lead to undesirably high issuance rates. Both Quebec A and B include the same definition of the adaptive maximum curve, which was updated after the feedback gathered from the discussion on Tezos Agora.
  • An amended computation of delegation rights: both Quebec variants amend the mechanism to compute baker’s minimal delegated balance in a cycle introduced in Paris, addressing the unexpected dilution of delegated rights observed in practice and the UX frictions for bakers and delegators.

The Quebec B variant includes all features of Quebec A and also proposes to reduce the relative weight of delegated funds in the computation of baking power to one third of their nominal value (from, currently, one half).

As usual, the two protocol proposal variants’ true names are given by their hash, PsquebeCaYyvBEESCaXL8B8Tn8BcEhps2Zke1xMVtyr7X4qMfxT for Quebec A and PsQuebecBo3zZmhQT7KdEQ2RRDtncE6gQFRPgwkKEyC1ea995G1 for Quebec B.

In the rest of this post, we expand on the features highlighted above. The Quebec protocol upgrade proposal includes further minor contributions. Please see the protocol proposal’s Changelog for a complete list, including breaking changes.

But before we dive deep into the technical details, we want to thank all Tezos ecosystem members who have provided feedback on the proposed changes in Quebec on the feedback request on Agora, and also on many discussions elsewhere. We believe the resulting Quebec A and Quebec B proposal variants have benefited positively from these discussions, and we look forward to increasing the participation in these feedback channels in the upcoming protocol proposals.

8 second block times (Quebec A and Quebec B)

As recently explained while unveiling the road to Tezos X, the current 10 second block times are not the final target of recent optimization work on Tezos layer 1, but rather a stepping-stone towards more ambitious goals.

Following the same benchmark and testing methodology used for evaluating the safety of reducing minimal block time to ten seconds in Paris, the experiments conducted for Quebec give us enough confidence to take the next step. Quebec proposes then to reduce minimal block times on Tezos layer 1 to 8 seconds.

As it was the case before, this reduction does not entail any major hardware updates for Tezos bakers. We stand by our core belief that bakers should be able to take part in Tezos consensus with affordable, lower-end infrastructure, preserving community-inclusive decentralization as Tezos evolves.

Our experiments included minimal setups with the following specifications, unchanged from the previous iteration for Paris:

  • 3 CPU cores
  • 8GB RAM + 8GB swap (or 16GB RAM)
  • 100GB SSD storage (or similar I/O performance)
  • A low latency reliable internet connection

Note that for bakers relying on Ledger hardware wallets to sign consensus operations and blocks, we recommend using Ledger Nano S+ hardware wallets — our experiments show they perform significantly better than the older Nano S model.

Adaptive maximum issuance bound (Quebec A and Quebec B)

On cycle 748, the Tezos blockchain activated Adaptive Issuance and Staking, implementing a major overhaul of its Proof-of-Stake fundamentals. The Tezos economic protocol is now able to automatically adjust issuance to match the security budget of the chain.

The novel mechanism continuously adjusts participation rewards based on a target ratio of staked tez out of the total supply, set at 50%. When the ratio is below the target, the protocol increases the value of participation rewards to encourage staking. When it’s above the chosen target, the protocol reduces them to minimize dilution.

The issuance rate is bounded by progressive maximum and minimum rates. They determine the acceptable limits for the issuance rate as a function of the time elapsed since the activation of Adaptive Issuance (that is, from cycle 748). Given the constants currently set on Tezos mainnet, after approximately six months will have passed (that is, from cycle 808 onwards), the progressive maximum bound will be set to a constant value of 10%. This could lead to scenarios where issuance rate can grow undesirably high, even when the staked ratio is close to the 50% target. For example, it would be possible to have a nominal issuance rate of 5.5%, for a then-current 40% staked ratio.

Quebec A and B address this issue by incorporating a complementary adaptive maximum that is decreasing smoothly when the distance to the target staked ratio decreases. As shown on the plot below, the closer we are to the target staked ratio, the lower the adaptive maximum bound is:

Adaptive maximum in Quebec A and B protocol proposal variants.

The formula for the adaptive maximum bound, which was revised following the community’s feedback on the original proposition, is the same for both Quebec A and B:

adaptivemaximum(r)=1 + 9 ⋅ (50 − 100 ⋅ r42)2100adaptivemaximum(r)=1 + 9 ⋅ (50 − 100 ⋅ r42)2100

This translates to the following (approximate) values for a few selected staked rated ratios:

Staked ratio 5% 10% 20% 30% 40% 50%
Adaptive maximum issuance (approx.) 10% 9.2% 5.6% 3% 1.5% 1%

Regardless of the value of the new adaptive maximum bound, the final issuance rate will never be below the progressive minimum rate. This prevents issuance from dropping to undesirably low rates.

We refer to the Quebec A documentation for further detail on the adaptive maximum – Quebec B implements the same mechanism with the same values.

Amending the computation of minimal delegated balances (Quebec A and Quebec B)

Both Quebec A and B variants amend the mechanism introduced in Paris to compute the share of baking rights arising from delegated funds, which dynamically computes the minimum of the total delegated funds within a cycle. Notably, the Tezos protocol considers the immediate effects of all operations in a block and can reach the minimum during the execution of an operation batch or internal operations from smart contracts. This change led to difficulties in adjusting existing tooling and caused a dilution of baking rights when two accounts delegated to the same baker transferred between them relatively large sums of tez.

Quebec A and B address this issue by updating the baker’s minimal delegated balance in the cycle only after all operations in a block have been applied. As a result, bakers do not see their baking rights reduced when large amounts are transferred between two accounts delegating to them, and the computed values are easier to assess and understand for bakers and delegators alike. Please see this documentation entry for further details, including examples and an explanation of the updated specification of the min_delegated_in_current_cycle RPC endpoint.

Call to action

Each Quebec protocol proposal variant and its associated baker and accuser binaries, is included in a dedicated release candidate for Octez v21.0, Octez v21.0~rc1 (includes Quebec A) and Octez v21.0~rc2 (includes Quebec B), released earlier today.

We invite all bakers and tooling and application providers to test the Quebec protocol proposal, and to reach out to us with any issue or concern. Dedicated protocol test networks for each of Quebec A and B, quebecAnet and quebecBnet, will be announced soon.

We want to thank again all the ecosystem members who have shared their feedback on Quebec features on Tezos Agora and elsewhere. The Quebec protocol proposal has benefited greatly from your input.

Quebec is the next exciting step towards delivering the milestones we set on our road to Tezos X — let’s continue leading the way together!

1 Like