BLOG July 17, 2024
Neo Launches the Neo X Gamma TestNet
Neo has released the Gamma version of the Neo X TestNet. This version introduces a Policy-based transaction fee burning mechanism as a replacement for the dynamically evaluated base fee of EIP-1559. It also contains compatible protocol extensions, a set of enhanced system contract features, native bridge improvements, and documentation updates. Additionally, as a result of a security audit, this version includes enhancements and stability fixes for system contracts, the bridge, and the dBFT protocol.
This version of the Neo X node is based on the v1.13.11 Geth implementation, with the Shanghai fork supported as the latest in the set of Ethereum-compatible forks. The Gamma version is aimed to be a long-term supported TestNet.
New network transaction fee calculation model
The Neo X Gamma TestNet introduces a new model for network transaction fee calculation and burning. This change has been implemented via a fork on the TestNet. Moving forward, the block's base fee and the minimum required transaction tip value are configured by the set of network validators and stored in the system Policy contract. This means that the dynamic block fee model managed by EIP-1559 is no longer applicable.
Related node RPC APIs have been adjusted accordingly to return the proper base fee and minimum required transaction tip values for accurate transaction fee calculation on the dApps side, ensuring that ecosystem tools like MetaMask continue to work fine with the updated fee model. Developers may also use an extended Policy system contract API to fetch the values of interest. At the time of writing, both the minimum transaction tip and base fee values are set as 20 Gwei.
Enhanced system contracts for better governance experience
Neo X system contracts also include a set of user-facing improvements aimed at providing a better experience when interacting with the Neo X Governance mechanism.
First of all, the Governance contract has been extended with the 'transferVote' method, allowing voters to change their voting target (i.e., move all votes from one candidate to another) via a single contract call. Additionally, to prevent possible DoS attacks, the consensus candidate registration fee has been increased from 1,000 GAS to 20,000 GAS. Candidates will also be charged a commission of 5% taken from the deposited registration fee upon exiting the list of consensus candidates. Finally, the number of candidates allowed to be registered at a time is restricted to 2,000.
Compatible protocol extensions
Another protocol-level update of the Neo X node introduces a transaction reannouncement mechanism for mempooled transactions. This functionality enforces nodes to periodically reshare transactions that have not yet been accepted to the chain, facilitating better network connectivity and reducing transaction acceptance delays.
Native bridge updates
Additionally, the bridge now supports NEP-17/ERC-20 tokens, allowing registered tokens to be bridged between Neo N3 and Neo X. The token registration process is carried out by the bridge governance members and is a manual process to ensure security and stability. For more information on this process, contact our team members in Discord.
The TestNet bridge can be accessed through the following link: https://testnet.bridge.banelabs.org
Security enhancements and stability fixes
A security audit was performed over the Neo X node and Neo X system contracts implementation. As a result, the dBFT network protocol was improved to perform dBFT payload verification against the current set of consensus members, even at ordinary seed nodes. A set of stability and safety improvements was included in the system contracts code, resulting in reduced invocation costs and safe invocation guarantees for Neo X users.
A comprehensive security audit was also conducted on the bridge smart contracts (Neo N3 and Neo X), as well as the code powering the bridge validators and relayers. As a result, several fixes and enhancements have been implemented in the core functionality.
Above are the main improvements and features of the Neo X Gamma TestNet. Please note that the latest Beta version TestNet will be stopped and all existing data will be erased within two weeks. We strongly suggest that all developers migrate their work to the Gamma TestNet as early as possible. The Neo team will be available in the Discord community to provide any needed support.