Hi folks! The Builder’s Council has met and decided to vote FOR on the Mainnet upgrade to alpha v 0.12.0, with some remarks to improve the process and level of confidence in future release. We’re excited about the increase in TPS!
Context
- The Builders’ Council is an assembly of 17 builders selected by the Starknet foundation for their contribution to the Starknet ecosystem (Builders Council post).
- The Builders’ Council holds 1.2Bn worth of voting power, representing 23% of the voting of the 1st phase of Starknet governance (First Phase of Governance post), delegated to this address: builderscouncil.starknet.eth.
- Voting happens with a single majority vote among the 17 voters, according to the criteria below.
Voting method
- Each member of the builder votes FOR/AGAINST/ABSTAIN on the following criteria, then gives a final vote (FOR/AGAINST/ABSTAIN)
- Stability: is the upgrade usable and stable enough in terms of usage, documentation and tooling?
- Features: does this upgrade introduce interesting features that would enable new capabilities on Starknet? Are they sufficiently tested?
- Security: Does this upgrade provide the sufficient level of reassurance that it will not introduce security risks to the Starknet network?
Voting results
- Stability:
- FOR: 15
- ABSTAIN: 2
- AGAINST: 0
- Features:
- FOR: 17
- ABSTAIN: 0
- AGAINST: 0
- Security:
- FOR: 11
- ABSTAIN: 6
- AGAINST: 0
- Final vote:
- FOR: 16
- ABSTAIN: 1
- AGAINST: 0
Comments
The Builder’s Council is excited about the new features and performance improvements introduced by alpha v 0.12.0. Council members have been able to attest that Starknet’s testnet is indeed significantly faster with this upgrade and are excited to see these improvements carry over to mainnet. The Rust rewrite of key components does not only improve the current performance but will help reap incremental improvements in the future. This is why the Council has unanimously voted FOR this upgrade and would like to thank the StarkWare and LambdaClass teams for their work which will bring Starknet to new heights.The Council also notes improvements in the communication of the release and the scheduling of the vote on this second community-enabled upgrade. The Council would like to point out that an issue with the RPC was identified during the launch to testnet and, in our mind, should have been avoided with better testing and communication. Part of the release notes are still lacking in documentation and reflect poorly on an otherwise anticipated release. Finally, the Council would like to stress that, although benchmarks have been shared by the StarkWare team, the lack of testing on real use cases using mainnet data reduces the actual improvements that will be reaped with production apps on mainnet. As far as the Council knows performance tests were performed using ERC20 transaction tests, but Starknet, thanks to account abstraction and high computation capacity, needs to ensure that complex transactions and multicalls can improve as well. The Council will expect a clear set of benchmarks to be used every upgrade to better track speed improvements and increase confidence in its votes. Please find below the action points a list of benchmarks the Council would recommend for future upgrades.
Action points
Issue | Proposed remediation |
---|---|
RPC specifications not up to date | Crema, Clément, rmzls, coburn, petarcalic99 and lyskey have expressed concerns regarding the breaking changes of the RPC spec brought about by v0.12 and the Builders’ Council agrees that, although these are not critical changes, they decrease the stability of the release. In the future the Council would prefer these changes are communicated, documented and agreed upon by the community. The Council is happy to help with a smoother process on the next upgrade. The council notes that this should not be considered a blocker for the release. |
Performance improvement benchmarks are not using real production data | The benchmark shared for v0.12 mention ERC20 tests show a clear improvement in TPS numbers, which prove the upgrade brings about performance improvements. The Builders’ Council had expressed with StarkWare the desire for benchmarks from version to version using production data coming from real network usage and DApps running in production to be able to assess the release and vote with a high degree of confidence on the actual improvement v0.12 will bring about on mainnet. |
Changes and release should be better documented | For example the release details of the latest version of the Cairo Compiler only mentions “Cairo Compiler” but doesn’t detail the changes brought about by this update. The Council has already mentioned the RPC changes and also notes that changes to the ABI were brought forward but not properly documented. We very much agree with petarcalic99 that “As the RPC issue is not critical, and the increase in TPS is very needed, I believe we should upgrade mainnet to 0.12 but the trend of unorganized and missing documentation should be fixed […] if our goal is to attract more people to the community.” |
Performance benchmarks & tests
- Measure average, median for:
- Blocktime
- Cairo Steps per Second (CSPS)
- Transactions per second
- Using consistent data replayed from Mainnet activity, taking inspiration from LambdaClass’ speed benchmarks for the Cairo VM, Starknet in Rust and Prover.
Thank you very much for your time, and let’s get more TPS
Staknet’s Builder’s Council