Release Candidate for Kava 14
For deployment to Kava Testnet at height 5886355 around 2023-06-23 00:00:00 UTC.
This release adds the ability to convert between a cosmos-native asset (sdk.Coin
) and an ERC20 representation of the asset in the EVM. The assets allowed for conversion can be controlled by Kava DAO via a new parameter to the x/evmutil
module.
Note: This is a release candidate only. Do not attempt to run this software on mainnet.
Software versions:
Golang: v1.20
Cosmos-sdk: v0.46.11
CometBFT: v0.34.27 (formerly Tendermint)
For a complete list of changes, including client breaking changes, see CHANGELOG.md.
Cosmos Coin <=> ERC20 Conversion
For a technical overview of conversion, see the "Cosmos-Native Assets" section of the x/evmutil
spec.
Allowed assets
Kava DAO controls which assets are allow-listed for conversion via a new x/evmutil
parameter, allowed_cosmos_denoms
.
The upgrade handlers included in this release initialize the parameter:
- The Testnet upgrade handler,
v0.24.0-alpha.0
, allows HARD tokens (hard
) to be converted to an ERC20 - The Mainnet upgrade handler,
v0.24.0
, allows ATOM (ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2
) to be converted
New Messages
Conversion is managed via two new messages:
MsgConvertCosmosCoinToERC20
performs the conversion from Cosmos coin to ERC20. ERC20 contracts are deployed and owned by thex/evmutil
module account, and are deployed on first conversion.MsgConvertCosmosCoinFromERC20
converts the ERC20 back to the underlying Cosmos coin.
Enumerating Cosmos Coin ERC20 Contracts
A new x/evmutil
query is added for enumerating deployed contracts: /kava/evmutil/v1beta1/deployed_cosmos_coin_contracts
.