IRISnet Mainnet 1.0 upgrade is expected to happen on February 25th, and new functions including IBC, Coinswap (AMM), enhanced iService and NFT will go live accordingly. The upgraded Mainnet will usher in the KUAFU stage of IRISnet, bringing us one step closer to achieve the vision of an Interchain Service infrastructure and protocol for building trustworthy and distributed business applications.
1. New Features Preview
The software powering the IRIS Hub 1.0 mainnet upgrade will be irishub v1.0.0, which has integrated not only the IBC function provided by Cosmos SDK, but also IRISnet’s unique functions including Coinswap (AMM), NFT, enhanced iService and so on.
As an application layer protocol, the enhanced Interchain Service (iService) framework can support connections between heterogeneous blockchains and centralized systems, and bridge the gap between the crypto world and the traditional business world.
Inter-Blockchain Communication (IBC)
IRIS Hub 1.0 will be one of the first mainnets in the Cosmos ecosystem to integrate the flagship cross-chain IBC protocol. IBC along with the enhanced iService can serve as the blockchain world’s “TCP/IP + HTTP” protocols over which the Internet of Blockchains can be built out.
The combination of IBC with Coinswap (AMM) will provide a vanguard innovation platform for DeFi applications in the Cosmos ecosystem.
Powered by iService, a flexible and innovative oracle function has been built into IRIS Hub 1.0, enabling cross-platform data services with various on-chain/off-chain interaction patterns.
The NFT module built into IRIS Hub 1.0 supports the complete lifecycle management of non-fungible tokens and can be used for asset digitization on blockchains.
These innovative functions will support partners like StarryMedia and Chainlink to expand the IRISnet ecosystem in areas such as NFT e-ticketing and oracle integration, poised to increase the overall network values.
2. Upgrade Method
Since Cosmos SDK v0.41 that IRIS Hub v1.0 relies on has many non-compatible functions from Cosmos SDK v0.28.x which is being used by the current mainnet, this upgrade has to use a non-compatible restart upgrade method. The process is very similar to what was done, for example, to upgrade Cosmos Hub from cosmoshub-2 to cosmoshub-3.
The procedure of the upcoming upgrade is (1) submission of an on-chain governance proposal -> (2) voting by validators/delegators to pass the proposal -> (3) mainnet upgrade. The technical details will be different, mainly in the 1st step of on-chain governance proposal and the last step of mainnet upgrade.
On-chain Governance Proposal of “SystemHalt”
In order to let all validators of the current mainnet of IRIS Hub v0.16 stop at the same time to export the data required for the launch of the new mainnet of IRIS Hub v1.0, the proposal for this upgrade will be “SystemHalt” and be attached with the overall upgrade plan, upgrade steps after system halt, etc. in its description field.
The blockchain state at the block height of system halt of IRIS Hub v0.16 will be exported and migrated. The mainnet validators need to verify and confirm the migrated state, migrate original key files, modify the configuration files and run the validator nodes of irishub v1.0.0.
3. Upgrade Plan
The IRISnet’s mainnet upgrade is expected to take place on Feb 25, 2021, which is about 1 week after Cosmos Hub’s upgrade. The important events and their timeline are estimated as follows:
- 09.02.2021: irishub v1.0.0 release
The software for the new mainnet has been released as irishub v1.0.0.
- 18.02.2021: Mainnet upgrade on-chain proposal submission
A network upgrade proposal of “SystemHalt” will be submitted to the current mainnet, including specific information about new software version, upgrade time, upgrade steps and other details.
- 18.02.2021: Voting for the upgrade proposal
The upgrade proposal will enter the voting period after the minimum requirement of deposit is met. The voting period is 5 days.
- 23.02.2021: The proposal passed and upgrade time is determined
After the upgrade proposal is passed based on the on-chain governance rules, IRIS Hub v0.16 will be halted after 20,000 blocks of the time when the proposal is passed.
- 25.02.2021: Network upgrade started
The blockchain state at the block height of system halt of IRIS Hub v0.16 will be exported and migrated. The mainnet validators need to verify and confirm the migrated state, migrate original key files, modify the configuration files and run the validator nodes of irishub v1.0.0
4. Migration Guide
Besides the validators, other types of participants of IRISnet should follow different migration methods for this upgrade.
It’s very important to back up your wallet mnemonics or keystore files.
Rainbow wallet users should refer to Rainbow wallet tutorial, while users of other wallets should follow their own manuals to perform similar operations.
5. Other Effects
This upgrade will affect the Delegator Reward Program of IRIS Foundation community-centric delegation campaign.
The program relies on the detailed “coin flow” information provided by `irishub v0.16` to perform accurate calculation of any given delegator’s rewards within a certain period of time. This feature was enabled through some customized enhancements to the forked Cosmos SDK v0.28, which is no longer possible as `irishub v1.0` has migrated to depend on Cosmos SDK v0.41.
As a result, Delegator Reward Program will have to be canceled after the upgrade. Community delegators can still get their doubled delegation rewards from Feb 1 to Feb 25 though, which will be distributed at the beginning of March.
There are multiple circumstances where the proposal should be changed even if it passes:
1. A critical vulnerability may be found in the software. If the development teams change their recommended version of irishub, the validator set should implicitly abandon this upgrade procedure. A future proposal will be made to the Hub to upgrade to the new target commit.
2. The migration process fails could fail to produce a valid irishub-1 genesis file. This would manifest as ad-hoc changes to genesis needed to start or a failure to produce blocks from `irishub-1`. In this case, the validator set should restart `irishub` at the block height of the halt and a future governance proposal will be done to initiate another upgrade.