Test chain upgrades in ephemeral dev environment
Closed this issue · 1 comments
mmsinclair commented
Phase 1
Components to deploy:
- several nyxds (use genesis from Nyx and empty chain, no snapshot)
- Big Dipper v2 (to view blocks)
- deploy mixnet contract
Test the following:
- test basic Cosmos tx's: send tokens, execute contract
- send a tx to do the upgrade
Upgrade versions of nyxd:
- test basic Cosmos tx's: send tokens, execute contract
Phase 2
Components to deploy:
- several nyxds (use genesis from Nyx and empty chain, no snapshot)
- gravity bridge
- gravity infrastructure (validators, etc)
- Big Dipper v2 (to view blocks)
- deploy mixnet contract
Test the following:
- test basic Cosmos tx's: send tokens, execute contract
- test sending ERC20 testnet tokens to NYM across dev env gravity bridge (ERC20 => NYM)
- test sending NYM to ERC20 testnet tokens across the bridge (NYM => ERC20)
Upgrade to a newer nyxd, and then test:
- send more ERC20 testnet tokens (both ways)
- test basic Cosmos tx's
Phase 3
Test full upgrade, and then smoke test mixnet and vesting contracts
mmsinclair commented
Also:
- find out if possible to run
gravity
without the ERC20 contract deployed, i.e. send NYM to GRAV, rather than NYM to NYM-ERC20 - if not, get help from Max / Bogdan to deploy ERC20 NYM minting contract to an ETH testnet
- when you start from a Nyx Mainnet snapshot, how do you deal with the mainnet IBC channel to Gravity
- what happens when you add a testnet IBC channel?
- can you use the same token address?
- does transferring tokens across the bridge work?
- can you ignore failed channels (mainnet one will be broken in the dev env)