diff --git a/rust/abacus-core/src/chain.rs b/rust/abacus-core/src/chain.rs index 046578b7c..db9420d56 100644 --- a/rust/abacus-core/src/chain.rs +++ b/rust/abacus-core/src/chain.rs @@ -99,6 +99,8 @@ pub enum AbacusDomain { /// Moonbeam testnet MoonbaseAlpha domain ID, decimal ID 1836002657 MoonbaseAlpha = 0x6d6f2d61, + /// Moonbeam domain ID, decimal ID 1836002669 + Moonbeam = 0x6d6f2d6d, // -- Local test chains -- /// Test1 local chain @@ -160,6 +162,7 @@ impl AbacusDomain { AbacusDomain::Alfajores => AbacusDomainType::Testnet, AbacusDomain::MoonbaseAlpha => AbacusDomainType::Testnet, + AbacusDomain::Moonbeam => AbacusDomainType::Mainnet, AbacusDomain::Test1 => AbacusDomainType::LocalTestChain, AbacusDomain::Test2 => AbacusDomainType::LocalTestChain, diff --git a/rust/agents/relayer/src/msg/gas_payment/policies/meets_estimated_cost.rs b/rust/agents/relayer/src/msg/gas_payment/policies/meets_estimated_cost.rs index a1a0edd8f..d7211e47a 100644 --- a/rust/agents/relayer/src/msg/gas_payment/policies/meets_estimated_cost.rs +++ b/rust/agents/relayer/src/msg/gas_payment/policies/meets_estimated_cost.rs @@ -48,6 +48,7 @@ fn abacus_domain_id_to_native_token_coingecko_id(domain_id: u32) -> Result<&'sta AbacusDomain::Optimism => "ethereum", AbacusDomain::BinanceSmartChain => "binancecoin", AbacusDomain::Celo => "celo", + AbacusDomain::Moonbeam => "moonbeam", _ => eyre::bail!("No CoinGecko ID for domain {abacus_domain}"), }) } diff --git a/rust/agents/relayer/src/msg/gelato_submitter/mod.rs b/rust/agents/relayer/src/msg/gelato_submitter/mod.rs index 214f397bf..6b668408b 100644 --- a/rust/agents/relayer/src/msg/gelato_submitter/mod.rs +++ b/rust/agents/relayer/src/msg/gelato_submitter/mod.rs @@ -232,6 +232,7 @@ pub fn abacus_domain_id_to_gelato_chain(domain: u32) -> Result { AbacusDomain::Alfajores => Chain::Alfajores, AbacusDomain::MoonbaseAlpha => Chain::MoonbaseAlpha, + AbacusDomain::Moonbeam => Chain::Moonbeam, _ => bail!("No Gelato Chain for domain {abacus_domain}"), }) diff --git a/rust/config/mainnet/arbitrum_config.json b/rust/config/mainnet/arbitrum_config.json index d7f2eaa57..78e095e54 100644 --- a/rust/config/mainnet/arbitrum_config.json +++ b/rust/config/mainnet/arbitrum_config.json @@ -85,6 +85,20 @@ "inbox": "0x7082e975Fde8D85B0C56B4512b437efFb46F0a09", "validatorManager": "0xCA41932888D323B3d99f5eA48F86D502055C0322" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0xCA41932888D323B3d99f5eA48F86D502055C0322", + "validatorManager": "0x71b2644183ECA86401c13577f5332fcc5e48352a" + } } }, "outbox": { diff --git a/rust/config/mainnet/avalanche_config.json b/rust/config/mainnet/avalanche_config.json index b2988e6c4..624554e50 100644 --- a/rust/config/mainnet/avalanche_config.json +++ b/rust/config/mainnet/avalanche_config.json @@ -85,6 +85,20 @@ "inbox": "0x95Ad03405aC24c0bc247bdFDC113B01955A71761", "validatorManager": "0x4B44e4305B42405382b7BeC717F64D0552a9D9Fe" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x4B44e4305B42405382b7BeC717F64D0552a9D9Fe", + "validatorManager": "0x398633D19f4371e1DB5a8EFE90468eB70B1176AA" + } } }, "outbox": { diff --git a/rust/config/mainnet/bsc_config.json b/rust/config/mainnet/bsc_config.json index f22b0f423..86df12df2 100644 --- a/rust/config/mainnet/bsc_config.json +++ b/rust/config/mainnet/bsc_config.json @@ -85,6 +85,20 @@ "inbox": "0x81a92A1a272cb09d7b4970b07548463dC7aE0cB7", "validatorManager": "0xC343A7054838FE9F249D7E3Ec1Fa6f1D108694b8" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x552D41c0B5c774F529C956E7CC77d0e054D7aFa8", + "validatorManager": "0x23ce76645EC601148fa451e751eeB75785b97A00" + } } }, "outbox": { diff --git a/rust/config/mainnet/celo_config.json b/rust/config/mainnet/celo_config.json index 45ba93cc8..ae43a75c8 100644 --- a/rust/config/mainnet/celo_config.json +++ b/rust/config/mainnet/celo_config.json @@ -85,6 +85,20 @@ "inbox": "0xCB5C99F908410add8241b558299fe9aadC06bA99", "validatorManager": "0x552D41c0B5c774F529C956E7CC77d0e054D7aFa8" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x02d16BC51af6BfD153d67CA61754cF912E82C4d9", + "validatorManager": "0x3a867fCfFeC2B790970eeBDC9023E75B0a172aa7" + } } }, "outbox": { diff --git a/rust/config/mainnet/ethereum_config.json b/rust/config/mainnet/ethereum_config.json index 4b4519866..e2d52e08f 100644 --- a/rust/config/mainnet/ethereum_config.json +++ b/rust/config/mainnet/ethereum_config.json @@ -85,6 +85,20 @@ "inbox": "0xea820f9BCFD5E16a0dd42071EB61A29874Ad81A4", "validatorManager": "0xB3fCcD379ad66CED0c91028520C64226611A48c9" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x14c3CEee8F431aE947364f43429a98EA89800238", + "validatorManager": "0x8428a1a7E97Fc75Fb7Ba5c4aec31B55e52bbe9D6" + } } }, "outbox": { diff --git a/rust/config/mainnet/moonbeam_config.json b/rust/config/mainnet/moonbeam_config.json new file mode 100644 index 000000000..53cd74530 --- /dev/null +++ b/rust/config/mainnet/moonbeam_config.json @@ -0,0 +1,126 @@ +{ + "environment": "mainnet", + "signers": {}, + "inboxes": { + "bsc": { + "domain": "6452067", + "name": "bsc", + "rpcStyle": "ethereum", + "finalityBlocks": "15", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x79e25126E1dAB135734e0261E8aB93674131fD2b", + "validatorManager": "0x319f058FeedA044bD20E949FDCA31AEbb19b0063" + } + }, + "avalanche": { + "domain": "1635148152", + "name": "avalanche", + "rpcStyle": "ethereum", + "finalityBlocks": "3", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x32af5Df81fEd5E26119F6640FBB13f3d63a94CDe", + "validatorManager": "0xDd0D36E55078c643cefDc17936b63BACC71c50Da" + } + }, + "polygon": { + "domain": "1886350457", + "name": "polygon", + "rpcStyle": "ethereum", + "finalityBlocks": "256", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x6267Dbfc38f7Af897536563c15f07B89634cb656", + "validatorManager": "0x0c7b67793c56eD93773cEee07A43B3D7aDF533b7" + } + }, + "celo": { + "domain": "1667591279", + "name": "celo", + "rpcStyle": "ethereum", + "finalityBlocks": "0", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0xEb4ca142644172878Bee23E44C8BDae215E92430", + "validatorManager": "0x0D11258092e5BC4a813478ff8837887C2A1a6e89" + } + }, + "arbitrum": { + "domain": "6386274", + "name": "arbitrum", + "rpcStyle": "ethereum", + "finalityBlocks": "0", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x88AcaD5222Fbb66C23d0E9532FDd32e57C68a53F", + "validatorManager": "0x76b76307f778CB98Cc71DF9f00cBF99C32544C03" + } + }, + "optimism": { + "domain": "28528", + "name": "optimism", + "rpcStyle": "ethereum", + "finalityBlocks": "0", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0xCDaebcc592DA5c982B05E95039FF5f3467420223", + "validatorManager": "0xdc47eDc036daaE45D3F019CCfD443Bf72fBD981c" + } + }, + "ethereum": { + "domain": "6648936", + "name": "ethereum", + "rpcStyle": "ethereum", + "finalityBlocks": "20", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0xdc47eDc036daaE45D3F019CCfD443Bf72fBD981c", + "validatorManager": "0x1Dcf599693707f41375695488589F4C6Af3845e8" + } + } + }, + "outbox": { + "addresses": { + "outbox": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", + "interchainGasPaymaster": "0xEb9FcFDC9EfDC17c1EC5E1dc085B98485da213D6" + }, + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + } + }, + "tracing": { + "level": "debug", + "fmt": "json" + }, + "db": "db_path", + "index": { + "from": "2050158" + } +} \ No newline at end of file diff --git a/rust/config/mainnet/optimism_config.json b/rust/config/mainnet/optimism_config.json index 2b6b1d69d..2f31a2e82 100644 --- a/rust/config/mainnet/optimism_config.json +++ b/rust/config/mainnet/optimism_config.json @@ -85,6 +85,20 @@ "inbox": "0xF7af65596A16740b16CF755F3A43206C96285da0", "validatorManager": "0xF5739A4AF21346Aa937bF7fEB5d3B21c2d230138" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0xF5739A4AF21346Aa937bF7fEB5d3B21c2d230138", + "validatorManager": "0xBC9cd961BF6c224FAc51fb049aB6788e38e4A9C0" + } } }, "outbox": { diff --git a/rust/config/mainnet/polygon_config.json b/rust/config/mainnet/polygon_config.json index 98effd68d..c0d52796b 100644 --- a/rust/config/mainnet/polygon_config.json +++ b/rust/config/mainnet/polygon_config.json @@ -85,6 +85,20 @@ "inbox": "0xF59557dfacDc5a1cb8A36Af43aA4819a6A891e88", "validatorManager": "0x0E3239277501d215e17a4d31c487F86a425E110B" } + }, + "moonbeam": { + "domain": "1836002669", + "name": "moonbeam", + "rpcStyle": "ethereum", + "finalityBlocks": "1", + "connection": { + "type": "http", + "url": "" + }, + "addresses": { + "inbox": "0x0E3239277501d215e17a4d31c487F86a425E110B", + "validatorManager": "0x28EFBCadA00A7ed6772b3666F3898d276e88CAe3" + } } }, "outbox": { diff --git a/rust/gelato/src/types.rs b/rust/gelato/src/types.rs index 4aff2adc7..806b6e444 100644 --- a/rust/gelato/src/types.rs +++ b/rust/gelato/src/types.rs @@ -33,6 +33,7 @@ pub enum Chain { Alfajores = 44787, MoonbaseAlpha = 1287, + Moonbeam = 1284, } impl fmt::Display for Chain { diff --git a/typescript/infra/config/environments/mainnet/agent.ts b/typescript/infra/config/environments/mainnet/agent.ts index 2134afdf1..ca0f11680 100644 --- a/typescript/infra/config/environments/mainnet/agent.ts +++ b/typescript/infra/config/environments/mainnet/agent.ts @@ -23,7 +23,7 @@ export const abacus: AgentConfig = { context: Contexts.Abacus, docker: { repo: 'gcr.io/abacus-labs-dev/abacus-agent', - tag: 'sha-da5c504', + tag: 'sha-329d259', }, aws: { region: 'us-east-1', @@ -59,6 +59,9 @@ export const abacus: AgentConfig = { polygon: { reorgPeriod: 256, }, + moonbeam: { + reorgPeriod: 0, + }, }, }, relayer: { @@ -80,7 +83,7 @@ export const releaseCandidate: AgentConfig = { context: Contexts.ReleaseCandidate, docker: { repo: 'gcr.io/abacus-labs-dev/abacus-agent', - tag: 'sha-da5c504', + tag: 'sha-329d259', }, aws: { region: 'us-east-1', diff --git a/typescript/infra/config/environments/mainnet/chains.ts b/typescript/infra/config/environments/mainnet/chains.ts index 69905b55e..be373969b 100644 --- a/typescript/infra/config/environments/mainnet/chains.ts +++ b/typescript/infra/config/environments/mainnet/chains.ts @@ -32,6 +32,7 @@ export const mainnetConfigs: ChainMap = { maxPriorityFeePerGas: 5 * 10 ** 9, // gwei }, }, + moonbeam: chainConnectionConfigs.moonbeam, }; export type MainnetChains = keyof typeof mainnetConfigs; diff --git a/typescript/infra/config/environments/mainnet/core.ts b/typescript/infra/config/environments/mainnet/core.ts index 94ae548e2..b908641a8 100644 --- a/typescript/infra/config/environments/mainnet/core.ts +++ b/typescript/infra/config/environments/mainnet/core.ts @@ -108,4 +108,15 @@ export const core: ChainMap = { threshold: 3, }, }, + moonbeam: { + owner: '0xa7ECcdb9Be08178f896c26b7BbD8C3D4E844d9Ba', + validatorManager: { + validators: [ + '0x3da42c84aaf9d548feb219bfdf5fcb2217fbfb48', + '0x65e94ffb6696403a5e6534cbfb6befebda6a0226', + '0x1bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581', + ], + threshold: 2, + }, + }, }; diff --git a/typescript/infra/config/environments/mainnet/core/verification/verification.json b/typescript/infra/config/environments/mainnet/core/verification/verification.json index 0606327ab..8520d92d8 100644 --- a/typescript/infra/config/environments/mainnet/core/verification/verification.json +++ b/typescript/infra/config/environments/mainnet/core/verification/verification.json @@ -23,7 +23,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0x12582c7B0f43c6A667CBaA7fA8b112F7fb1E69F0", "isProxy": false }, @@ -136,7 +136,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0x70EbA87Cd15616f32C736B3f3BdCfaeD0713a82B", "constructorArguments": "", "isProxy": false @@ -152,6 +152,18 @@ "address": "0xCDeb368Db32ecCefaf7018e152DA9120565cb572", "constructorArguments": "00000000000000000000000099fefc1119e86ee0153eb887cf8e8ab2d92a16e8000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x0D11258092e5BC4a813478ff8837887C2A1a6e89", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xEb4ca142644172878Bee23E44C8BDae215E92430", + "constructorArguments": "0000000000000000000000005332d1ac0a626d265298c14ff681c0a8d28db86d000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000d11258092e5bc4a813478ff8837887c2a1a6e8900000000000000000000000000000000000000000000000000000000", + "isProxy": true } ], "ethereum": [ @@ -178,7 +190,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", "isProxy": false }, @@ -291,7 +303,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0x1Ab68dC4f7b6cfcd00218D4b761b7F3b5a724555", "constructorArguments": "", "isProxy": false @@ -307,6 +319,18 @@ "address": "0x17E216fBb22dF4ef8A6640ae9Cb147C92710ac84", "constructorArguments": "000000000000000000000000fc62def1f08793abf0e67f69257c6be258194f72000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x1Dcf599693707f41375695488589F4C6Af3845e8", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xdc47eDc036daaE45D3F019CCfD443Bf72fBD981c", + "constructorArguments": "00000000000000000000000014c3ceee8f431ae947364f43429a98ea89800238000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000001dcf599693707f41375695488589f4c6af3845e800000000000000000000000000000000000000000000000000000000", + "isProxy": true } ], "avalanche": [ @@ -333,7 +357,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", "isProxy": false }, @@ -446,7 +470,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0xcAf034CE568fad5B85Cfbf088FF43974C39287cC", "constructorArguments": "", "isProxy": false @@ -462,6 +486,18 @@ "address": "0xed9a722c543883FB7e07E78F3879762DE09eA7D5", "constructorArguments": "000000000000000000000000cf2d1d59c51a341818d23b0f6afb7c85d668dc77000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0xDd0D36E55078c643cefDc17936b63BACC71c50Da", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x32af5Df81fEd5E26119F6640FBB13f3d63a94CDe", + "constructorArguments": "0000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d000000000000000000000000dd0d36e55078c643cefdc17936b63bacc71c50da00000000000000000000000000000000000000000000000000000000", + "isProxy": true } ], "polygon": [ @@ -488,7 +524,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0x1Ab68dC4f7b6cfcd00218D4b761b7F3b5a724555", "isProxy": false }, @@ -601,7 +637,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0x13E83ac41e696856B6996263501fB3225AD5E6F5", "constructorArguments": "", "isProxy": false @@ -617,6 +653,18 @@ "address": "0x60B8d195f1b2EcaC26d54b95C69E6399cFD64b53", "constructorArguments": "00000000000000000000000061374178e45f65ff9d6252d017cd580fc60b7654000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x0c7b67793c56eD93773cEee07A43B3D7aDF533b7", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x6267Dbfc38f7Af897536563c15f07B89634cb656", + "constructorArguments": "000000000000000000000000db670e1a1e312bf17425b08ce55bdf2cd8f8ed54000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000c7b67793c56ed93773ceee07a43b3d7adf533b700000000000000000000000000000000000000000000000000000000", + "isProxy": true } ], "bsc": [ @@ -643,7 +691,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0x19dc38aeae620380430C200a6E990D5Af5480117", "isProxy": false }, @@ -756,7 +804,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0x4419922ca3C11F92bd11D31489932C39BAB57DA3", "constructorArguments": "", "isProxy": false @@ -772,6 +820,18 @@ "address": "0x47bf94790241B1764fC41A35a8329A15569E121C", "constructorArguments": "000000000000000000000000c2da384799488b4e1e773d70a83346529145085b000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x319f058FeedA044bD20E949FDCA31AEbb19b0063", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x79e25126E1dAB135734e0261E8aB93674131fD2b", + "constructorArguments": "0000000000000000000000002fa5f5c96419c222cdbcec797d696e6ce428a7a9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d000000000000000000000000319f058feeda044bd20e949fdca31aebb19b006300000000000000000000000000000000000000000000000000000000", + "isProxy": true } ], "arbitrum": [ @@ -798,7 +858,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", "isProxy": false }, @@ -911,7 +971,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0x5c12ADC734699C07b095fe30B8312F1A7bbaA788", "constructorArguments": "", "isProxy": false @@ -927,6 +987,18 @@ "address": "0x376aD181E8cd45eAd5403F78d5A871D08c3c4D77", "constructorArguments": "000000000000000000000000c23baf5eb5848d19701bbe7f139645e6bd58a319000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x76b76307f778CB98Cc71DF9f00cBF99C32544C03", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x88AcaD5222Fbb66C23d0E9532FDd32e57C68a53F", + "constructorArguments": "0000000000000000000000003a464f746d23ab22155710f44db16dca53e0775e000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d00000000000000000000000076b76307f778cb98cc71df9f00cbf99c32544c0300000000000000000000000000000000000000000000000000000000", + "isProxy": true } ], "optimism": [ @@ -953,7 +1025,7 @@ "isProxy": true }, { - "name": "connectionManager", + "name": "ConnectionManager", "address": "0xd83A4F747fE80Ed98839e05079B1B7Fe037b1638", "isProxy": false }, @@ -1066,7 +1138,7 @@ "isProxy": true }, { - "name": "interchainGasPaymaster", + "name": "InterchainGasPaymaster", "address": "0xFB9e40D811Cea562cc8a322b029eF2BDcC3ef6ed", "constructorArguments": "", "isProxy": false @@ -1082,6 +1154,170 @@ "address": "0xc5D6aCaafBCcEC6D7fD7d92F4509befce641c563", "constructorArguments": "0000000000000000000000006119b76720ccfeb3d256ec1b91218eeffd6756e1000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0xdc47eDc036daaE45D3F019CCfD443Bf72fBD981c", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xCDaebcc592DA5c982B05E95039FF5f3467420223", + "constructorArguments": "0000000000000000000000005e01d8f34b629e3f92d69546bbc4142a7adee7e9000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000006d6f2d6d000000000000000000000000dc47edc036daae45d3f019ccfd443bf72fbd981c00000000000000000000000000000000000000000000000000000000", + "isProxy": true + } + ], + "moonbeam": [ + { + "name": "UpgradeBeaconController", + "address": "0x2C1FAbEcd7bFBdEBF27CcdB67baADB38b6Df90fC", + "constructorArguments": "", + "isProxy": false + }, + { + "name": "InterchainGasPaymaster", + "address": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", + "constructorArguments": "", + "isProxy": false + }, + { + "name": "UpgradeBeacon", + "address": "0x8F7454AC98228f3504Bb91eA3D8Adafe6406110A", + "constructorArguments": "0000000000000000000000008b83fefd896faa52057798f6426e9f0b080fccce0000000000000000000000002c1fabecd7bfbdebf27ccdb67baadb38b6df90fc", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xEb9FcFDC9EfDC17c1EC5E1dc085B98485da213D6", + "constructorArguments": "0000000000000000000000008f7454ac98228f3504bb91ea3d8adafe6406110a000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "ConnectionManager", + "address": "0x1052eF3419f26Bec74Ed7CEf4a4FA6812Bc09908", + "constructorArguments": "", + "isProxy": false + }, + { + "name": "OutboxValidatorManager", + "address": "0x0761b0827849abbf7b0cC09CE14e1C93D87f5004", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030000000000000000000000003da42c84aaf9d548feb219bfdf5fcb2217fbfb4800000000000000000000000065e94ffb6696403a5e6534cbfb6befebda6a02260000000000000000000000001bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581", + "isProxy": false + }, + { + "name": "Outbox", + "address": "0x4Ed7d626f1E96cD1C0401607Bf70D95243E3dEd1", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d", + "isProxy": false + }, + { + "name": "UpgradeBeacon", + "address": "0x2f2aFaE1139Ce54feFC03593FeE8AB2aDF4a85A7", + "constructorArguments": "0000000000000000000000004ed7d626f1e96cd1c0401607bf70d95243e3ded10000000000000000000000002c1fabecd7bfbdebf27ccdb67baadb38b6df90fc", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", + "constructorArguments": "0000000000000000000000002f2afae1139ce54fefc03593fee8ab2adf4a85a700000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000000761b0827849abbf7b0cc09ce14e1c93d87f500400000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x3a867fCfFeC2B790970eeBDC9023E75B0a172aa7", + "constructorArguments": "0000000000000000000000000000000000000000000000000000000063656c6f0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000050000000000000000000000008784f09c2cfb70329b936a3b75eb61c41b467b6500000000000000000000000036daf0ac1f4feb22440ea0834308e0d3ae4091390000000000000000000000003fc9689d60e3fe78a624eeb5d9d3452b272cb1a4000000000000000000000000d8b404ad70a1682aaf457d4918f7b506035262d30000000000000000000000001ba04e4df7df9d736543cc9a8d6f61278ea140ec", + "isProxy": false + }, + { + "name": "Inbox", + "address": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "constructorArguments": "000000000000000000000000000000000000000000000000000000006d6f2d6d", + "isProxy": false + }, + { + "name": "UpgradeBeacon", + "address": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3", + "constructorArguments": "0000000000000000000000007f50c5776722630a0024fae05fde8b47571d7b390000000000000000000000002c1fabecd7bfbdebf27ccdb67baadb38b6df90fc", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x02d16BC51af6BfD153d67CA61754cF912E82C4d9", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c0000000000000000000000000000000000000000000000000000000063656c6f0000000000000000000000003a867fcffec2b790970eebdc9023e75b0a172aa700000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x8428a1a7E97Fc75Fb7Ba5c4aec31B55e52bbe9D6", + "constructorArguments": "00000000000000000000000000000000000000000000000000000000006574680000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000050000000000000000000000007c1d96c9e72c41b84d74095dc2e72b979e933904000000000000000000000000d82ebbd1ef3d75b21f33a36a5c250865d97b9ca1000000000000000000000000333f37f29c6bca607084a75abbe66fd268f585cb0000000000000000000000001946782598328c6d5e1cd1076d37feab680ad9d2000000000000000000000000adf418c044e857c174e70b3a1df7454b55ee258f", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x14c3CEee8F431aE947364f43429a98EA89800238", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c00000000000000000000000000000000000000000000000000000000006574680000000000000000000000008428a1a7e97fc75fb7ba5c4aec31b55e52bbe9d600000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x398633D19f4371e1DB5a8EFE90468eB70B1176AA", + "constructorArguments": "00000000000000000000000000000000000000000000000000000000617661780000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000050000000000000000000000001353b91e2b256ca0a283504b02ae3c69374fb1050000000000000000000000009c6028433b8a0af8530399e57433d2b3b5379b550000000000000000000000005344d1cccaa4cb189ec7c2d30bdd9eb202aeb7380000000000000000000000001e1086f3e6f2f5762af54b8167cde934186cbaf9000000000000000000000000d0b24bb03d2c244c3b1ca78c21a793c9e6ff4d87", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x4B44e4305B42405382b7BeC717F64D0552a9D9Fe", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c0000000000000000000000000000000000000000000000000000000061766178000000000000000000000000398633d19f4371e1db5a8efe90468eb70b1176aa00000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x28EFBCadA00A7ed6772b3666F3898d276e88CAe3", + "constructorArguments": "00000000000000000000000000000000000000000000000000000000706f6c79000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005000000000000000000000000ff198cae21069d865b142f2b9e798d3b299b8df6000000000000000000000000577ae23f23a4b81c5c7e26ddd1ffa8c317937629000000000000000000000000c79c2e64c5051ac1c8df4a18df4f9ceb5a2ec7670000000000000000000000005201867fc19c7104ca18b37d07c60bbfe81641970000000000000000000000004c055065ddd22dc874b3494eb81fcdc1cde9f57e", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x0E3239277501d215e17a4d31c487F86a425E110B", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c00000000000000000000000000000000000000000000000000000000706f6c7900000000000000000000000028efbcada00a7ed6772b3666f3898d276e88cae300000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x23ce76645EC601148fa451e751eeB75785b97A00", + "constructorArguments": "0000000000000000000000000000000000000000000000000000000000627363000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005000000000000000000000000013d01a570b5cfa19032c5176488b5824e225a6b000000000000000000000000507ee81c640daeed081ba013324e4e26bc89344600000000000000000000000027d47d7d5f14f76b5f800481499f4c1cb1eb54d900000000000000000000000024f9004c3e02c8c354881685b221cad8faf4d9b00000000000000000000000007e303dac8b6b24cac10b6f032e0ef373a1d80299", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0x552D41c0B5c774F529C956E7CC77d0e054D7aFa8", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000000062736300000000000000000000000023ce76645ec601148fa451e751eeb75785b97a0000000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0x71b2644183ECA86401c13577f5332fcc5e48352a", + "constructorArguments": "00000000000000000000000000000000000000000000000000000000006172620000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000050000000000000000000000006289f913acc64c2e6baaa2b5175c7db35f98f62d0000000000000000000000003b989d35931f39d6c7b5bdd41eac3cad5c903af900000000000000000000000038566cc4ceb264dfcb0022d9857ffe6c9da33881000000000000000000000000ff20dfeee355ef5a6d3c6dee25aab697ad3915a4000000000000000000000000b2e9b58b63c8676e583c2c0050bd46cecd8ac8f3", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xCA41932888D323B3d99f5eA48F86D502055C0322", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c000000000000000000000000000000000000000000000000000000000061726200000000000000000000000071b2644183eca86401c13577f5332fcc5e48352a00000000000000000000000000000000000000000000000000000000", + "isProxy": true + }, + { + "name": "InboxValidatorManager", + "address": "0xBC9cd961BF6c224FAc51fb049aB6788e38e4A9C0", + "constructorArguments": "0000000000000000000000000000000000000000000000000000000000006f70000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005000000000000000000000000cf2dcc3462c84420965501c1dda3d62dde08941d0000000000000000000000006dc8296b04206521afc57b868653203fa558503700000000000000000000000095c27b4d029b11f7581f3f36b6575a14daba83d10000000000000000000000008669a883652dbf8c47decbc4ec8b137e54a5beaf0000000000000000000000009d8a7f26b62fc4e481be0f0736683d2822a8c354", + "isProxy": false + }, + { + "name": "UpgradeBeaconProxy", + "address": "0xF5739A4AF21346Aa937bF7fEB5d3B21c2d230138", + "constructorArguments": "0000000000000000000000002f9db5616fa3fad1ab06cb2c906830ba63d135e3000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000448624c35c0000000000000000000000000000000000000000000000000000000000006f70000000000000000000000000bc9cd961bf6c224fac51fb049ab6788e38e4a9c000000000000000000000000000000000000000000000000000000000", + "isProxy": true } ] } diff --git a/typescript/infra/config/environments/mainnet/funding.ts b/typescript/infra/config/environments/mainnet/funding.ts index 116d85921..05b9a5197 100644 --- a/typescript/infra/config/environments/mainnet/funding.ts +++ b/typescript/infra/config/environments/mainnet/funding.ts @@ -8,7 +8,7 @@ import { environment } from './chains'; export const keyFunderConfig: KeyFunderConfig = { docker: { repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', - tag: 'sha-dcc84ea', + tag: 'sha-a290b07', }, cronSchedule: '45 * * * *', // Every hour at the 45 minute mark namespace: environment, diff --git a/typescript/infra/config/environments/mainnet/helloworld.ts b/typescript/infra/config/environments/mainnet/helloworld.ts index a134246ab..b3086d944 100644 --- a/typescript/infra/config/environments/mainnet/helloworld.ts +++ b/typescript/infra/config/environments/mainnet/helloworld.ts @@ -12,7 +12,7 @@ export const abacus: HelloWorldConfig = { kathy: { docker: { repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', - tag: 'sha-dcc84ea', + tag: 'sha-a290b07', }, chainsToSkip: [], runEnv: environment, @@ -32,7 +32,7 @@ export const releaseCandidate: HelloWorldConfig = { kathy: { docker: { repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', - tag: 'sha-dcc84ea', + tag: 'sha-a290b07', }, chainsToSkip: [], runEnv: environment, diff --git a/typescript/infra/config/environments/mainnet/helloworld/abacus/addresses.json b/typescript/infra/config/environments/mainnet/helloworld/abacus/addresses.json index 1083580bc..9d9174b01 100644 --- a/typescript/infra/config/environments/mainnet/helloworld/abacus/addresses.json +++ b/typescript/infra/config/environments/mainnet/helloworld/abacus/addresses.json @@ -19,5 +19,8 @@ }, "ethereum": { "router": "0x4Ee9dEBB3046139661b51E17bdfD54Fd63211de7" + }, + "moonbeam": { + "router": "0x5d6eb15CbD7eD02685abA3eA3700d4D0E4161d6b" } } diff --git a/typescript/infra/config/environments/mainnet/helloworld/abacus/verification.json b/typescript/infra/config/environments/mainnet/helloworld/abacus/verification.json index b5d073fb0..be675b1ff 100644 --- a/typescript/infra/config/environments/mainnet/helloworld/abacus/verification.json +++ b/typescript/infra/config/environments/mainnet/helloworld/abacus/verification.json @@ -1 +1,66 @@ -"{\"bsc\":[{\"name\":\"router\",\"address\":\"0x8eC5f0239C77295452Ed899FDB851e785cA5FC31\",\"constructorArguments\":\"00000000000000000000000019dc38aeae620380430c200a6e990d5af548011700000000000000000000000047bf94790241b1764fc41a35a8329a15569e121c\",\"isProxy\":false}],\"avalanche\":[{\"name\":\"router\",\"address\":\"0x23f63C65c474f2A5BF80ea845Ca496Da3689A2B9\",\"constructorArguments\":\"0000000000000000000000008b83fefd896faa52057798f6426e9f0b080fccce000000000000000000000000ed9a722c543883fb7e07e78f3879762de09ea7d5\",\"isProxy\":false}],\"polygon\":[{\"name\":\"router\",\"address\":\"0xb3eCff91A3C3FB1A2F57DE2881a0Cab7b56E129b\",\"constructorArguments\":\"0000000000000000000000001ab68dc4f7b6cfcd00218d4b761b7f3b5a72455500000000000000000000000060b8d195f1b2ecac26d54b95c69e6399cfd64b53\",\"isProxy\":false}],\"celo\":[{\"name\":\"router\",\"address\":\"0x37fcf9DAEFAb05939c6e299c1AB8e7430A5715c8\",\"constructorArguments\":\"00000000000000000000000012582c7b0f43c6a667cbaa7fa8b112f7fb1e69f0000000000000000000000000cdeb368db32eccefaf7018e152da9120565cb572\",\"isProxy\":false}],\"arbitrum\":[{\"name\":\"router\",\"address\":\"0x2e542a3DF4fde491faa77da05eD48377aca9E44e\",\"constructorArguments\":\"0000000000000000000000008b83fefd896faa52057798f6426e9f0b080fccce000000000000000000000000376ad181e8cd45ead5403f78d5a871d08c3c4d77\",\"isProxy\":false}],\"optimism\":[{\"name\":\"router\",\"address\":\"0x2A532fc8cF9a72142eA8753a0d2AB68098C19585\",\"constructorArguments\":\"000000000000000000000000d83a4f747fe80ed98839e05079b1b7fe037b1638000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563\",\"isProxy\":false}],\"ethereum\":[{\"name\":\"router\",\"address\":\"0x4Ee9dEBB3046139661b51E17bdfD54Fd63211de7\",\"constructorArguments\":\"000000000000000000000000ea87ae93fa0019a82a727bfd3ebd1cfca8f64f1d00000000000000000000000017e216fbb22df4ef8a6640ae9cb147c92710ac84\",\"isProxy\":false}]}" +{ + "bsc": [ + { + "name": "router", + "address": "0x8eC5f0239C77295452Ed899FDB851e785cA5FC31", + "constructorArguments": "00000000000000000000000019dc38aeae620380430c200a6e990d5af548011700000000000000000000000047bf94790241b1764fc41a35a8329a15569e121c", + "isProxy": false + } + ], + "avalanche": [ + { + "name": "router", + "address": "0x23f63C65c474f2A5BF80ea845Ca496Da3689A2B9", + "constructorArguments": "0000000000000000000000008b83fefd896faa52057798f6426e9f0b080fccce000000000000000000000000ed9a722c543883fb7e07e78f3879762de09ea7d5", + "isProxy": false + } + ], + "polygon": [ + { + "name": "router", + "address": "0xb3eCff91A3C3FB1A2F57DE2881a0Cab7b56E129b", + "constructorArguments": "0000000000000000000000001ab68dc4f7b6cfcd00218d4b761b7f3b5a72455500000000000000000000000060b8d195f1b2ecac26d54b95c69e6399cfd64b53", + "isProxy": false + } + ], + "celo": [ + { + "name": "router", + "address": "0x37fcf9DAEFAb05939c6e299c1AB8e7430A5715c8", + "constructorArguments": "00000000000000000000000012582c7b0f43c6a667cbaa7fa8b112f7fb1e69f0000000000000000000000000cdeb368db32eccefaf7018e152da9120565cb572", + "isProxy": false + } + ], + "arbitrum": [ + { + "name": "router", + "address": "0x2e542a3DF4fde491faa77da05eD48377aca9E44e", + "constructorArguments": "0000000000000000000000008b83fefd896faa52057798f6426e9f0b080fccce000000000000000000000000376ad181e8cd45ead5403f78d5a871d08c3c4d77", + "isProxy": false + } + ], + "optimism": [ + { + "name": "router", + "address": "0x2A532fc8cF9a72142eA8753a0d2AB68098C19585", + "constructorArguments": "000000000000000000000000d83a4f747fe80ed98839e05079b1b7fe037b1638000000000000000000000000c5d6acaafbccec6d7fd7d92f4509befce641c563", + "isProxy": false + } + ], + "ethereum": [ + { + "name": "router", + "address": "0x4Ee9dEBB3046139661b51E17bdfD54Fd63211de7", + "constructorArguments": "000000000000000000000000ea87ae93fa0019a82a727bfd3ebd1cfca8f64f1d00000000000000000000000017e216fbb22df4ef8a6640ae9cb147c92710ac84", + "isProxy": false + } + ], + "moonbeam": [ + { + "name": "router", + "address": "0x5d6eb15CbD7eD02685abA3eA3700d4D0E4161d6b", + "constructorArguments": "0000000000000000000000001052ef3419f26bec74ed7cef4a4fa6812bc09908000000000000000000000000eb9fcfdc9efdc17c1ec5e1dc085b98485da213d6", + "isProxy": false + } + ] +} diff --git a/typescript/infra/config/environments/mainnet/helloworld/rc/addresses.json b/typescript/infra/config/environments/mainnet/helloworld/rc/addresses.json index 882d83711..0b7272483 100644 --- a/typescript/infra/config/environments/mainnet/helloworld/rc/addresses.json +++ b/typescript/infra/config/environments/mainnet/helloworld/rc/addresses.json @@ -19,5 +19,8 @@ }, "ethereum": { "router": "0x7E647Eb3A10D7718F12f64b76542c169b9cE355D" + }, + "moonbeam": { + "router": "0xb3d652BA393f83c0Cf7eF5e0Fc30532ebd49d45B" } } diff --git a/typescript/infra/config/environments/mainnet/helloworld/rc/verification.json b/typescript/infra/config/environments/mainnet/helloworld/rc/verification.json index 6268f51e9..1576f3104 100644 --- a/typescript/infra/config/environments/mainnet/helloworld/rc/verification.json +++ b/typescript/infra/config/environments/mainnet/helloworld/rc/verification.json @@ -1 +1,10 @@ -"{\"bsc\":[],\"avalanche\":[],\"polygon\":[],\"celo\":[],\"arbitrum\":[],\"optimism\":[],\"ethereum\":[]}" +{ + "moonbeam": [ + { + "name": "router", + "address": "0xb3d652BA393f83c0Cf7eF5e0Fc30532ebd49d45B", + "constructorArguments": "0000000000000000000000001052ef3419f26bec74ed7cef4a4fa6812bc09908000000000000000000000000eb9fcfdc9efdc17c1ec5e1dc085b98485da213d6", + "isProxy": false + } + ] +} diff --git a/typescript/infra/config/environments/mainnet/validators.ts b/typescript/infra/config/environments/mainnet/validators.ts index b8436720c..b78509ef5 100644 --- a/typescript/infra/config/environments/mainnet/validators.ts +++ b/typescript/infra/config/environments/mainnet/validators.ts @@ -379,4 +379,36 @@ export const validators: ChainValidatorSets = { }, ], }, + moonbeam: { + threshold: 2, + validators: [ + { + address: '0x3da42c84aaf9d548feb219bfdf5fcb2217fbfb48', + name: s3BucketName('moonbeam', 0), + checkpointSyncer: { + type: CheckpointSyncerType.S3, + bucket: s3BucketName('moonbeam', 0), + region: s3BucketRegion, + }, + }, + { + address: '0x65e94ffb6696403a5e6534cbfb6befebda6a0226', + name: s3BucketName('moonbeam', 1), + checkpointSyncer: { + type: CheckpointSyncerType.S3, + bucket: s3BucketName('moonbeam', 1), + region: s3BucketRegion, + }, + }, + { + address: '0x1bf2f7e9fdfe832c5d05f94dd66dc8704ebdc581', + name: s3BucketName('moonbeam', 2), + checkpointSyncer: { + type: CheckpointSyncerType.S3, + bucket: s3BucketName('moonbeam', 2), + region: s3BucketRegion, + }, + }, + ], + }, }; diff --git a/typescript/infra/scripts/funding/fund-keys-from-deployer.ts b/typescript/infra/scripts/funding/fund-keys-from-deployer.ts index d2c4efbc3..d51d31dd4 100644 --- a/typescript/infra/scripts/funding/fund-keys-from-deployer.ts +++ b/typescript/infra/scripts/funding/fund-keys-from-deployer.ts @@ -77,6 +77,7 @@ const desiredBalancePerChain: CompleteChainMap = { bsctestnet: '1', goerli: '0.1', moonbasealpha: '1', + moonbeam: '0.1', // unused auroratestnet: '0', test1: '0', diff --git a/typescript/infra/scripts/verify-core.ts b/typescript/infra/scripts/verify-core.ts index 505bba80b..cbb59cbfb 100644 --- a/typescript/infra/scripts/verify-core.ts +++ b/typescript/infra/scripts/verify-core.ts @@ -39,7 +39,7 @@ async function main() { // from solidity/core/hardhat.config.ts const compilerOptions: CompilerOptions = { codeformat: 'solidity-single-file', - compilerversion: 'v0.8.13+commit.abaa5c0e', + compilerversion: 'v0.8.16+commit.07a7930e', optimizationUsed: '1', runs: '999999', }; diff --git a/typescript/sdk/src/consts/chainConnectionConfigs.ts b/typescript/sdk/src/consts/chainConnectionConfigs.ts index 007c17379..c05b1f738 100644 --- a/typescript/sdk/src/consts/chainConnectionConfigs.ts +++ b/typescript/sdk/src/consts/chainConnectionConfigs.ts @@ -133,6 +133,16 @@ export const moonbasealpha: IChainConnection = { apiPrefix: 'api-', }; +export const moonbeam: IChainConnection = { + provider: new ethers.providers.JsonRpcProvider( + 'https://rpc.api.moonbeam.network ', + 1284, + ), + confirmations: 1, + blockExplorerUrl: 'https://moonscan.io/', + apiPrefix: 'api-moonbeam.', +}; + export const test1: IChainConnection = { provider: new ethers.providers.JsonRpcProvider( 'http://localhost:8545', @@ -172,6 +182,7 @@ export const chainConnectionConfigs: ChainMap = { bsctestnet, optimism, moonbasealpha, + moonbeam, test1, test2, test3, diff --git a/typescript/sdk/src/consts/chainMetadata.ts b/typescript/sdk/src/consts/chainMetadata.ts index 1ab62a3ec..0d8aab54e 100644 --- a/typescript/sdk/src/consts/chainMetadata.ts +++ b/typescript/sdk/src/consts/chainMetadata.ts @@ -150,6 +150,11 @@ export const moonbasealpha: ChainMetadata = { finalityBlocks: 1, }; +export const moonbeam: ChainMetadata = { + id: 0x6d6f2d6d, // b'mo-a' interpreted as an int + finalityBlocks: 1, +}; + export const chainMetadata = { arbitrum, bsc, @@ -165,5 +170,6 @@ export const chainMetadata = { bsctestnet, auroratestnet, moonbasealpha, + moonbeam, ...testChains, } as Record; diff --git a/typescript/sdk/src/consts/chains.ts b/typescript/sdk/src/consts/chains.ts index d3324ff03..8f3e8eb79 100644 --- a/typescript/sdk/src/consts/chains.ts +++ b/typescript/sdk/src/consts/chains.ts @@ -18,6 +18,7 @@ export enum Chains { // must be string type to be used with Object.keys bsctestnet = 'bsctestnet', auroratestnet = 'auroratestnet', moonbasealpha = 'moonbasealpha', + moonbeam = 'moonbeam', test1 = 'test1', test2 = 'test2', test3 = 'test3', @@ -31,6 +32,7 @@ export const Mainnets = [ Chains.ethereum, Chains.optimism, Chains.polygon, + Chains.moonbeam, ] as Array; export const AllChains = Object.keys(Chains) as Array; diff --git a/typescript/sdk/src/consts/environments/mainnet.json b/typescript/sdk/src/consts/environments/mainnet.json index e9019f2f6..be063bc49 100644 --- a/typescript/sdk/src/consts/environments/mainnet.json +++ b/typescript/sdk/src/consts/environments/mainnet.json @@ -62,6 +62,15 @@ "beacon": "0x3a464f746D23Ab22155710f44dB16dcA53e0775E" }, "inboxValidatorManager": "0x23ce76645EC601148fa451e751eeB75785b97A00" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x32af5Df81fEd5E26119F6640FBB13f3d63a94CDe", + "implementation": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", + "beacon": "0x3a464f746D23Ab22155710f44dB16dcA53e0775E" + }, + "inboxValidatorManager": "0xDd0D36E55078c643cefDc17936b63BACC71c50Da" } }, "outbox": { @@ -135,6 +144,15 @@ "beacon": "0x2fa5F5C96419C222cDbCeC797D696e6cE428A7A9" }, "inboxValidatorManager": "0x6Fae4D9935E2fcb11fC79a64e917fb2BF14DaFaa" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x79e25126E1dAB135734e0261E8aB93674131fD2b", + "implementation": "0x99ca8c74cE7Cfa9d72A51fbb05F9821f5f826b3a", + "beacon": "0x2fa5F5C96419C222cDbCeC797D696e6cE428A7A9" + }, + "inboxValidatorManager": "0x319f058FeedA044bD20E949FDCA31AEbb19b0063" } }, "outbox": { @@ -208,6 +226,15 @@ "beacon": "0xdB670e1a1e312BF17425b08cE55Bdf2cD8F8eD54" }, "inboxValidatorManager": "0x8105a095368f1a184CceA86cCe21318B5Ee5BE28" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x6267Dbfc38f7Af897536563c15f07B89634cb656", + "implementation": "0x5332D1AC0A626D265298c14ff681c0A8D28dB86d", + "beacon": "0xdB670e1a1e312BF17425b08cE55Bdf2cD8F8eD54" + }, + "inboxValidatorManager": "0x0c7b67793c56eD93773cEee07A43B3D7aDF533b7" } }, "outbox": { @@ -281,6 +308,15 @@ "beacon": "0x5332D1AC0A626D265298c14ff681c0A8D28dB86d" }, "inboxValidatorManager": "0x2Fca7f6eC3d4A0408900f2BB30004d4616eE985E" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0xEb4ca142644172878Bee23E44C8BDae215E92430", + "implementation": "0x0BD07E3934D1C4cc8Db0eA2a5cDAc8C8d8eb9824", + "beacon": "0x5332D1AC0A626D265298c14ff681c0A8D28dB86d" + }, + "inboxValidatorManager": "0x0D11258092e5BC4a813478ff8837887C2A1a6e89" } }, "outbox": { @@ -354,6 +390,15 @@ "beacon": "0x3a464f746D23Ab22155710f44dB16dcA53e0775E" }, "inboxValidatorManager": "0x23ce76645EC601148fa451e751eeB75785b97A00" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x88AcaD5222Fbb66C23d0E9532FDd32e57C68a53F", + "implementation": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", + "beacon": "0x3a464f746D23Ab22155710f44dB16dcA53e0775E" + }, + "inboxValidatorManager": "0x76b76307f778CB98Cc71DF9f00cBF99C32544C03" } }, "outbox": { @@ -427,6 +472,15 @@ "beacon": "0x5E01d8F34b629E3f92d69546bbc4142A7Adee7e9" }, "inboxValidatorManager": "0xB3fCcD379ad66CED0c91028520C64226611A48c9" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0xCDaebcc592DA5c982B05E95039FF5f3467420223", + "implementation": "0x811808Dd29ba8B0FC6C0ec0b5537035E59745162", + "beacon": "0x5E01d8F34b629E3f92d69546bbc4142A7Adee7e9" + }, + "inboxValidatorManager": "0xdc47eDc036daaE45D3F019CCfD443Bf72fBD981c" } }, "outbox": { @@ -500,6 +554,15 @@ "beacon": "0x14c3CEee8F431aE947364f43429a98EA89800238" }, "inboxValidatorManager": "0xF5739A4AF21346Aa937bF7fEB5d3B21c2d230138" + }, + "moonbeam": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0xdc47eDc036daaE45D3F019CCfD443Bf72fBD981c", + "implementation": "0x8428a1a7E97Fc75Fb7Ba5c4aec31B55e52bbe9D6", + "beacon": "0x14c3CEee8F431aE947364f43429a98EA89800238" + }, + "inboxValidatorManager": "0x1Dcf599693707f41375695488589F4C6Af3845e8" } }, "outbox": { @@ -509,5 +572,87 @@ "beacon": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39" }, "outboxValidatorManager": "0x3a464f746D23Ab22155710f44dB16dcA53e0775E" + }, + "moonbeam": { + "upgradeBeaconController": "0x2C1FAbEcd7bFBdEBF27CcdB67baADB38b6Df90fC", + "connectionManager": "0x1052eF3419f26Bec74Ed7CEf4a4FA6812Bc09908", + "interchainGasPaymaster": { + "kind": "UpgradeBeacon", + "proxy": "0xEb9FcFDC9EfDC17c1EC5E1dc085B98485da213D6", + "implementation": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", + "beacon": "0x8F7454AC98228f3504Bb91eA3D8Adafe6406110A" + }, + "inboxes": { + "celo": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x02d16BC51af6BfD153d67CA61754cF912E82C4d9", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0x3a867fCfFeC2B790970eeBDC9023E75B0a172aa7" + }, + "ethereum": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x14c3CEee8F431aE947364f43429a98EA89800238", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0x8428a1a7E97Fc75Fb7Ba5c4aec31B55e52bbe9D6" + }, + "avalanche": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x4B44e4305B42405382b7BeC717F64D0552a9D9Fe", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0x398633D19f4371e1DB5a8EFE90468eB70B1176AA" + }, + "polygon": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x0E3239277501d215e17a4d31c487F86a425E110B", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0x28EFBCadA00A7ed6772b3666F3898d276e88CAe3" + }, + "bsc": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0x552D41c0B5c774F529C956E7CC77d0e054D7aFa8", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0x23ce76645EC601148fa451e751eeB75785b97A00" + }, + "arbitrum": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0xCA41932888D323B3d99f5eA48F86D502055C0322", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0x71b2644183ECA86401c13577f5332fcc5e48352a" + }, + "optimism": { + "inbox": { + "kind": "UpgradeBeacon", + "proxy": "0xF5739A4AF21346Aa937bF7fEB5d3B21c2d230138", + "implementation": "0x7f50C5776722630a0024fAE05fDe8b47571D7B39", + "beacon": "0x2f9DB5616fa3fAd1aB06cB2C906830BA63d135e3" + }, + "inboxValidatorManager": "0xBC9cd961BF6c224FAc51fb049aB6788e38e4A9C0" + } + }, + "outbox": { + "kind": "UpgradeBeacon", + "proxy": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", + "implementation": "0x4Ed7d626f1E96cD1C0401607Bf70D95243E3dEd1", + "beacon": "0x2f2aFaE1139Ce54feFC03593FeE8AB2aDF4a85A7" + }, + "outboxValidatorManager": "0x0761b0827849abbf7b0cC09CE14e1C93D87f5004" } }