Skip to main content
This is a mandatory breaking change for pre-v0.4.x chains with existing ERC20 token pairs.If neglected, existing ERC20 tokens will become inaccessible, return zero balances and fail all operations.

Impact Assessment

Affected Chains

Your chain needs this migration if you have:
  • IBC tokens converted to ERC20
  • Token factory tokens with ERC20 representations
  • Any existing DynamicPrecompiles or NativePrecompiles in storage

Symptoms if Not Migrated

  • ERC20 balances will show as 0 when queried via EVM
  • totalSupply() calls return 0
  • Token transfers via ERC20 interface fail
  • Native Cosmos balances remain intact but inaccessible via EVM

Storage Changes

    Implementation

    Quick Start

    Add to your existing upgrade handler:

    Testing

    Pre-Upgrade Verification

    Post-Upgrade Verification

    Integration Test

    tests/upgrade_test.go

    Verification Checklist

    • Test migration on testnet first
    • Document all existing token pairs
    • Verify ERC20 balances post-upgrade
    • Test token transfers work
    • Confirm IBC token conversions function

    References