diff --git a/.registryrc b/.registryrc index 082270fef5..e2d1700ce1 100644 --- a/.registryrc +++ b/.registryrc @@ -1 +1 @@ -2691132ec47ecc12b6777b5090e323228185d7c7 +9e900994370ccc702b84c332eb4a0479bfeabe07 diff --git a/rust/sealevel/environments/mainnet3/warp-routes/TRUMP-base-solanamainnet/program-ids.json b/rust/sealevel/environments/mainnet3/warp-routes/TRUMP-base-solanamainnet/program-ids.json new file mode 100644 index 0000000000..8bb6368e91 --- /dev/null +++ b/rust/sealevel/environments/mainnet3/warp-routes/TRUMP-base-solanamainnet/program-ids.json @@ -0,0 +1,30 @@ +{ + "form": { + "hex": "0x0000000000000000000000008528baa7d1d386e7967603e480fa2b558a23644c", + "base58": "1111111111112rbf8mSSJDBCxvjCyPAButjBen7u" + }, + "worldchain": { + "hex": "0x0000000000000000000000000fc7b3518c03bfa5e01995285b1ef3c4b55c8922", + "base58": "111111111111DkZ1qm7hv57Sa8ZhNG9yo9cp2qP" + }, + "avalanche": { + "hex": "0x0000000000000000000000000e2a546a53678ee8f8605748193a8c114fa0317f", + "base58": "111111111111CSso9WXV132yty66gXycfU4mjWN" + }, + "flowmainnet": { + "hex": "0x000000000000000000000000d3378b419feae4e3a4bb4f3349dba43a1b511760", + "base58": "1111111111113wfw1fbmfxSpYvFU6NfBtUNJ5q7u" + }, + "base": { + "hex": "0x00000000000000000000000053c0499e7e4abd3e7994ca161523fd50a12bb8c8", + "base58": "1111111111112Ag6Vg3QoPPGirwYeTWBQWR9VmcB" + }, + "arbitrum": { + "hex": "0x0000000000000000000000005155eb1bcd30189915cf84717550acfa537068bf", + "base58": "11111111111128itaWLcGgPMeaS1ccv916mk2HT4" + }, + "solanamainnet": { + "hex": "0x0f1589e8a3b501fb3eedfddd2eed7a262ef34b2292ae9bb86ab08f372c752a29", + "base58": "21tAY4poz2VXvghqdSQpn9j7gYravQmGpuQi8pHPx9DS" + } +} \ No newline at end of file diff --git a/rust/sealevel/environments/mainnet3/warp-routes/TRUMP-base-solanamainnet/token-config.json b/rust/sealevel/environments/mainnet3/warp-routes/TRUMP-base-solanamainnet/token-config.json new file mode 100644 index 0000000000..a8e979c981 --- /dev/null +++ b/rust/sealevel/environments/mainnet3/warp-routes/TRUMP-base-solanamainnet/token-config.json @@ -0,0 +1,52 @@ +{ + "solanamainnet": { + "type": "collateral", + "decimals": 6, + "remoteDecimals": 18, + "token": "6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN", + "interchainGasPaymaster": "AkeHBbE5JkwVppujCQQ6WuxsVsJtruBAjUo6fDCFp6fF", + "splTokenProgram": "token" + }, + "base": { + "type": "synthetic", + "decimals": 18, + "foreignDeployment": "0x53c0499e7E4aBD3e7994ca161523FD50A12Bb8C8", + "name": "OFFICIAL TRUMP", + "symbol": "TRUMP" + }, + "arbitrum": { + "type": "synthetic", + "decimals": 18, + "foreignDeployment": "0x5155EB1bcD30189915cF84717550Acfa537068bF", + "name": "OFFICIAL TRUMP", + "symbol": "TRUMP" + }, + "flowmainnet": { + "type": "synthetic", + "decimals": 18, + "foreignDeployment": "0xD3378b419feae4e3A4Bb4f3349DBa43a1B511760", + "name": "OFFICIAL TRUMP", + "symbol": "TRUMP" + }, + "form": { + "type": "synthetic", + "decimals": 18, + "foreignDeployment": "0x8528bAa7d1d386E7967603e480fa2B558a23644c", + "name": "OFFICIAL TRUMP", + "symbol": "TRUMP" + }, + "avalanche": { + "type": "synthetic", + "decimals": 18, + "foreignDeployment": "0x0e2A546a53678ee8F8605748193a8c114fA0317F", + "name": "OFFICIAL TRUMP", + "symbol": "TRUMP" + }, + "worldchain": { + "type": "synthetic", + "decimals": 18, + "foreignDeployment": "0x0fC7b3518C03BfA5e01995285b1eF3c4B55c8922", + "name": "OFFICIAL TRUMP", + "symbol": "TRUMP" + } +} \ No newline at end of file diff --git a/typescript/infra/config/environments/mainnet3/warp/configGetters/getBaseSolanaTRUMPWarpConfig.ts b/typescript/infra/config/environments/mainnet3/warp/configGetters/getBaseSolanaTRUMPWarpConfig.ts new file mode 100644 index 0000000000..32313ecf76 --- /dev/null +++ b/typescript/infra/config/environments/mainnet3/warp/configGetters/getBaseSolanaTRUMPWarpConfig.ts @@ -0,0 +1,100 @@ +import { + ChainMap, + HypTokenRouterConfig, + OwnableConfig, + TokenType, +} from '@hyperlane-xyz/sdk'; + +import { RouterConfigWithoutOwner } from '../../../../../src/config/warp.js'; +import { DEPLOYER } from '../../owners.js'; +import { SEALEVEL_WARP_ROUTE_HANDLER_GAS_AMOUNT } from '../consts.js'; + +export const getTRUMPWarpConfig = async ( + routerConfig: ChainMap, + abacusWorksEnvOwnerConfig: ChainMap, +): Promise> => { + const name = 'OFFICIAL TRUMP'; + const symbol = 'TRUMP'; + const totalSupply = 0; + const syntheticToken = { + name, + symbol, + totalSupply, + decimals: 18, + }; + const tokenConfig: ChainMap = { + solanamainnet: { + ...routerConfig.solanamainnet, + type: TokenType.collateral, + name, + symbol, + decimals: 6, + totalSupply, + token: '6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN', + owner: DEPLOYER, + gas: SEALEVEL_WARP_ROUTE_HANDLER_GAS_AMOUNT, + foreignDeployment: '21tAY4poz2VXvghqdSQpn9j7gYravQmGpuQi8pHPx9DS', + }, + base: { + ...routerConfig.base, + ...syntheticToken, + type: TokenType.synthetic, + owner: abacusWorksEnvOwnerConfig.base.owner, + proxyAdmin: { + owner: abacusWorksEnvOwnerConfig.base.owner, + address: '0xBaE44c2D667C73e2144d938d6cC87901A6fd1c00', + }, + }, + arbitrum: { + ...routerConfig.arbitrum, + ...syntheticToken, + type: TokenType.synthetic, + owner: DEPLOYER, + proxyAdmin: { + owner: DEPLOYER, + address: '0x2350389Ea8649Da5dD4Fdd09c414dD8463C2695c', + }, + }, + avalanche: { + ...routerConfig.avalanche, + ...syntheticToken, + type: TokenType.synthetic, + owner: DEPLOYER, + proxyAdmin: { + owner: DEPLOYER, + address: '0x86a2E32BB42584127a24079a4f9113EeFE80db90', + }, + }, + flowmainnet: { + ...routerConfig.flowmainnet, + ...syntheticToken, + type: TokenType.synthetic, + owner: DEPLOYER, + proxyAdmin: { + owner: DEPLOYER, + address: '0xB504EA900302C7Faf24Cc4F155006d6c0357Dc35', + }, + }, + form: { + ...routerConfig.form, + ...syntheticToken, + type: TokenType.synthetic, + owner: DEPLOYER, + proxyAdmin: { + owner: DEPLOYER, + address: '0x5b3EeADcc0E2d4284eA6816e2E503c24d30a9E54', + }, + }, + worldchain: { + ...routerConfig.worldchain, + ...syntheticToken, + type: TokenType.synthetic, + owner: DEPLOYER, + proxyAdmin: { + owner: DEPLOYER, + address: '0x97e4682dBC4Bfd432F1563a7fa9aC218Bc48c861', + }, + }, + }; + return tokenConfig; +}; diff --git a/typescript/infra/config/environments/mainnet3/warp/warpIds.ts b/typescript/infra/config/environments/mainnet3/warp/warpIds.ts index 2a7cb941db..1754493255 100644 --- a/typescript/infra/config/environments/mainnet3/warp/warpIds.ts +++ b/typescript/infra/config/environments/mainnet3/warp/warpIds.ts @@ -9,6 +9,7 @@ export enum WarpRouteIds { ArtelaBaseSolanaART = 'ART/artela-base-solanamainnet', BscEthereumLumiaPrismPNDR = 'PNDR/bsc-ethereum-lumiaprism', BaseSolanamainnetTONY = 'TONY/base-solanamainnet', + ArbitrumAvalancheBaseFlowmainnetFormSolanamainnetWorldchainTRUMP = 'TRUMP/arbitrum-avalanche-base-flowmainnet-form-solanamainnet-worldchain', EclipseEthereumApxEth = 'APXETH/eclipsemainnet-ethereum', EclipseEthereumSolanaUSDC = 'USDC/eclipsemainnet-ethereum-solanamainnet', EclipseEthereumSolanaUSDT = 'USDT/eclipsemainnet-ethereum-solanamainnet', diff --git a/typescript/infra/config/warp.ts b/typescript/infra/config/warp.ts index 690e62e9df..d83fa93270 100644 --- a/typescript/infra/config/warp.ts +++ b/typescript/infra/config/warp.ts @@ -25,6 +25,7 @@ import { getArtelaBaseUSDCWarpConfig } from './environments/mainnet3/warp/config import { getArtelaBaseWETHWarpConfig } from './environments/mainnet3/warp/configGetters/getArtelaBaseWETHWarpConfig.js'; import { getBaseFormAIXBTWarpConfig } from './environments/mainnet3/warp/configGetters/getBaseFormAIXBTWarpConfig.js'; import { getBaseFormGAMEWarpConfig } from './environments/mainnet3/warp/configGetters/getBaseFormGAMEWarpConfig.js'; +import { getTRUMPWarpConfig } from './environments/mainnet3/warp/configGetters/getBaseSolanaTRUMPWarpConfig.js'; import { getBaseSolanamainnetTONYWarpConfig } from './environments/mainnet3/warp/configGetters/getBaseSolanamainnetTONYWarpConfig.js'; import { getBaseZeroNetworkCBBTCWarpConfig } from './environments/mainnet3/warp/configGetters/getBaseZeroNetworkCBBTCWarpConfig.js'; import { getBobaBsquaredSwellUBTCWarpConfig } from './environments/mainnet3/warp/configGetters/getBobaBsquaredSwellUBTCWarpConfig.js'; @@ -78,6 +79,8 @@ export const warpConfigGetterMap: Record = { getRenzoEZETHWarpConfig, [WarpRouteIds.InevmInjectiveINJ]: getInevmInjectiveINJWarpConfig, [WarpRouteIds.BaseSolanamainnetTONY]: getBaseSolanamainnetTONYWarpConfig, + [WarpRouteIds.ArbitrumAvalancheBaseFlowmainnetFormSolanamainnetWorldchainTRUMP]: + getTRUMPWarpConfig, [WarpRouteIds.BscEthereumLumiaPrismPNDR]: getBscEthereumLumiaPrismPNDRWarpConfig, [WarpRouteIds.EthereumFlowCbBTC]: getEthereumFlowCbBTCWarpConfig, diff --git a/typescript/infra/src/warp/helm.ts b/typescript/infra/src/warp/helm.ts index 25b7ffde21..74271fff3a 100644 --- a/typescript/infra/src/warp/helm.ts +++ b/typescript/infra/src/warp/helm.ts @@ -28,7 +28,7 @@ export class WarpRouteMonitorHelmManager extends HelmManager { return { image: { repository: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', - tag: 'c080878-20250116-173913', + tag: '157b27b-20250120-194432', }, warpRouteId: this.warpRouteId, fullnameOverride: this.helmReleaseName,