From b7543b53552cc646af9337ee97ad734a6ca2d5bd Mon Sep 17 00:00:00 2001 From: Abhijeet Singh Date: Tue, 3 Feb 2026 13:26:51 +0530 Subject: [PATCH] feat(statics): add kavacosmos and tkavacosmos networks Add new KAVACOSMOS coin family for Cosmos SDK-based Kava chain while preserving the existing KAVA coin family for backward compatibility. TICKET: COIN-7315 --- modules/bitgo/test/v2/unit/keychains.ts | 2 +- .../test/resources/{kava.ts => kavacosmos.ts} | 20 +++++++++---------- modules/statics/src/allCoinsAndTokens.ts | 20 +++++++++---------- modules/statics/src/base.ts | 6 +++--- modules/statics/src/networks.ts | 16 +++++++-------- .../unit/fixtures/expectedColdFeatures.ts | 4 ++-- 6 files changed, 34 insertions(+), 34 deletions(-) rename modules/sdk-coin-cosmos/test/resources/{kava.ts => kavacosmos.ts} (90%) diff --git a/modules/bitgo/test/v2/unit/keychains.ts b/modules/bitgo/test/v2/unit/keychains.ts index ec34757c5a..10ec7cb77e 100644 --- a/modules/bitgo/test/v2/unit/keychains.ts +++ b/modules/bitgo/test/v2/unit/keychains.ts @@ -61,7 +61,7 @@ describe('V2 Keychains', function () { n.asset !== UnderlyingAsset.APECHAIN && n.asset !== UnderlyingAsset.DOGE && n.asset !== UnderlyingAsset.ETHW && - n.asset !== UnderlyingAsset.KAVA && + n.asset !== UnderlyingAsset.KAVACOSMOS && n.asset !== UnderlyingAsset.COREUM && n.asset !== UnderlyingAsset.BERA && n.asset !== UnderlyingAsset.ISLM && diff --git a/modules/sdk-coin-cosmos/test/resources/kava.ts b/modules/sdk-coin-cosmos/test/resources/kavacosmos.ts similarity index 90% rename from modules/sdk-coin-cosmos/test/resources/kava.ts rename to modules/sdk-coin-cosmos/test/resources/kavacosmos.ts index 555793b8ec..84e610b8b6 100644 --- a/modules/sdk-coin-cosmos/test/resources/kava.ts +++ b/modules/sdk-coin-cosmos/test/resources/kavacosmos.ts @@ -1,16 +1,16 @@ /** - * Kava test data for the sdk-coin-cosmos module - * This file extends the base configuration with kava-specific data + * Kava Cosmos test data for the sdk-coin-cosmos module + * This file extends the base configuration with kavacosmos-specific data */ import { generateCoinData } from '../testUtils'; export const chainConfig = { - mainnetName: 'Kava', - mainnetCoin: 'kava', - testnetName: 'Testnet Kava', - testnetCoin: 'tkava', - family: 'kava', + mainnetName: 'Kava Cosmos', + mainnetCoin: 'kavacosmos', + testnetName: 'Testnet Kava Cosmos', + testnetCoin: 'tkavacosmos', + family: 'kavacosmos', decimalPlaces: 6, baseDenom: 'ukava', chainId: 'kava_2221-16000', @@ -80,12 +80,12 @@ export const blockHashes = { hash2: 'F6A1B2C3D4E5F6A1B2C3D4E5F6A1B2C3D4E5F6A1B2C3D4E5F6A1B2C3D4E5F6A1', }; -// Generate the complete kava test data -export const kava = generateCoinData(chainConfig, DEFAULTS, blockHashes, { +// Generate the complete kavacosmos test data +export const kavacosmos = generateCoinData(chainConfig, DEFAULTS, blockHashes, { TEST_SEND_TX, TEST_SEND_TX2, TEST_SEND_MANY_TX, TEST_TX_WITH_MEMO, }); -export default kava; +export default kavacosmos; diff --git a/modules/statics/src/allCoinsAndTokens.ts b/modules/statics/src/allCoinsAndTokens.ts index 3ed6f0a611..bd6be8d57e 100644 --- a/modules/statics/src/allCoinsAndTokens.ts +++ b/modules/statics/src/allCoinsAndTokens.ts @@ -1026,22 +1026,22 @@ export const allCoinsAndTokens = [ ), account( 'c592d110-cf6d-4630-b6e8-cfe044db0be2', - 'kava', - 'Kava', - Networks.main.kava, + 'kavacosmos', + 'Kava Cosmos', + Networks.main.kavacosmos, 6, - UnderlyingAsset.KAVA, - BaseUnit.KAVA, + UnderlyingAsset.KAVACOSMOS, + BaseUnit.KAVACOSMOS, [...COSMOS_SIDECHAIN_FEATURES, CoinFeature.SHARED_COSMOS_SDK, CoinFeature.SHARED_COSMOS_WP] ), account( '62895d6b-6e99-4eba-82f1-9ce4e7658998', - 'tkava', - 'Testnet Kava', - Networks.test.kava, + 'tkavacosmos', + 'Testnet Kava Cosmos', + Networks.test.kavacosmos, 6, - UnderlyingAsset.KAVA, - BaseUnit.KAVA, + UnderlyingAsset.KAVACOSMOS, + BaseUnit.KAVACOSMOS, [...COSMOS_SIDECHAIN_FEATURES, CoinFeature.SHARED_COSMOS_SDK, CoinFeature.SHARED_COSMOS_WP] ), account( diff --git a/modules/statics/src/base.ts b/modules/statics/src/base.ts index 44419e5dba..e7ca1ee1d9 100644 --- a/modules/statics/src/base.ts +++ b/modules/statics/src/base.ts @@ -73,7 +73,7 @@ export enum CoinFamily { ISLM = 'islm', JOVAYETH = 'jovayeth', KAIA = 'kaia', - KAVA = 'kava', + KAVACOSMOS = 'kavacosmos', KAVAEVM = 'kavaevm', LNBTC = 'lnbtc', LTC = 'ltc', @@ -603,7 +603,7 @@ export enum UnderlyingAsset { ISLM = 'islm', JOVAYETH = 'jovayeth', KAIA = 'kaia', - KAVA = 'kava', + KAVACOSMOS = 'kavacosmos', KAVAEVM = 'kavaevm', LNBTC = 'lnbtc', LTC = 'ltc', @@ -3623,7 +3623,7 @@ export enum BaseUnit { INJECTIVE = 'inj', IOTA = 'iota', ZETA = 'azeta', - KAVA = 'ukava', + KAVACOSMOS = 'ukava', DYDX = 'adydx', COREUM = 'ucore', TCOREUM = 'utestcore', // Coreum testnet uses different name for native coin diff --git a/modules/statics/src/networks.ts b/modules/statics/src/networks.ts index 228bc66044..ce38c3db72 100644 --- a/modules/statics/src/networks.ts +++ b/modules/statics/src/networks.ts @@ -995,9 +995,9 @@ class InjectiveTestnet extends Testnet implements AccountNetwork { explorerUrl = 'https://testnet.explorer.injective.network/transaction/'; } -class Kava extends Mainnet implements CosmosNetwork { - name = 'Kava'; - family = CoinFamily.KAVA; +class KavaCosmos extends Mainnet implements CosmosNetwork { + name = 'KavaCosmos'; + family = CoinFamily.KAVACOSMOS; explorerUrl = 'https://www.mintscan.io/kava/tx/'; addressPrefix = 'kava'; validatorPrefix = 'kavavaloper'; @@ -1007,9 +1007,9 @@ class Kava extends Mainnet implements CosmosNetwork { validDenoms = ['kava', 'ukava']; } -class KavaTestnet extends Testnet implements CosmosNetwork { - name = 'KavaTestnet'; - family = CoinFamily.KAVA; +class KavaCosmosTestnet extends Testnet implements CosmosNetwork { + name = 'KavaCosmosTestnet'; + family = CoinFamily.KAVACOSMOS; explorerUrl = 'https://www.mintscan.io/kava-testnet/tx/'; addressPrefix = 'kava'; validatorPrefix = 'kavavaloper'; @@ -2446,7 +2446,7 @@ export const Networks = { islm: Object.freeze(new Islm()), jovayeth: Object.freeze(new JovayETH()), kaia: Object.freeze(new Kaia()), - kava: Object.freeze(new Kava()), + kavacosmos: Object.freeze(new KavaCosmos()), kavaevm: Object.freeze(new KavaEVM()), lnbtc: Object.freeze(new LightningBitcoin()), litecoin: Object.freeze(new Litecoin()), @@ -2560,7 +2560,7 @@ export const Networks = { irys: Object.freeze(new IrysTestnet()), islm: Object.freeze(new IslmTestnet()), jovayeth: Object.freeze(new JovayETHTestnet()), - kava: Object.freeze(new KavaTestnet()), + kavacosmos: Object.freeze(new KavaCosmosTestnet()), kavaevm: Object.freeze(new KavaEVMTestnet()), kovan: Object.freeze(new Kovan()), goerli: Object.freeze(new Goerli()), diff --git a/modules/statics/test/unit/fixtures/expectedColdFeatures.ts b/modules/statics/test/unit/fixtures/expectedColdFeatures.ts index c73226e3b3..72717941c2 100644 --- a/modules/statics/test/unit/fixtures/expectedColdFeatures.ts +++ b/modules/statics/test/unit/fixtures/expectedColdFeatures.ts @@ -104,7 +104,7 @@ export const expectedColdFeatures = { 'injective', 'jovayeth', 'kaia', - 'kava', + 'kavacosmos', 'megaeth', 'mantle', 'mantra', @@ -185,7 +185,7 @@ export const expectedColdFeatures = { 'tinjective', 'tiota', 'tkaia', - 'tkava', + 'tkavacosmos', 'tmantle', 'tmantra', 'tnear',