Welcome to the Celo All-Core Devs Call 7. In this call, we will cover important topics including the Celo Baklava Donut hard fork, retrospective on the hard fork, and the discussion on CIP10. Let’s dive into the details.
The recent release of the Celo Baklava Donut hard fork is a significant event. We will discuss the retrospective and the expectations for maintenance. The first beta version of 1.3 was released about two and a half weeks ago, which set the activation block number for Donut on Baklava. Some bugs were discovered and fixed during this period. The hard fork activation occurred smoothly, but there were cases where validators were not upgraded or did not have the hard fork enabled. The fix for this involved ensuring the flag was set correctly. It’s important to note that this flag is not required for the mainnet. After activation, a test suite was run to check the functionality of the hard fork, and it passed successfully. The stable release of 1.3.0 is planned for Monday, setting the activation for Donut on Alpha Horus (May 4th) and Mainnet (May 19th). This provides a one-month window for everyone to upgrade.
Maintenance is a crucial aspect to consider after a hard fork. Not only validators, but also full node operators and dApps running full nodes need to upgrade. The recommended approach is to start with the most important validators and then move down the list based on volume. Exchanges should also be prioritized to ensure they have upgraded. Communication with the core community and stakeholders will be done through the Celo Core mailing list, providing timely updates on the upgrade process.
The 1.3.0 release includes some breaking changes related to the call behavior in the heath protocol. These changes address edge cases inherited from upstream and aim to improve logical consistency. For example, if a non-zero gas price is used but there are insufficient funds to cover the gas, an error will be returned. Previously, a hack was in place that artificially increased the account balance. Another change is the default address for ‘with call’ if the from address is not specified, which now defaults to the zero address. These changes align Celo with upstream behavior and improve consistency across different nodes.
The Donut hard fork includes a change to make the lookback window ungovernable by setting the value in a smart contract. The smart contract has already been deployed, but the value initialization for the lookback window is pending. This will be addressed through a governance proposal before the Donut activation on Mainnet. Coordinating this proposal is essential to ensure a smooth activation process.
CIP10 was proposed to generalize the signing keys supported by the Celo platform and enable multiple keys per role. The implementation work for CIP10 has been completed, and an implementation detail has been submitted for review. The goal is to make smart contract signers more flexible, allowing various types of authorization. The proposed implementation is backward compatible and has been designed to maintain compatibility with existing signers. This CIP will undergo a final review period of two weeks before being accepted as a standard.
The Celo All-Core Devs Call 7 covered the retrospective of the Celo Baklava Donut hard fork, the expectations for maintenance, and the discussion on CIP10. The hard fork was successful, and the stable release of 1.3.0 is scheduled for Monday. The upgrade process for validators, full node operators, and dApps running full nodes should be initiated soon. Additionally, the governance proposal for the lookback window initialization will be submitted. Finally, CIP10, which introduces generalized signing keys, has completed its implementation and will undergo a final review period.