Note: This is an abridged version of Testnet release notes published on October 1, 2024
Overview
These release notes present the core features of testnet along with some of the known issues our team has mapped and is working to resolve. We will use Midnight’s Discord channel to update the community on these and any new issues we find. The Midnight documentation has been updated to reflect testnet. The devnet will be sunset on a schedule to be shared via Discord.
Impacted components
Additional resources
Midnight documentation is regularly updated. Please address suggestions, questions, and requests to the Developer Relations team. They can be reached through Midnight’s Discord channel where further communication about community engagement will be made. You can also find communications from Midnight on X, LinkedIn, Telegram, Farcaster and Youtube.
What is in this release?
- SNARK Upgradeability: Midnight’s tech stack is now capable of updating the proving without resetting the chain. Contracts can be easily updated to accommodate proving system changes, bug fixes, and performance enhancements. As of now, there is no need to move contract funds if maintenance authority is set.
- Midnight Block Producer Guide and System Requirements: SPOs may become block producers for the public Midnight Testnet to confirm they meet the hardware requirements to maintain consistent node performance and contribute effectively to Midnight's security and stability. These requirements help maintain a level playing field for all participants and promote a healthy ecosystem.
- Stake Pool Operator (SPO) Registration and Block Production, A new consensus mechanism was designed to enhance network decentralization while maintaining a degree of centralized control. It has been fully integrated into the block stack and is now available for external evaluation, allowing developers and the community to test and provide feedback.
- Chain Hard Fork Capability: Midnight internal developers are now able to publish backward incompatible changes without resetting the chain. DApp and Wallet developers can accommodate these changes with minimal inconvenience to their users. Finally, it provides a mechanism for SPOs and Block Producers to upgrade to the new consensus rules.
- Halo2 as a proving system instead of Plonk: Halo2, a popular library for zero-knowledge proofs, offers advantages like custom gates, lookup arguments, and universal SNARKs. Midnight uses a modified version of Halo2, supporting efficient recursion and pairing-friendly curves.
- SPO nodes automatically vote for runtime upgrades: Validators should be able to signal to one another that they have upgraded to a client version compatible with the latest ledger version and the upcoming runtime upgrade. This signaling is achieved by broadcasting a specific message to the network, indicating the client version and a unique identifier for the runtime upgrade. Only validators with compatible clients can participate in the upgrade process, ensuring a smooth transition to the new runtime.
For a detailed list of bug fixes and enhancements, review the full release notes on the Midnight docs site.