feat: deploy to new testnets (connextsepolia, superpositiontestnet) (#4150)

- feat: deploy to new testnets (connextsepolia, superpositiontestnet)
- https://github.com/hyperlane-xyz/issues/issues/1308
- also includes https://github.com/hyperlane-xyz/issues/issues/1305
- registry pr
https://github.com/hyperlane-xyz/hyperlane-registry/pull/105
pull/4154/head
Paul Balaji 4 months ago committed by GitHub
parent 4f1ea15e28
commit 2c0ae3cf37
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      .changeset/beige-chicken-chew.md
  2. 2
      .registryrc
  3. 150
      rust/config/testnet_config.json
  4. 14
      rust/hyperlane-core/src/chain.rs
  5. 12
      typescript/infra/config/environments/testnet4/agent.ts
  6. 6
      typescript/infra/config/environments/testnet4/aw-validators/hyperlane.json
  7. 208
      typescript/infra/config/environments/testnet4/core/verification.json
  8. 8
      typescript/infra/config/environments/testnet4/funding.ts
  9. 35
      typescript/infra/config/environments/testnet4/gas-oracle.ts
  10. 400
      typescript/infra/config/environments/testnet4/ism/verification.json
  11. 2
      typescript/infra/config/environments/testnet4/supportedChainNames.ts
  12. 20
      typescript/infra/config/environments/testnet4/validators.ts
  13. 10
      typescript/sdk/src/consts/multisigIsm.ts

@ -0,0 +1,5 @@
---
'@hyperlane-xyz/sdk': minor
---
Deploy to connextsepolia + superpositiontestnet

@ -1 +1 @@
v2.3.0
07ebc9cba162c207ec300bf301f669c401825e31

@ -28,6 +28,7 @@
},
"displayName": "Alfajores",
"domainId": 44787,
"domainRoutingIsm": "0xD1DCBe1546bb911f2570E939a231A28F14C29638",
"domainRoutingIsmFactory": "0x30d9A03762431F8A917a0C469E7A62Bf55092Ca6",
"fallbackRoutingHook": "0x3528B1aeF3a3d29E0eae90ad777A2b4A6a48aC3F",
"index": {
@ -36,6 +37,7 @@
"interchainAccountIsm": "0x6895d3916B94b386fAA6ec9276756e16dAe7480E",
"interchainAccountRouter": "0xEbA64c8a9b4a61a9210d5fe7E4375380999C821b",
"interchainGasPaymaster": "0x44769b0f4a6f01339e131a691cc2eebbb519d297",
"interchainSecurityModule": "0x8B29157852340cC5d3d0E289be3B0344E8812173",
"isTestnet": true,
"mailbox": "0xEf9F292fcEBC3848bF4bB92a96a04F9ECBb78E59",
"merkleTreeHook": "0x221FA9CBaFcd6c1C3d206571Cf4427703e023FFa",
@ -45,6 +47,8 @@
"name": "CELO",
"symbol": "CELO"
},
"pausableHook": "0x4a2902395A40Ecf0B57CaB362b59bAffba9BB4aE",
"pausableIsm": "0xA4caB1565083D33899A6eE69B174cC7729b3EaDF",
"protocol": "ethereum",
"protocolFee": "0xC9D50584F08Bf6cCD1004d14c7062044b45E3b48",
"proxyAdmin": "0x4eDBf5846D973c53AF478cf62aB5bC92807521e3",
@ -54,6 +58,7 @@
}
],
"staticAggregationHookFactory": "0x71bB34Ee833467443628CEdFAA188B2387827Cee",
"staticAggregationIsm": "0x8B29157852340cC5d3d0E289be3B0344E8812173",
"staticAggregationIsmFactory": "0x4bE8AC22f506B1504C93C3A5b1579C5e7c550D9C",
"staticMerkleRootMultisigIsmFactory": "0xa9C7e306C0941896CA1fd528aA59089571D8D67E",
"staticMessageIdMultisigIsmFactory": "0xC1b8c0e56D6a34940Ee2B86172450B54AFd633A7",
@ -85,6 +90,8 @@
},
"displayName": "BSC Testnet",
"domainId": 97,
"domainRoutingIsm": "0x82A4aac9bED3DFDfb9569031E19d18431204681C",
"domainRoutingIsmFactory": "0xD2a0c68ed92D1Eb3C699D2808b06dd7b70367F92",
"fallbackRoutingHook": "0x2670ED2EC08cAd135307556685a96bD4c16b007b",
"index": {
"chunk": 1000,
@ -93,6 +100,7 @@
"interchainAccountIsm": "0xa9D8Ec959F34272B1a56D09AF00eeee58970d3AE",
"interchainAccountRouter": "0x6d2B3e304E58c2a19f1492E7cf15CaF63Ce6e0d2",
"interchainGasPaymaster": "0x0dD20e410bdB95404f71c5a4e7Fa67B892A5f949",
"interchainSecurityModule": "0x8fb481f65d04c590b8507F75D05Ed29594590376",
"isTestnet": true,
"mailbox": "0xF9F6F5646F478d5ab4e20B0F910C92F1CCC9Cc6D",
"merkleTreeHook": "0xc6cbF39A747f5E28d1bDc8D9dfDAb2960Abd5A8f",
@ -102,6 +110,8 @@
"name": "BNB",
"symbol": "BNB"
},
"pausableHook": "0xA71E50eFd93600933650A324AE43d395a8aE4AC7",
"pausableIsm": "0xb98B1596897d3c122111ea6b6b9014A95920F459",
"protocol": "ethereum",
"protocolFee": "0x3eF0a63B8976b838704Bcc93C78C56b6653E5a39",
"proxyAdmin": "0xb12282d2E838Aa5f2A4F9Ee5f624a77b7199A078",
@ -114,6 +124,7 @@
}
],
"staticAggregationHookFactory": "0xa1145B39F1c7Ef9aA593BC1DB1634b00CC020942",
"staticAggregationIsm": "0x8fb481f65d04c590b8507F75D05Ed29594590376",
"staticAggregationIsmFactory": "0x40613dE82d672605Ab051C64079022Bb4F8bDE4f",
"staticMerkleRootMultisigIsmFactory": "0x3E235B90197E1D6b5DB5ad5aD49f2c1ED6406382",
"staticMessageIdMultisigIsmFactory": "0x0D96aF0c01c4bbbadaaF989Eb489c8783F35B763",
@ -126,6 +137,65 @@
},
"validatorAnnounce": "0xf09701B0a93210113D175461b6135a96773B5465"
},
"connextsepolia": {
"aggregationHook": "0x331eb40963dc11F5BB271308c42d97ac6e41F124",
"blockExplorers": [
{
"apiUrl": "https://connext-sepolia.blockscout.com/api",
"family": "blockscout",
"name": "Connext Explorer",
"url": "https://connext-sepolia.blockscout.com"
}
],
"blocks": {
"confirmations": 1,
"estimateBlockTime": 10,
"reorgPeriod": 0
},
"chainId": 6398,
"deployer": {
"name": "Everclear",
"url": "https://everclear.org"
},
"displayName": "Connext Sepolia",
"domainId": 6398,
"domainRoutingIsm": "0x4ac19e0bafc2aF6B98094F0a1B817dF196551219",
"domainRoutingIsmFactory": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37",
"fallbackRoutingHook": "0x98AAE089CaD930C64a76dD2247a2aC5773a4B8cE",
"index": {
"from": 4950
},
"interchainGasPaymaster": "0xeC7eb4196Bd601DEa7585A744FbFB4CF11278450",
"interchainSecurityModule": "0x5e6Fe18eC7D4b159bDC5Fa0C32bB1996277B3ddF",
"isTestnet": true,
"mailbox": "0x6966b0E55883d49BFB24539356a2f8A673E02039",
"merkleTreeHook": "0x4926a10788306D84202A2aDbd290b7743146Cc17",
"name": "connextsepolia",
"nativeToken": {
"decimals": 18,
"name": "Ether",
"symbol": "ETH"
},
"pausableHook": "0x07009DA2249c388aD0f416a235AfE90D784e1aAc",
"pausableIsm": "0x58483b754Abb1E8947BE63d6b95DF75b8249543A",
"protocol": "ethereum",
"protocolFee": "0x863E8c26621c52ACa1849C53500606e73BA272F0",
"proxyAdmin": "0x44b764045BfDC68517e10e783E69B376cef196B2",
"rpcUrls": [
{
"http": "https://rpc.connext-sepolia.gelato.digital"
}
],
"staticAggregationHookFactory": "0xeb6f11189197223c656807a83B0DD374f9A6dF44",
"staticAggregationIsm": "0x5e6Fe18eC7D4b159bDC5Fa0C32bB1996277B3ddF",
"staticAggregationIsmFactory": "0x275aCcCa81cAD931dC6fB6E49ED233Bc99Bed4A7",
"staticMerkleRootMultisigIsmFactory": "0x6E7b29CB2A7617405B4d30C6f84bBD51b4Bb4be8",
"staticMessageIdMultisigIsmFactory": "0xfc6e546510dC9d76057F1f76633FCFfC188CB213",
"storageGasOracle": "0xF7561c34f17A32D5620583A3397C304e7038a7F6",
"technicalStack": "arbitrumnitro",
"testRecipient": "0xAb9B273366D794B7F80B4378bc8Aaca75C6178E2",
"validatorAnnounce": "0xAD34A66Bf6dB18E858F6B686557075568c6E031C"
},
"eclipsetestnet": {
"blocks": {
"confirmations": 1,
@ -183,6 +253,7 @@
},
"displayName": "Fuji",
"domainId": 43113,
"domainRoutingIsm": "0xe82EbDCC1B546CEDa0cf5B5495728700f6dE41B4",
"domainRoutingIsmFactory": "0x683a81E0e1a238dcA7341e04c08d3bba6f0Cb74f",
"fallbackRoutingHook": "0xc684f7F50DB4b2563218512e021fBdd0BeD6b57E",
"index": {
@ -191,7 +262,7 @@
"interchainAccountIsm": "0xfaB4815BDC5c60c6bD625459C8577aFdD79D9311",
"interchainAccountRouter": "0xeEF6933122894fF217a7dd07510b3D64b747e29b",
"interchainGasPaymaster": "0x6895d3916B94b386fAA6ec9276756e16dAe7480E",
"interchainSecurityModule": "0x4B02673875ba86729f1490247A14A01c4D6B0a67",
"interchainSecurityModule": "0xdDB75f480841A8333A31c4198ecf1780936B222D",
"isTestnet": true,
"mailbox": "0x5b6CFf85442B851A8e6eaBd2A4E4507B5135B3B0",
"merkleTreeHook": "0x9ff6ac3dAf63103620BBf76136eA1AFf43c2F612",
@ -202,6 +273,7 @@
"symbol": "AVAX"
},
"pausableHook": "0x495e9E119b2aa848b418EF6A4d30b42803de43A9",
"pausableIsm": "0x8e3D9139547be48942Aa4a489bc250FEa51679fa",
"protocol": "ethereum",
"protocolFee": "0xEbA64c8a9b4a61a9210d5fe7E4375380999C821b",
"proxyAdmin": "0x378dA02f7dC3c23A8B5ecE32b8056CdF01e8d477",
@ -214,6 +286,7 @@
}
],
"staticAggregationHookFactory": "0x99554CC33cBCd6EDDd2f3fc9c7C9194Cb3b5df1E",
"staticAggregationIsm": "0xdDB75f480841A8333A31c4198ecf1780936B222D",
"staticAggregationIsmFactory": "0xF588129ed84F219A1f0f921bE7Aa1B2176516858",
"staticMerkleRootMultisigIsmFactory": "0x93F50Ac4E5663DAAb03508008d592f6260964f62",
"staticMessageIdMultisigIsmFactory": "0x90e1F9918F304645e4F6324E5C0EAc70138C84Ce",
@ -224,6 +297,7 @@
"validatorAnnounce": "0x4f7179A691F8a684f56cF7Fed65171877d30739a"
},
"holesky": {
"aggregationHook": "0xb1FfD51f03c69A0a3e5AFEBDE639752DB1d56bc9",
"blockExplorers": [
{
"apiUrl": "https://api-holesky.etherscan.io/api",
@ -244,13 +318,14 @@
},
"displayName": "Holesky",
"domainId": 17000,
"domainRoutingIsm": "0x51890869940b4B7eD7426A612676eC63223eF3Db",
"domainRoutingIsmFactory": "0xDDcFEcF17586D08A5740B7D91735fcCE3dfe3eeD",
"fallbackRoutingHook": "0x07009DA2249c388aD0f416a235AfE90D784e1aAc",
"index": {
"from": 1543015
},
"interchainGasPaymaster": "0x5CBf4e70448Ed46c2616b04e9ebc72D29FF0cfA9",
"interchainSecurityModule": "0x751f2b684EeBb916dB777767CCb8fd793C8b2956",
"interchainSecurityModule": "0x296Be783e0b1CdDed847E34e6587C24dDb710cf9",
"isTestnet": true,
"mailbox": "0x46f7C5D896bbeC89bE1B19e4485e59b4Be49e9Cc",
"merkleTreeHook": "0x98AAE089CaD930C64a76dD2247a2aC5773a4B8cE",
@ -261,6 +336,7 @@
"symbol": "ETH"
},
"pausableHook": "0xF7561c34f17A32D5620583A3397C304e7038a7F6",
"pausableIsm": "0x80fE4Cb8c70fc60B745d4ffD4403c27a8cBC9e02",
"protocol": "ethereum",
"protocolFee": "0x6b1bb4ce664Bb4164AEB4d3D2E7DE7450DD8084C",
"proxyAdmin": "0x33dB966328Ea213b0f76eF96CA368AB37779F065",
@ -270,6 +346,7 @@
}
],
"staticAggregationHookFactory": "0x589C201a07c26b4725A4A829d772f24423da480B",
"staticAggregationIsm": "0x296Be783e0b1CdDed847E34e6587C24dDb710cf9",
"staticAggregationIsmFactory": "0x54148470292C24345fb828B003461a9444414517",
"staticMerkleRootMultisigIsmFactory": "0xC2E36cd6e32e194EE11f15D9273B64461A4D49A2",
"staticMessageIdMultisigIsmFactory": "0x6966b0E55883d49BFB24539356a2f8A673E02039",
@ -299,6 +376,7 @@
},
"displayName": "Plume Testnet",
"domainId": 161221135,
"domainRoutingIsm": "0xF554Be1611572dF824556e8060bf90Fe5bE7Ff08",
"domainRoutingIsmFactory": "0x54148470292C24345fb828B003461a9444414517",
"fallbackRoutingHook": "0x19Be55D859368e02d7b9C00803Eb677BDC1359Bd",
"index": {
@ -307,7 +385,7 @@
"interchainAccountIsm": "0x7c115c16E34c74afdb88bd268EaB19bC705891FE",
"interchainAccountRouter": "0xB6F8aA9B1b314A6E6DFB465DD3e0E95936347517",
"interchainGasPaymaster": "0x28B02B97a850872C4D33C3E024fab6499ad96564",
"interchainSecurityModule": "0x7B40deb01A127E3A5eECdbCDF263e41899a90078",
"interchainSecurityModule": "0xDaE6E59fB970F8df1cCCC7d230a7cdeD8BDfCb95",
"isTestnet": true,
"mailbox": "0x33dB966328Ea213b0f76eF96CA368AB37779F065",
"merkleTreeHook": "0xddf4C3e791caCaFd26D7fb275549739B38ae6e75",
@ -318,6 +396,7 @@
"symbol": "ETH"
},
"pausableHook": "0x5821f3B6eE05F3dC62b43B74AB1C8F8E6904b1C8",
"pausableIsm": "0xDaAc5C311d6e9134C725171Ef06a8a2BaAF4a10f",
"protocol": "ethereum",
"protocolFee": "0x1b33611fCc073aB0737011d5512EF673Bff74962",
"proxyAdmin": "0x589C201a07c26b4725A4A829d772f24423da480B",
@ -328,6 +407,7 @@
}
],
"staticAggregationHookFactory": "0x6966b0E55883d49BFB24539356a2f8A673E02039",
"staticAggregationIsm": "0xDaE6E59fB970F8df1cCCC7d230a7cdeD8BDfCb95",
"staticAggregationIsmFactory": "0xC2E36cd6e32e194EE11f15D9273B64461A4D49A2",
"staticMerkleRootMultisigIsmFactory": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37",
"staticMessageIdMultisigIsmFactory": "0x44b764045BfDC68517e10e783E69B376cef196B2",
@ -362,6 +442,7 @@
},
"displayName": "Scroll Sepolia",
"domainId": 534351,
"domainRoutingIsm": "0x606511c593fd78AFbeD8A2e02EDe2C6179722276",
"domainRoutingIsmFactory": "0x17866ebE0e503784a9461d3e753dEeD0d3F61153",
"fallbackRoutingHook": "0xE1CCB130389f687bf745Dd6dc05E50da17d9ea96",
"index": {
@ -370,6 +451,7 @@
"interchainAccountIsm": "0xE023239c8dfc172FF008D8087E7442d3eBEd9350",
"interchainAccountRouter": "0xe17c37212d785760E8331D4A4395B17b34Ba8cDF",
"interchainGasPaymaster": "0x86fb9F1c124fB20ff130C41a79a432F770f67AFD",
"interchainSecurityModule": "0xcc5BAaa44A8749c7C566b1cb578a315427632053",
"isTestnet": true,
"mailbox": "0x3C5154a193D6e2955650f9305c8d80c18C814A68",
"merkleTreeHook": "0x863E8c26621c52ACa1849C53500606e73BA272F0",
@ -379,6 +461,8 @@
"name": "Ether",
"symbol": "ETH"
},
"pausableHook": "0x390A48fC8Cb8F29B3ffE1B95aD3773414B8DD704",
"pausableIsm": "0xcD19Ff7306E04EA6b8f4B5Ab1c5A198c186aaB42",
"protocol": "ethereum",
"protocolFee": "0x5821f3B6eE05F3dC62b43B74AB1C8F8E6904b1C8",
"proxyAdmin": "0x598facE78a4302f11E3de0bee1894Da0b2Cb71F8",
@ -388,6 +472,7 @@
}
],
"staticAggregationHookFactory": "0x44b764045BfDC68517e10e783E69B376cef196B2",
"staticAggregationIsm": "0xcc5BAaa44A8749c7C566b1cb578a315427632053",
"staticAggregationIsmFactory": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37",
"staticMerkleRootMultisigIsmFactory": "0x275aCcCa81cAD931dC6fB6E49ED233Bc99Bed4A7",
"staticMessageIdMultisigIsmFactory": "0xeb6f11189197223c656807a83B0DD374f9A6dF44",
@ -419,6 +504,7 @@
},
"displayName": "Sepolia",
"domainId": 11155111,
"domainRoutingIsm": "0xfa9a26cCc5417d1C1D03C949b5013Bb5898dA905",
"domainRoutingIsmFactory": "0x3F100cBBE5FD5466BdB4B3a15Ac226957e7965Ad",
"fallbackRoutingHook": "0x17Dc724B7a2F09141C13b8AC33B396073785c2BC",
"index": {
@ -427,7 +513,7 @@
"interchainAccountIsm": "0x83a3068B719F764d413625dA77468ED74789ae02",
"interchainAccountRouter": "0x8e131c8aE5BF1Ed38D05a00892b6001a7d37739d",
"interchainGasPaymaster": "0x6f2756380FD49228ae25Aa7F2817993cB74Ecc56",
"interchainSecurityModule": "0x958124472b14B7940Ed5317C44a2508791dB1d48",
"interchainSecurityModule": "0xd5BF82fA7FB4109d38C4C06102DF7D5C9f2795a4",
"isTestnet": true,
"mailbox": "0xfFAEF09B3cd11D9b20d1a19bECca54EEC2884766",
"merkleTreeHook": "0x4917a9746A7B6E0A57159cCb7F5a6744247f2d0d",
@ -438,6 +524,7 @@
"symbol": "ETH"
},
"pausableHook": "0xa68022e53Fd28119D07C8336a8eC84A298Fd38Fd",
"pausableIsm": "0x21bdaB116d9DA77E312910fB53aD35dD82C8a76c",
"protocol": "ethereum",
"protocolFee": "0x13AC3349Cb159fE86A22cf42DdA803D9f7309DB5",
"proxyAdmin": "0x97Bbc6bBaFa5Ce3b2FA966c121Af63bD09e940f8",
@ -453,6 +540,7 @@
}
],
"staticAggregationHookFactory": "0x160C28C92cA453570aD7C031972b58d5Dd128F72",
"staticAggregationIsm": "0x7856078C4881e236660Be82fdb12473B4a33cCFf",
"staticAggregationIsmFactory": "0xC83e12EF2627ACE445C298e6eC418684918a6002",
"staticMerkleRootMultisigIsmFactory": "0x0a71AcC99967829eE305a285750017C4916Ca269",
"staticMessageIdMultisigIsmFactory": "0xFEb9585b2f948c1eD74034205a7439261a9d27DD",
@ -505,6 +593,60 @@
}
],
"validatorAnnounce": "8qNYSi9EP1xSnRjtMpyof88A26GBbdcrsa61uSaHiwx3"
},
"superpositiontestnet": {
"aggregationHook": "0x331eb40963dc11F5BB271308c42d97ac6e41F124",
"blockExplorers": [
{
"apiUrl": "https://testnet-explorer.superposition.so/api",
"family": "blockscout",
"name": "CatScan",
"url": "https://testnet-explorer.superposition.so"
}
],
"blocks": {
"confirmations": 1,
"estimateBlockTime": 1,
"reorgPeriod": 1
},
"chainId": 98985,
"displayName": "Superposition Testnet",
"domainId": 98985,
"domainRoutingIsm": "0x4ac19e0bafc2aF6B98094F0a1B817dF196551219",
"domainRoutingIsmFactory": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37",
"fallbackRoutingHook": "0x98AAE089CaD930C64a76dD2247a2aC5773a4B8cE",
"index": {
"from": 6317216
},
"interchainGasPaymaster": "0xeC7eb4196Bd601DEa7585A744FbFB4CF11278450",
"interchainSecurityModule": "0x5e6Fe18eC7D4b159bDC5Fa0C32bB1996277B3ddF",
"isTestnet": true,
"mailbox": "0x6966b0E55883d49BFB24539356a2f8A673E02039",
"merkleTreeHook": "0x4926a10788306D84202A2aDbd290b7743146Cc17",
"name": "superpositiontestnet",
"nativeToken": {
"decimals": 18,
"name": "Superposition",
"symbol": "SPN"
},
"pausableHook": "0x07009DA2249c388aD0f416a235AfE90D784e1aAc",
"pausableIsm": "0x58483b754Abb1E8947BE63d6b95DF75b8249543A",
"protocol": "ethereum",
"protocolFee": "0x863E8c26621c52ACa1849C53500606e73BA272F0",
"proxyAdmin": "0x44b764045BfDC68517e10e783E69B376cef196B2",
"rpcUrls": [
{
"http": "https://testnet-rpc.superposition.so"
}
],
"staticAggregationHookFactory": "0xeb6f11189197223c656807a83B0DD374f9A6dF44",
"staticAggregationIsm": "0x5e6Fe18eC7D4b159bDC5Fa0C32bB1996277B3ddF",
"staticAggregationIsmFactory": "0x275aCcCa81cAD931dC6fB6E49ED233Bc99Bed4A7",
"staticMerkleRootMultisigIsmFactory": "0x6E7b29CB2A7617405B4d30C6f84bBD51b4Bb4be8",
"staticMessageIdMultisigIsmFactory": "0xfc6e546510dC9d76057F1f76633FCFfC188CB213",
"storageGasOracle": "0xF7561c34f17A32D5620583A3397C304e7038a7F6",
"testRecipient": "0xAb9B273366D794B7F80B4378bc8Aaca75C6178E2",
"validatorAnnounce": "0xAD34A66Bf6dB18E858F6B686557075568c6E031C"
}
},
"defaultRpcConsensusType": "fallback"

@ -96,11 +96,13 @@ pub enum KnownHyperlaneDomain {
#[cfg_attr(feature = "strum", strum(serialize = "bsctestnet"))]
BinanceSmartChainTestnet = 97,
Chiado = 10200,
ConnextSepolia = 6398,
Holesky = 17000,
MoonbaseAlpha = 1287,
PlumeTestnet = 161221135,
ScrollSepolia = 534351,
Sepolia = 11155111,
SuperpositionTestnet = 98985,
}
#[derive(Clone, Serialize)]
@ -214,8 +216,8 @@ impl KnownHyperlaneDomain {
Neutron, Optimism, Osmosis, Polygon, Redstone, Sei, Taiko, Viction, Zetachain,
],
Testnet: [
Alfajores, BinanceSmartChainTestnet, Chiado, Fuji, Holesky, MoonbaseAlpha,
PlumeTestnet, ScrollSepolia, Sepolia,
Alfajores, BinanceSmartChainTestnet, Chiado, ConnextSepolia, Fuji, Holesky, MoonbaseAlpha,
PlumeTestnet, ScrollSepolia, Sepolia, SuperpositionTestnet
],
LocalTestChain: [
Test1, Test2, Test3, FuelTest1, SealevelTest1, SealevelTest2, CosmosTest99990,
@ -237,8 +239,8 @@ impl KnownHyperlaneDomain {
Test1, Test2, Test3,
// Test chains
Alfajores, BinanceSmartChainTestnet, Chiado, Holesky, MoonbaseAlpha, PlumeTestnet,
ScrollSepolia, Sepolia
Alfajores, BinanceSmartChainTestnet, Chiado, ConnextSepolia, Holesky, MoonbaseAlpha, PlumeTestnet,
ScrollSepolia, Sepolia, SuperpositionTestnet
],
HyperlaneDomainProtocol::Fuel: [FuelTest1],
@ -267,8 +269,8 @@ impl KnownHyperlaneDomain {
Test2, Test3,
// Test chains
Alfajores, BinanceSmartChainTestnet, Chiado, Holesky, MoonbaseAlpha, ScrollSepolia,
Sepolia
Alfajores, BinanceSmartChainTestnet, Chiado, ConnextSepolia, Holesky, MoonbaseAlpha, ScrollSepolia,
Sepolia, SuperpositionTestnet
],
})
}

@ -39,6 +39,7 @@ export const hyperlaneContextAgentChainConfig: AgentChainConfig<
[Role.Validator]: {
alfajores: true,
bsctestnet: true,
connextsepolia: true,
eclipsetestnet: false,
fuji: true,
holesky: true,
@ -46,10 +47,12 @@ export const hyperlaneContextAgentChainConfig: AgentChainConfig<
scrollsepolia: true,
sepolia: true,
solanatestnet: true,
superpositiontestnet: true,
},
[Role.Relayer]: {
alfajores: true,
bsctestnet: true,
connextsepolia: true,
eclipsetestnet: false,
fuji: true,
holesky: true,
@ -57,10 +60,12 @@ export const hyperlaneContextAgentChainConfig: AgentChainConfig<
scrollsepolia: true,
sepolia: true,
solanatestnet: true,
superpositiontestnet: true,
},
[Role.Scraper]: {
alfajores: true,
bsctestnet: true,
connextsepolia: false,
// Cannot scrape non-EVM chains
eclipsetestnet: false,
fuji: true,
@ -70,6 +75,7 @@ export const hyperlaneContextAgentChainConfig: AgentChainConfig<
sepolia: true,
// Cannot scrape non-EVM chains
solanatestnet: false,
superpositiontestnet: false,
},
};
@ -125,7 +131,7 @@ const hyperlane: RootAgentConfig = {
rpcConsensusType: RpcConsensusType.Fallback,
docker: {
repo,
tag: '0d12ff3-20240620-173353',
tag: '64cdc5f-20240715-212733',
},
blacklist: [
...releaseCandidateHelloworldMatchingList,
@ -155,7 +161,7 @@ const hyperlane: RootAgentConfig = {
rpcConsensusType: RpcConsensusType.Fallback,
docker: {
repo,
tag: '0d12ff3-20240620-173353',
tag: '64cdc5f-20240715-212733',
},
chains: validatorChainConfig(Contexts.Hyperlane),
resources: validatorResources,
@ -164,7 +170,7 @@ const hyperlane: RootAgentConfig = {
rpcConsensusType: RpcConsensusType.Fallback,
docker: {
repo,
tag: '0d12ff3-20240620-173353',
tag: '64cdc5f-20240715-212733',
},
resources: scraperResources,
},

@ -13,6 +13,9 @@
"0x1f030345963c54ff8229720dd3a711c15c554aeb"
]
},
"connextsepolia": {
"validators": ["0xffbbec8c499585d80ef69eb613db624d27e089ab"]
},
"fuji": {
"validators": [
"0xd8154f73d04cc7f7f0c332793692e6e6f6b2402e",
@ -46,5 +49,8 @@
},
"solanatestnet": {
"validators": ["0xd4ce8fa138d4e083fc0e480cca0dbfa4f5f30bd5"]
},
"superpositiontestnet": {
"validators": ["0x1d3168504b23b73cdf9c27f13bb0a595d7f1a96a"]
}
}

@ -1361,6 +1361,18 @@
"constructorArguments": "000000000000000000000000ef9f292fcebc3848bf4bb92a96a04f9ecbb78e59000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000221fa9cbafcd6c1c3d206571cf4427703e023ffa",
"isProxy": false,
"name": "FallbackRoutingHook"
},
{
"address": "0xA4caB1565083D33899A6eE69B174cC7729b3EaDF",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
},
{
"address": "0x4a2902395A40Ecf0B57CaB362b59bAffba9BB4aE",
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
}
],
"bsctestnet": [
@ -1465,6 +1477,92 @@
"constructorArguments": "000000000000000000000000f9f6f5646f478d5ab4e20b0f910c92f1ccc9cc6d000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000c6cbf39a747f5e28d1bdc8d9dfdab2960abd5a8f",
"isProxy": false,
"name": "FallbackRoutingHook"
},
{
"address": "0xb98B1596897d3c122111ea6b6b9014A95920F459",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
},
{
"address": "0xA71E50eFd93600933650A324AE43d395a8aE4AC7",
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
}
],
"connextsepolia": [
{
"address": "0x44b764045BfDC68517e10e783E69B376cef196B2",
"constructorArguments": "",
"isProxy": false,
"name": "ProxyAdmin"
},
{
"address": "0xC2E36cd6e32e194EE11f15D9273B64461A4D49A2",
"constructorArguments": "00000000000000000000000000000000000000000000000000000000000018fe",
"isProxy": false,
"name": "Mailbox"
},
{
"address": "0x6966b0E55883d49BFB24539356a2f8A673E02039",
"constructorArguments": "000000000000000000000000c2e36cd6e32e194ee11f15d9273b64461a4d49a200000000000000000000000044b764045bfdc68517e10e783e69b376cef196b200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000",
"isProxy": true,
"name": "TransparentUpgradeableProxy"
},
{
"address": "0x58483b754Abb1E8947BE63d6b95DF75b8249543A",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
},
{
"address": "0x4926a10788306D84202A2aDbd290b7743146Cc17",
"constructorArguments": "0000000000000000000000006966b0e55883d49bfb24539356a2f8a673e02039",
"isProxy": false,
"name": "MerkleTreeHook"
},
{
"address": "0x98AAE089CaD930C64a76dD2247a2aC5773a4B8cE",
"constructorArguments": "0000000000000000000000006966b0e55883d49bfb24539356a2f8a673e02039000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c0000000000000000000000004926a10788306d84202a2adbd290b7743146cc17",
"isProxy": false,
"name": "FallbackRoutingHook"
},
{
"address": "0x07009DA2249c388aD0f416a235AfE90D784e1aAc",
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
},
{
"address": "0xF7561c34f17A32D5620583A3397C304e7038a7F6",
"constructorArguments": "",
"isProxy": false,
"name": "StorageGasOracle"
},
{
"address": "0x26cD82217c5cfc1b4A3b36D2799c7cD84b0fd7B5",
"constructorArguments": "",
"isProxy": false,
"name": "InterchainGasPaymaster"
},
{
"address": "0xeC7eb4196Bd601DEa7585A744FbFB4CF11278450",
"constructorArguments": "00000000000000000000000026cd82217c5cfc1b4a3b36d2799c7cd84b0fd7b500000000000000000000000044b764045bfdc68517e10e783e69b376cef196b200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044485cc955000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c00000000000000000000000000000000000000000000000000000000",
"isProxy": true,
"name": "TransparentUpgradeableProxy"
},
{
"address": "0x863E8c26621c52ACa1849C53500606e73BA272F0",
"constructorArguments": "000000000000000000000000000000000000000000000000000000003b9aca000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "ProtocolFee"
},
{
"address": "0xAD34A66Bf6dB18E858F6B686557075568c6E031C",
"constructorArguments": "0000000000000000000000006966b0e55883d49bfb24539356a2f8a673e02039",
"isProxy": false,
"name": "ValidatorAnnounce"
}
],
"fuji": [
@ -1839,6 +1937,12 @@
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
},
{
"address": "0x8e3D9139547be48942Aa4a489bc250FEa51679fa",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
}
],
"holesky": [
@ -2129,6 +2233,12 @@
"constructorArguments": "00000000000000000000000046f7c5d896bbec89be1b19e4485e59b4be49e9cc",
"isProxy": false,
"name": "ValidatorAnnounce"
},
{
"address": "0x80fE4Cb8c70fc60B745d4ffD4403c27a8cBC9e02",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
}
],
"moonbasealpha": [
@ -2733,6 +2843,12 @@
"constructorArguments": "00000000000000000000000033db966328ea213b0f76ef96ca368ab37779f065",
"isProxy": false,
"name": "ValidatorAnnounce"
},
{
"address": "0xDaAc5C311d6e9134C725171Ef06a8a2BaAF4a10f",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
}
],
"scrollsepolia": [
@ -2849,6 +2965,18 @@
"constructorArguments": "0000000000000000000000003c5154a193d6e2955650f9305c8d80c18c814a68000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000863e8c26621c52aca1849c53500606e73ba272f0",
"isProxy": false,
"name": "FallbackRoutingHook"
},
{
"address": "0xcD19Ff7306E04EA6b8f4B5Ab1c5A198c186aaB42",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
},
{
"address": "0x390A48fC8Cb8F29B3ffE1B95aD3773414B8DD704",
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
}
],
"sepolia": [
@ -3001,6 +3129,86 @@
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
},
{
"address": "0x21bdaB116d9DA77E312910fB53aD35dD82C8a76c",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
}
],
"superpositiontestnet": [
{
"address": "0x44b764045BfDC68517e10e783E69B376cef196B2",
"constructorArguments": "",
"isProxy": false,
"name": "ProxyAdmin"
},
{
"address": "0xC2E36cd6e32e194EE11f15D9273B64461A4D49A2",
"constructorArguments": "00000000000000000000000000000000000000000000000000000000000182a9",
"isProxy": false,
"name": "Mailbox"
},
{
"address": "0x6966b0E55883d49BFB24539356a2f8A673E02039",
"constructorArguments": "000000000000000000000000c2e36cd6e32e194ee11f15d9273b64461a4d49a200000000000000000000000044b764045bfdc68517e10e783e69b376cef196b200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000",
"isProxy": true,
"name": "TransparentUpgradeableProxy"
},
{
"address": "0x58483b754Abb1E8947BE63d6b95DF75b8249543A",
"constructorArguments": "000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "PausableIsm"
},
{
"address": "0x4926a10788306D84202A2aDbd290b7743146Cc17",
"constructorArguments": "0000000000000000000000006966b0e55883d49bfb24539356a2f8a673e02039",
"isProxy": false,
"name": "MerkleTreeHook"
},
{
"address": "0x98AAE089CaD930C64a76dD2247a2aC5773a4B8cE",
"constructorArguments": "0000000000000000000000006966b0e55883d49bfb24539356a2f8a673e02039000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c0000000000000000000000004926a10788306d84202a2adbd290b7743146cc17",
"isProxy": false,
"name": "FallbackRoutingHook"
},
{
"address": "0x07009DA2249c388aD0f416a235AfE90D784e1aAc",
"constructorArguments": "",
"isProxy": false,
"name": "PausableHook"
},
{
"address": "0xF7561c34f17A32D5620583A3397C304e7038a7F6",
"constructorArguments": "",
"isProxy": false,
"name": "StorageGasOracle"
},
{
"address": "0x26cD82217c5cfc1b4A3b36D2799c7cD84b0fd7B5",
"constructorArguments": "",
"isProxy": false,
"name": "InterchainGasPaymaster"
},
{
"address": "0xeC7eb4196Bd601DEa7585A744FbFB4CF11278450",
"constructorArguments": "00000000000000000000000026cd82217c5cfc1b4a3b36d2799c7cd84b0fd7b500000000000000000000000044b764045bfdc68517e10e783e69b376cef196b200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044485cc955000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c00000000000000000000000000000000000000000000000000000000",
"isProxy": true,
"name": "TransparentUpgradeableProxy"
},
{
"address": "0x863E8c26621c52ACa1849C53500606e73BA272F0",
"constructorArguments": "000000000000000000000000000000000000000000000000000000003b9aca000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c000000000000000000000000fad1c94469700833717fa8a3017278bc1ca8031c",
"isProxy": false,
"name": "ProtocolFee"
},
{
"address": "0xAD34A66Bf6dB18E858F6B686557075568c6E031C",
"constructorArguments": "0000000000000000000000006966b0e55883d49bfb24539356a2f8a673e02039",
"isProxy": false,
"name": "ValidatorAnnounce"
}
]
}

@ -10,7 +10,7 @@ export const keyFunderConfig: KeyFunderConfig<
> = {
docker: {
repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo',
tag: 'efa9025-20240605-091304',
tag: '64cdc5f-20240715-212744',
},
// We're currently using the same deployer key as testnet2.
// To minimize nonce clobbering we offset the key funder cron
@ -28,12 +28,14 @@ export const keyFunderConfig: KeyFunderConfig<
desiredBalancePerChain: {
alfajores: '5',
bsctestnet: '5',
connextsepolia: '1',
fuji: '5',
holesky: '5',
plumetestnet: '0.2',
// Funder boosts itself upto 5x balance on L2 before dispersing funds
scrollsepolia: '1',
sepolia: '5',
superpositiontestnet: '1',
// no funding for solana
eclipsetestnet: '0',
solanatestnet: '0',
@ -41,11 +43,13 @@ export const keyFunderConfig: KeyFunderConfig<
desiredKathyBalancePerChain: {
alfajores: '1',
bsctestnet: '1',
connextsepolia: '0',
fuji: '1',
holesky: '0',
plumetestnet: '0.05',
scrollsepolia: '1',
sepolia: '1',
superpositiontestnet: '0',
// no funding for solana
eclipsetestnet: '0',
solanatestnet: '0',
@ -53,11 +57,13 @@ export const keyFunderConfig: KeyFunderConfig<
igpClaimThresholdPerChain: {
alfajores: '1',
bsctestnet: '1',
connextsepolia: '0.1',
fuji: '1',
holesky: '1',
plumetestnet: '0.1',
scrollsepolia: '0.1',
sepolia: '1',
superpositiontestnet: '0.1',
// no funding for solana
eclipsetestnet: '0',
solanatestnet: '0',

@ -14,19 +14,24 @@ import {
} from '../../../src/config/gas-oracle.js';
import { ethereumChainNames } from './chains.js';
import { testnet4SupportedChainNames } from './supportedChainNames.js';
// Taken by looking at each testnet and overestimating gas prices
const gasPrices: ChainMap<BigNumber> = {
const gasPrices: Record<
(typeof testnet4SupportedChainNames)[number],
BigNumber
> = {
alfajores: ethers.utils.parseUnits('10', 'gwei'),
bsctestnet: ethers.utils.parseUnits('15', 'gwei'),
connextsepolia: ethers.utils.parseUnits('0.5', 'gwei'),
eclipsetestnet: ethers.BigNumber.from('28'),
fuji: ethers.utils.parseUnits('30', 'gwei'),
holesky: ethers.utils.parseUnits('10', 'gwei'),
bsctestnet: ethers.utils.parseUnits('15', 'gwei'),
sepolia: ethers.utils.parseUnits('5', 'gwei'),
plumetestnet: ethers.utils.parseUnits('0.01', 'gwei'),
scrollsepolia: ethers.utils.parseUnits('0.5', 'gwei'),
chiado: ethers.utils.parseUnits('2', 'gwei'),
sepolia: ethers.utils.parseUnits('5', 'gwei'),
solanatestnet: ethers.BigNumber.from('28'),
eclipsetestnet: ethers.BigNumber.from('28'),
plumetestnet: ethers.utils.parseUnits('0.01', 'gwei'),
superpositiontestnet: ethers.utils.parseUnits('0.5', 'gwei'),
};
// Used to categorize rarity of testnet tokens & approximate exchange rates.
@ -45,22 +50,26 @@ const RARITY_APPROXIMATE_VALUE: Record<Rarity, BigNumber> = {
[Rarity.Mythic]: ethers.utils.parseUnits('5', TOKEN_EXCHANGE_RATE_DECIMALS),
};
const chainTokenRarity: ChainMap<Rarity> = {
const chainTokenRarity: Record<
(typeof testnet4SupportedChainNames)[number],
Rarity
> = {
alfajores: Rarity.Common,
fuji: Rarity.Rare,
bsctestnet: Rarity.Rare,
connextsepolia: Rarity.Common,
eclipsetestnet: Rarity.Common,
fuji: Rarity.Rare,
holesky: Rarity.Common,
sepolia: Rarity.Mythic,
plumetestnet: Rarity.Common,
scrollsepolia: Rarity.Rare,
chiado: Rarity.Common,
sepolia: Rarity.Mythic,
solanatestnet: Rarity.Common,
eclipsetestnet: Rarity.Common,
plumetestnet: Rarity.Common,
superpositiontestnet: Rarity.Common,
};
// Gets the "value" of a testnet chain
function getApproximateValue(chain: ChainName): BigNumber {
const rarity = chainTokenRarity[chain];
const rarity = chainTokenRarity[chain as keyof typeof chainTokenRarity];
return RARITY_APPROXIMATE_VALUE[rarity];
}

@ -300,6 +300,66 @@
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xd5ab9FaC601Ed731d5e9c87E5977D2e5fD380666",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x826Ab153e944cE1B251aBD174071DF70d71132D7",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x78ebeCE0fCAa39F0F0C422E87EBd6BcB708aa763",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0xd93F514f36d528DCDc3af1C92788f1bf1f480A7f",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0x019e0a350D85eF67250dD88CD6477ad5E0c6E31e",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xd5ab9FaC601Ed731d5e9c87E5977D2e5fD380666",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x826Ab153e944cE1B251aBD174071DF70d71132D7",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x78ebeCE0fCAa39F0F0C422E87EBd6BcB708aa763",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0xd93F514f36d528DCDc3af1C92788f1bf1f480A7f",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0x019e0a350D85eF67250dD88CD6477ad5E0c6E31e",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xd5ab9FaC601Ed731d5e9c87E5977D2e5fD380666",
"constructorArguments": "",
@ -539,6 +599,134 @@
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x9b13f3d75797951f463D61092Bba7947c8cEb25c",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x25069c25466B1F21E0D22f467a5f91bc7b24b515",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x25adfb5Ddf378EC77cd5842Ff33B96277E4DD29b",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0x3938ED4c6b5a7f9947C44e58e36a864F03228175",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xD2a0c68ed92D1Eb3C699D2808b06dd7b70367F92",
"constructorArguments": "",
"isProxy": false,
"name": "DomainRoutingIsmFactory"
},
{
"address": "0x4ce08bEcdada43aa1FC9628886f4e6Adc1f079ec",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x9b13f3d75797951f463D61092Bba7947c8cEb25c",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x25069c25466B1F21E0D22f467a5f91bc7b24b515",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x25adfb5Ddf378EC77cd5842Ff33B96277E4DD29b",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0x3938ED4c6b5a7f9947C44e58e36a864F03228175",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x4ce08bEcdada43aa1FC9628886f4e6Adc1f079ec",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
}
],
"connextsepolia": [
{
"address": "0x6E7b29CB2A7617405B4d30C6f84bBD51b4Bb4be8",
"constructorArguments": "",
"isProxy": false,
"name": "StaticMerkleRootMultisigIsmFactory"
},
{
"address": "0x209e7F9d40954E230008B9bb076a0901d32695e5",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0xfc6e546510dC9d76057F1f76633FCFfC188CB213",
"constructorArguments": "",
"isProxy": false,
"name": "StaticMessageIdMultisigIsmFactory"
},
{
"address": "0x99B304925A08aba9305bC0A8FccBf71B4290c5EF",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x275aCcCa81cAD931dC6fB6E49ED233Bc99Bed4A7",
"constructorArguments": "",
"isProxy": false,
"name": "StaticAggregationIsmFactory"
},
{
"address": "0x33999AB153F68D481AAB1B238368Ffd1Fe81F360",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0xeb6f11189197223c656807a83B0DD374f9A6dF44",
"constructorArguments": "",
"isProxy": false,
"name": "StaticAggregationHookFactory"
},
{
"address": "0x3e6F45B03314bD21BcE4201666d483291575E391",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37",
"constructorArguments": "",
"isProxy": false,
"name": "DomainRoutingIsmFactory"
},
{
"address": "0x87935eB971eaA9826060261b07a919451dfd0409",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
}
],
"fuji": [
@ -852,6 +1040,36 @@
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xD47593C21C2429de56AcA808bb2Bbc236c6311DE",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x0683D0258A162a87E1F25C454BaA4e9E9DE46B0a",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0xd3262339D39103a4b41379b183b0311B78c9a11F",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x6716Ef4e72c74e66eB40198B16b4379a763fCEd8",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0xBDD7Cfb61D7ae89343b428D3E527BDA9705c4EAC",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xD47593C21C2429de56AcA808bb2Bbc236c6311DE",
"constructorArguments": "",
@ -914,6 +1132,36 @@
"isProxy": false,
"name": "DomainRoutingIsmFactory"
},
{
"address": "0x8CF9aB5F805072A007dAd0ae56E0099e83B14b61",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x7fFe8C9c17F46F94D784E148FbadD4bF66477722",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x4863236F3a05A1A1F0850fF8cd09afeBAE82d953",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x10c9FF6EEE4BaD29734322467f541C84001422C2",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0xD6B8D6C372e07f67FeAb75403c0Ec88E3cce7Ab7",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x8CF9aB5F805072A007dAd0ae56E0099e83B14b61",
"constructorArguments": "",
@ -1174,6 +1422,36 @@
"isProxy": false,
"name": "DomainRoutingIsmFactory"
},
{
"address": "0x10c9FF6EEE4BaD29734322467f541C84001422C2",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x87935eB971eaA9826060261b07a919451dfd0409",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0xE5cA56294dA5Bd490D5Bc489B177B002ad16AF83",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x7fFe8C9c17F46F94D784E148FbadD4bF66477722",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0x4863236F3a05A1A1F0850fF8cd09afeBAE82d953",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x10c9FF6EEE4BaD29734322467f541C84001422C2",
"constructorArguments": "",
@ -1352,6 +1630,36 @@
"isProxy": false,
"name": "DomainRoutingIsmFactory"
},
{
"address": "0xea80345322520d37770dbDeD3FE9c53ba93E70D8",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0x33999AB153F68D481AAB1B238368Ffd1Fe81F360",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x3e6F45B03314bD21BcE4201666d483291575E391",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x87935eB971eaA9826060261b07a919451dfd0409",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0xE5cA56294dA5Bd490D5Bc489B177B002ad16AF83",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0xea80345322520d37770dbDeD3FE9c53ba93E70D8",
"constructorArguments": "",
@ -1555,6 +1863,98 @@
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
},
{
"address": "0xbe94Cd5d0973dB4A6E63Cb9e6b2b2042D99F9Bcd",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0x218C5DFb7C2bC1e051FCFebBa8C6D66Dda28617E",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x3dD1aB6B71EBfEd239869365FE5B8b47E0507d89",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0x4BC580FF77Dd1Eb320E96D34FddC97F0F04D3feD",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x9b0CC3BD9030CE269EF3124Bb36Cf954a490688e",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
}
],
"superpositiontestnet": [
{
"address": "0x6E7b29CB2A7617405B4d30C6f84bBD51b4Bb4be8",
"constructorArguments": "",
"isProxy": false,
"name": "StaticMerkleRootMultisigIsmFactory"
},
{
"address": "0x209e7F9d40954E230008B9bb076a0901d32695e5",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMerkleRootMultisigIsm"
},
{
"address": "0xfc6e546510dC9d76057F1f76633FCFfC188CB213",
"constructorArguments": "",
"isProxy": false,
"name": "StaticMessageIdMultisigIsmFactory"
},
{
"address": "0x99B304925A08aba9305bC0A8FccBf71B4290c5EF",
"constructorArguments": "",
"isProxy": true,
"name": "StaticMessageIdMultisigIsm"
},
{
"address": "0x275aCcCa81cAD931dC6fB6E49ED233Bc99Bed4A7",
"constructorArguments": "",
"isProxy": false,
"name": "StaticAggregationIsmFactory"
},
{
"address": "0x33999AB153F68D481AAB1B238368Ffd1Fe81F360",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationIsm"
},
{
"address": "0xeb6f11189197223c656807a83B0DD374f9A6dF44",
"constructorArguments": "",
"isProxy": false,
"name": "StaticAggregationHookFactory"
},
{
"address": "0x3e6F45B03314bD21BcE4201666d483291575E391",
"constructorArguments": "",
"isProxy": true,
"name": "StaticAggregationHook"
},
{
"address": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37",
"constructorArguments": "",
"isProxy": false,
"name": "DomainRoutingIsmFactory"
},
{
"address": "0x87935eB971eaA9826060261b07a919451dfd0409",
"constructorArguments": "",
"isProxy": true,
"name": "DomaingRoutingIsm"
}
]
}

@ -2,6 +2,7 @@
export const testnet4SupportedChainNames = [
'alfajores',
'bsctestnet',
'connextsepolia',
'eclipsetestnet',
'holesky',
'fuji',
@ -9,6 +10,7 @@ export const testnet4SupportedChainNames = [
'scrollsepolia',
'sepolia',
'solanatestnet',
'superpositiontestnet',
] as const;
export const supportedChainNames = [...testnet4SupportedChainNames];

@ -70,6 +70,18 @@ export const validatorChainConfig = (
'bsctestnet',
),
},
connextsepolia: {
interval: 5,
reorgPeriod: getReorgPeriod('connextsepolia'),
validators: validatorsConfig(
{
[Contexts.Hyperlane]: ['0xffbbec8c499585d80ef69eb613db624d27e089ab'],
[Contexts.ReleaseCandidate]: [],
[Contexts.Neutron]: [],
},
'connextsepolia',
),
},
holesky: {
interval: 13,
reorgPeriod: getReorgPeriod('holesky'),
@ -157,16 +169,16 @@ export const validatorChainConfig = (
'solanatestnet',
),
},
eclipsetestnet: {
superpositiontestnet: {
interval: 1,
reorgPeriod: getReorgPeriod('eclipsetestnet'),
reorgPeriod: getReorgPeriod('superpositiontestnet'),
validators: validatorsConfig(
{
[Contexts.Hyperlane]: ['0xf344f34abca9a444545b5295066348a0ae22dda3'],
[Contexts.Hyperlane]: ['0x1d3168504b23b73cdf9c27f13bb0a595d7f1a96a'],
[Contexts.ReleaseCandidate]: [],
[Contexts.Neutron]: [],
},
'eclipsetestnet',
'superpositiontestnet',
),
},
};

@ -109,6 +109,11 @@ export const defaultMultisigConfigs: ChainMap<MultisigConfig> = {
],
},
connextsepolia: {
threshold: 1,
validators: ['0xffbbec8c499585d80ef69eb613db624d27e089ab'],
},
eclipsetestnet: {
threshold: 1,
validators: ['0xf344f34abca9a444545b5295066348a0ae22dda3'],
@ -337,6 +342,11 @@ export const defaultMultisigConfigs: ChainMap<MultisigConfig> = {
validators: ['0xd4ce8fa138d4e083fc0e480cca0dbfa4f5f30bd5'],
},
superpositiontestnet: {
threshold: 1,
validators: ['0x1d3168504b23b73cdf9c27f13bb0a595d7f1a96a'],
},
taiko: {
threshold: 2,
validators: [

Loading…
Cancel
Save