@hyperlane-xyz/sdk 1.5.8 → 3.1.0-beta0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (294) hide show
  1. package/dist/app/HyperlaneApp.d.ts +1 -1
  2. package/dist/app/HyperlaneApp.d.ts.map +1 -1
  3. package/dist/app/HyperlaneApp.js +1 -1
  4. package/dist/app/HyperlaneApp.js.map +1 -1
  5. package/dist/app/MultiProtocolApp.d.ts +5 -1
  6. package/dist/app/MultiProtocolApp.d.ts.map +1 -1
  7. package/dist/app/MultiProtocolApp.js +11 -1
  8. package/dist/app/MultiProtocolApp.js.map +1 -1
  9. package/dist/app/MultiProtocolApp.test.js +2 -0
  10. package/dist/app/MultiProtocolApp.test.js.map +1 -1
  11. package/dist/consts/chainMetadata.d.ts +5 -0
  12. package/dist/consts/chainMetadata.d.ts.map +1 -1
  13. package/dist/consts/chainMetadata.js +137 -3
  14. package/dist/consts/chainMetadata.js.map +1 -1
  15. package/dist/consts/chains.d.ts +11 -6
  16. package/dist/consts/chains.d.ts.map +1 -1
  17. package/dist/consts/chains.js +15 -5
  18. package/dist/consts/chains.js.map +1 -1
  19. package/dist/consts/environments/index.d.ts +141 -168
  20. package/dist/consts/environments/index.d.ts.map +1 -1
  21. package/dist/consts/environments/index.js +1 -2
  22. package/dist/consts/environments/index.js.map +1 -1
  23. package/dist/consts/environments/testnet.json +181 -167
  24. package/dist/consts/multisigIsm.d.ts +2 -2
  25. package/dist/consts/multisigIsm.d.ts.map +1 -1
  26. package/dist/consts/multisigIsm.js +67 -48
  27. package/dist/consts/multisigIsm.js.map +1 -1
  28. package/dist/contracts/contracts.d.ts +1 -1
  29. package/dist/contracts/contracts.d.ts.map +1 -1
  30. package/dist/contracts/contracts.js +8 -2
  31. package/dist/contracts/contracts.js.map +1 -1
  32. package/dist/core/CoreDeployer.hardhat-test.js +65 -13
  33. package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
  34. package/dist/core/HyperlaneCore.d.ts +6 -2
  35. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  36. package/dist/core/HyperlaneCore.js +15 -3
  37. package/dist/core/HyperlaneCore.js.map +1 -1
  38. package/dist/core/HyperlaneCoreChecker.d.ts.map +1 -1
  39. package/dist/core/HyperlaneCoreChecker.js +2 -2
  40. package/dist/core/HyperlaneCoreChecker.js.map +1 -1
  41. package/dist/core/HyperlaneCoreDeployer.d.ts +7 -2
  42. package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  43. package/dist/core/HyperlaneCoreDeployer.js +51 -29
  44. package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
  45. package/dist/core/MultiProtocolCore.d.ts +1 -1
  46. package/dist/core/MultiProtocolCore.d.ts.map +1 -1
  47. package/dist/core/MultiProtocolCore.js +3 -3
  48. package/dist/core/MultiProtocolCore.js.map +1 -1
  49. package/dist/core/MultiProtocolCore.test.js +2 -2
  50. package/dist/core/MultiProtocolCore.test.js.map +1 -1
  51. package/dist/core/TestCoreApp.d.ts +0 -1
  52. package/dist/core/TestCoreApp.d.ts.map +1 -1
  53. package/dist/core/TestCoreDeployer.d.ts +1 -5
  54. package/dist/core/TestCoreDeployer.d.ts.map +1 -1
  55. package/dist/core/TestCoreDeployer.js +0 -20
  56. package/dist/core/TestCoreDeployer.js.map +1 -1
  57. package/dist/core/adapters/CosmWasmCoreAdapter.d.ts +26 -0
  58. package/dist/core/adapters/CosmWasmCoreAdapter.d.ts.map +1 -0
  59. package/dist/core/adapters/CosmWasmCoreAdapter.js +33 -0
  60. package/dist/core/adapters/CosmWasmCoreAdapter.js.map +1 -0
  61. package/dist/core/adapters/EvmCoreAdapter.d.ts +1 -1
  62. package/dist/core/adapters/EvmCoreAdapter.d.ts.map +1 -1
  63. package/dist/core/adapters/SealevelCoreAdapter.d.ts +1 -1
  64. package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
  65. package/dist/core/adapters/SealevelCoreAdapter.js +0 -1
  66. package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
  67. package/dist/core/adapters/types.d.ts +1 -1
  68. package/dist/core/adapters/types.d.ts.map +1 -1
  69. package/dist/core/contracts.d.ts +3 -9
  70. package/dist/core/contracts.d.ts.map +1 -1
  71. package/dist/core/contracts.js +0 -1
  72. package/dist/core/contracts.js.map +1 -1
  73. package/dist/core/testHyperlaneDeploy.hardhat-test.js +8 -3
  74. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
  75. package/dist/core/types.d.ts +3 -0
  76. package/dist/core/types.d.ts.map +1 -1
  77. package/dist/core/types.js.map +1 -1
  78. package/dist/cw-types/Cw20Base.types.d.ts +198 -0
  79. package/dist/cw-types/Cw20Base.types.d.ts.map +1 -0
  80. package/dist/cw-types/Cw20Base.types.js +8 -0
  81. package/dist/cw-types/Cw20Base.types.js.map +1 -0
  82. package/dist/cw-types/Mailbox.types.d.ts +131 -0
  83. package/dist/cw-types/Mailbox.types.d.ts.map +1 -0
  84. package/dist/cw-types/Mailbox.types.js +8 -0
  85. package/dist/cw-types/Mailbox.types.js.map +1 -0
  86. package/dist/cw-types/WarpCw20.types.d.ts +192 -0
  87. package/dist/cw-types/WarpCw20.types.d.ts.map +1 -0
  88. package/dist/cw-types/WarpCw20.types.js +8 -0
  89. package/dist/cw-types/WarpCw20.types.js.map +1 -0
  90. package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
  91. package/dist/deploy/HyperlaneAppChecker.js +3 -5
  92. package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
  93. package/dist/deploy/HyperlaneDeployer.d.ts +14 -7
  94. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  95. package/dist/deploy/HyperlaneDeployer.js +89 -70
  96. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  97. package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts +10 -0
  98. package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts.map +1 -0
  99. package/dist/deploy/HyperlaneProxyFactoryDeployer.js +34 -0
  100. package/dist/deploy/HyperlaneProxyFactoryDeployer.js.map +1 -0
  101. package/dist/deploy/contracts.d.ts +13 -0
  102. package/dist/deploy/contracts.d.ts.map +1 -0
  103. package/dist/deploy/contracts.js +20 -0
  104. package/dist/deploy/contracts.js.map +1 -0
  105. package/dist/deploy/proxy.d.ts +1 -0
  106. package/dist/deploy/proxy.d.ts.map +1 -1
  107. package/dist/deploy/proxy.js +8 -1
  108. package/dist/deploy/proxy.js.map +1 -1
  109. package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
  110. package/dist/deploy/verify/ContractVerifier.js +7 -2
  111. package/dist/deploy/verify/ContractVerifier.js.map +1 -1
  112. package/dist/gas/HyperlaneIgp.js +1 -1
  113. package/dist/gas/HyperlaneIgp.js.map +1 -1
  114. package/dist/gas/HyperlaneIgpChecker.d.ts +2 -2
  115. package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
  116. package/dist/gas/HyperlaneIgpChecker.js +5 -12
  117. package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
  118. package/dist/gas/HyperlaneIgpDeployer.d.ts +4 -6
  119. package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
  120. package/dist/gas/HyperlaneIgpDeployer.js +12 -43
  121. package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
  122. package/dist/gas/contracts.d.ts +2 -4
  123. package/dist/gas/contracts.d.ts.map +1 -1
  124. package/dist/gas/contracts.js +1 -3
  125. package/dist/gas/contracts.js.map +1 -1
  126. package/dist/gas/types.d.ts +2 -6
  127. package/dist/gas/types.d.ts.map +1 -1
  128. package/dist/gas/types.js.map +1 -1
  129. package/dist/hook/HyperlaneHookDeployer.d.ts +28 -10
  130. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  131. package/dist/hook/HyperlaneHookDeployer.js +52 -70
  132. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  133. package/dist/hook/contracts.d.ts +6 -17
  134. package/dist/hook/contracts.d.ts.map +1 -1
  135. package/dist/hook/contracts.js +6 -13
  136. package/dist/hook/contracts.js.map +1 -1
  137. package/dist/hook/types.d.ts +24 -13
  138. package/dist/hook/types.d.ts.map +1 -1
  139. package/dist/hook/types.js +8 -6
  140. package/dist/hook/types.js.map +1 -1
  141. package/dist/index.d.ts +18 -11
  142. package/dist/index.d.ts.map +1 -1
  143. package/dist/index.js +43 -16
  144. package/dist/index.js.map +1 -1
  145. package/dist/ism/HyperlaneIsmFactory.d.ts +7 -5
  146. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  147. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +3 -3
  148. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  149. package/dist/ism/HyperlaneIsmFactory.js +62 -57
  150. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  151. package/dist/ism/contracts.d.ts +4 -3
  152. package/dist/ism/contracts.d.ts.map +1 -1
  153. package/dist/ism/contracts.js +3 -2
  154. package/dist/ism/contracts.js.map +1 -1
  155. package/dist/ism/types.d.ts +12 -6
  156. package/dist/ism/types.d.ts.map +1 -1
  157. package/dist/ism/types.js +1 -0
  158. package/dist/ism/types.js.map +1 -1
  159. package/dist/metadata/ChainMetadataManager.d.ts +3 -13
  160. package/dist/metadata/ChainMetadataManager.d.ts.map +1 -1
  161. package/dist/metadata/ChainMetadataManager.js +16 -27
  162. package/dist/metadata/ChainMetadataManager.js.map +1 -1
  163. package/dist/metadata/agentConfig.d.ts +782 -1545
  164. package/dist/metadata/agentConfig.d.ts.map +1 -1
  165. package/dist/metadata/agentConfig.js +62 -95
  166. package/dist/metadata/agentConfig.js.map +1 -1
  167. package/dist/metadata/agentConfig.test.js +9 -9
  168. package/dist/metadata/agentConfig.test.js.map +1 -1
  169. package/dist/metadata/chainMetadata.test.js +16 -0
  170. package/dist/metadata/chainMetadata.test.js.map +1 -1
  171. package/dist/metadata/chainMetadataTypes.d.ts +570 -4
  172. package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
  173. package/dist/metadata/chainMetadataTypes.js +54 -8
  174. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  175. package/dist/metadata/deploymentArtifacts.d.ts +5 -2
  176. package/dist/metadata/deploymentArtifacts.d.ts.map +1 -1
  177. package/dist/metadata/deploymentArtifacts.js +1 -0
  178. package/dist/metadata/deploymentArtifacts.js.map +1 -1
  179. package/dist/metadata/matchingList.d.ts +13 -13
  180. package/dist/metadata/matchingList.d.ts.map +1 -1
  181. package/dist/metadata/matchingList.js +2 -6
  182. package/dist/metadata/matchingList.js.map +1 -1
  183. package/dist/middleware/account/InterchainAccountDeployer.d.ts +2 -7
  184. package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
  185. package/dist/middleware/account/InterchainAccountDeployer.js +4 -9
  186. package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
  187. package/dist/middleware/account/accounts.hardhat-test.js +8 -6
  188. package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
  189. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts +2 -7
  190. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
  191. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +7 -11
  192. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js.map +1 -1
  193. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +7 -7
  194. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
  195. package/dist/middleware/query/InterchainQueryDeployer.d.ts +2 -7
  196. package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
  197. package/dist/middleware/query/InterchainQueryDeployer.js +3 -4
  198. package/dist/middleware/query/InterchainQueryDeployer.js.map +1 -1
  199. package/dist/middleware/query/queries.hardhat-test.js +8 -9
  200. package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
  201. package/dist/providers/MultiProtocolProvider.d.ts +4 -1
  202. package/dist/providers/MultiProtocolProvider.d.ts.map +1 -1
  203. package/dist/providers/MultiProtocolProvider.js +16 -20
  204. package/dist/providers/MultiProtocolProvider.js.map +1 -1
  205. package/dist/providers/MultiProvider.d.ts +7 -2
  206. package/dist/providers/MultiProvider.d.ts.map +1 -1
  207. package/dist/providers/MultiProvider.js +12 -1
  208. package/dist/providers/MultiProvider.js.map +1 -1
  209. package/dist/providers/ProviderType.d.ts +45 -8
  210. package/dist/providers/ProviderType.d.ts.map +1 -1
  211. package/dist/providers/ProviderType.js +2 -0
  212. package/dist/providers/ProviderType.js.map +1 -1
  213. package/dist/providers/providerBuilders.d.ts +3 -1
  214. package/dist/providers/providerBuilders.d.ts.map +1 -1
  215. package/dist/providers/providerBuilders.js +24 -1
  216. package/dist/providers/providerBuilders.js.map +1 -1
  217. package/dist/router/GasRouterDeployer.d.ts.map +1 -1
  218. package/dist/router/GasRouterDeployer.js +1 -1
  219. package/dist/router/GasRouterDeployer.js.map +1 -1
  220. package/dist/router/HyperlaneRouterChecker.d.ts +1 -1
  221. package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
  222. package/dist/router/HyperlaneRouterChecker.js +6 -6
  223. package/dist/router/HyperlaneRouterChecker.js.map +1 -1
  224. package/dist/router/HyperlaneRouterDeployer.d.ts +1 -1
  225. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  226. package/dist/router/HyperlaneRouterDeployer.js +15 -18
  227. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  228. package/dist/router/MultiProtocolRouterApps.d.ts.map +1 -1
  229. package/dist/router/MultiProtocolRouterApps.js +1 -0
  230. package/dist/router/MultiProtocolRouterApps.js.map +1 -1
  231. package/dist/router/ProxiedRouterChecker.js +1 -1
  232. package/dist/router/ProxiedRouterChecker.js.map +1 -1
  233. package/dist/router/types.d.ts +14 -12
  234. package/dist/router/types.d.ts.map +1 -1
  235. package/dist/router/types.js +7 -7
  236. package/dist/router/types.js.map +1 -1
  237. package/dist/test/testUtils.d.ts +1 -3
  238. package/dist/test/testUtils.d.ts.map +1 -1
  239. package/dist/test/testUtils.js +18 -45
  240. package/dist/test/testUtils.js.map +1 -1
  241. package/dist/token/adapters/CosmWasmTokenAdapter.d.ts +107 -0
  242. package/dist/token/adapters/CosmWasmTokenAdapter.d.ts.map +1 -0
  243. package/dist/token/adapters/CosmWasmTokenAdapter.js +273 -0
  244. package/dist/token/adapters/CosmWasmTokenAdapter.js.map +1 -0
  245. package/dist/token/adapters/CosmWasmTokenAdapter.test.d.ts +10 -0
  246. package/dist/token/adapters/CosmWasmTokenAdapter.test.d.ts.map +1 -0
  247. package/dist/token/adapters/CosmWasmTokenAdapter.test.js +74 -0
  248. package/dist/token/adapters/CosmWasmTokenAdapter.test.js.map +1 -0
  249. package/dist/token/adapters/EvmTokenAdapter.d.ts +65 -0
  250. package/dist/token/adapters/EvmTokenAdapter.d.ts.map +1 -0
  251. package/dist/token/adapters/EvmTokenAdapter.js +119 -0
  252. package/dist/token/adapters/EvmTokenAdapter.js.map +1 -0
  253. package/dist/token/adapters/ITokenAdapter.d.ts +30 -0
  254. package/dist/token/adapters/ITokenAdapter.d.ts.map +1 -0
  255. package/dist/token/adapters/ITokenAdapter.js +3 -0
  256. package/dist/token/adapters/ITokenAdapter.js.map +1 -0
  257. package/dist/token/adapters/SealevelTokenAdapter.d.ts +117 -0
  258. package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -0
  259. package/dist/token/adapters/SealevelTokenAdapter.js +434 -0
  260. package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -0
  261. package/dist/token/adapters/serialization.d.ts +50 -0
  262. package/dist/token/adapters/serialization.d.ts.map +1 -0
  263. package/dist/token/adapters/serialization.js +117 -0
  264. package/dist/token/adapters/serialization.js.map +1 -0
  265. package/dist/token/config.d.ts +48 -0
  266. package/dist/token/config.d.ts.map +1 -0
  267. package/dist/token/config.js +34 -0
  268. package/dist/token/config.js.map +1 -0
  269. package/dist/token/contracts.d.ts +9 -0
  270. package/dist/token/contracts.d.ts.map +1 -0
  271. package/dist/token/contracts.js +3 -0
  272. package/dist/token/contracts.js.map +1 -0
  273. package/dist/token/deploy.d.ts +40 -0
  274. package/dist/token/deploy.d.ts.map +1 -0
  275. package/dist/token/deploy.js +262 -0
  276. package/dist/token/deploy.js.map +1 -0
  277. package/dist/utils/wagmi.d.ts +1 -1
  278. package/dist/utils/wagmi.d.ts.map +1 -1
  279. package/dist/utils/wagmi.js +2 -1
  280. package/dist/utils/wagmi.js.map +1 -1
  281. package/package.json +12 -7
  282. package/dist/consts/agentStartBlocks.d.ts +0 -3
  283. package/dist/consts/agentStartBlocks.d.ts.map +0 -1
  284. package/dist/consts/agentStartBlocks.js +0 -28
  285. package/dist/consts/agentStartBlocks.js.map +0 -1
  286. package/dist/consts/environments/test.json +0 -41
  287. package/dist/hook/config.d.ts +0 -4
  288. package/dist/hook/config.d.ts.map +0 -1
  289. package/dist/hook/config.js +0 -9
  290. package/dist/hook/config.js.map +0 -1
  291. package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts +0 -11
  292. package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts.map +0 -1
  293. package/dist/ism/HyperlaneIsmFactoryDeployer.js +0 -39
  294. package/dist/ism/HyperlaneIsmFactoryDeployer.js.map +0 -1
@@ -9,10 +9,11 @@ const HyperlaneIsmFactory_1 = require("../ism/HyperlaneIsmFactory");
9
9
  const proxy_1 = require("./proxy");
10
10
  const utils_2 = require("./verify/utils");
11
11
  class HyperlaneDeployer {
12
- constructor(multiProvider, factories, options) {
12
+ constructor(multiProvider, factories, options, recoverVerificationInputs = false) {
13
13
  this.multiProvider = multiProvider;
14
14
  this.factories = factories;
15
15
  this.options = options;
16
+ this.recoverVerificationInputs = recoverVerificationInputs;
16
17
  this.verificationInputs = {};
17
18
  this.cachedAddresses = {};
18
19
  this.deployedContracts = {};
@@ -41,11 +42,27 @@ class HyperlaneDeployer {
41
42
  .getProvider(chain)
42
43
  .getBlockNumber();
43
44
  await (0, utils_1.runWithTimeout)(this.chainTimeoutMs, async () => {
44
- this.deployedContracts[chain] = await this.deployContracts(chain, configMap[chain]);
45
+ const contracts = await this.deployContracts(chain, configMap[chain]);
46
+ this.addDeployedContracts(chain, contracts);
45
47
  });
46
48
  }
47
49
  return this.deployedContracts;
48
50
  }
51
+ addDeployedContracts(chain, contracts, verificationInputs) {
52
+ this.deployedContracts[chain] = {
53
+ ...this.deployedContracts[chain],
54
+ ...contracts,
55
+ };
56
+ if (verificationInputs)
57
+ this.addVerificationArtifacts(chain, verificationInputs);
58
+ }
59
+ addVerificationArtifacts(chain, artifacts) {
60
+ this.verificationInputs[chain] = this.verificationInputs[chain] || [];
61
+ artifacts.forEach((artifact) => {
62
+ this.verificationInputs[chain].push(artifact);
63
+ });
64
+ // TODO: deduplicate
65
+ }
49
66
  async runIf(chain, address, fn, label = 'address') {
50
67
  const signer = await this.multiProvider.getSignerAddress(chain);
51
68
  if ((0, utils_1.eqAddress)(address, signer)) {
@@ -74,78 +91,69 @@ class HyperlaneDeployer {
74
91
  return this.runIf(chain, admin, () => signerAdminFn(), 'admin');
75
92
  }
76
93
  }
77
- async initConnectionClient(local, connectionClient, config) {
78
- this.logger(`Initializing connection client (if not already) on ${local}...`);
79
- await this.runIfOwner(local, connectionClient, async () => {
80
- const txOverrides = this.multiProvider.getTransactionOverrides(local);
81
- // set mailbox if not already set (and configured)
82
- if (config.mailbox !== (await connectionClient.mailbox())) {
83
- this.logger(`Set mailbox on (${local})`);
84
- await this.multiProvider.handleTx(local, connectionClient.setMailbox(config.mailbox, txOverrides));
85
- }
86
- // set interchain gas paymaster if not already set (and configured)
87
- if (config.interchainGasPaymaster !==
88
- (await connectionClient.interchainGasPaymaster())) {
89
- this.logger(`Set interchain gas paymaster on ${local}`);
90
- await this.multiProvider.handleTx(local, connectionClient.setInterchainGasPaymaster(config.interchainGasPaymaster, txOverrides));
91
- }
92
- let currentIsm = await connectionClient.interchainSecurityModule();
93
- // in case the above returns zero address, fetch the defaultISM from the mailbox
94
- if (currentIsm === ethers_1.ethers.constants.AddressZero) {
95
- const mailbox = core_1.Mailbox__factory.connect(config.mailbox, connectionClient.signer);
96
- currentIsm = await mailbox.defaultIsm();
97
- }
98
- if (config.interchainSecurityModule) {
99
- // set interchain security module if not already set (and configured)
100
- let configuredIsm;
101
- if (typeof config.interchainSecurityModule === 'string') {
102
- configuredIsm = config.interchainSecurityModule;
103
- }
104
- else if (this.options?.ismFactory) {
105
- const matches = await (0, HyperlaneIsmFactory_1.moduleMatchesConfig)(local, currentIsm, config.interchainSecurityModule, this.multiProvider, this.options.ismFactory.chainMap[local]);
106
- if (matches) {
107
- // when the ISM recursively matches the IsmConfig, we don't need to deploy a new ISM
108
- this.logger(`ISM matches config for chain ${local}, skipping deploy`);
109
- return;
110
- }
111
- const ism = await this.options.ismFactory.deploy(local, config.interchainSecurityModule);
112
- configuredIsm = ism.address;
113
- }
114
- else {
115
- throw new Error('No ISM factory provided');
94
+ async configureIsm(chain, contract, config, getIsm, setIsm) {
95
+ if (this.options?.ismFactory === undefined) {
96
+ throw new Error('No ISM factory provided');
97
+ }
98
+ const ismFactory = this.options.ismFactory;
99
+ const configuredIsm = await getIsm(contract);
100
+ const matches = await (0, HyperlaneIsmFactory_1.moduleMatchesConfig)(chain, configuredIsm, config, this.multiProvider, ismFactory.getContracts(chain));
101
+ if (!matches) {
102
+ await this.runIfOwner(chain, contract, async () => {
103
+ const targetIsm = await ismFactory.deploy(chain, config);
104
+ this.logger(`Set ISM on ${chain}`);
105
+ await this.multiProvider.sendTransaction(chain, setIsm(contract, targetIsm.address));
106
+ if (targetIsm.address !== (await getIsm(contract))) {
107
+ throw new Error(`Set ISM failed on ${chain}`);
116
108
  }
117
- if (!(0, utils_1.eqAddress)(currentIsm, configuredIsm)) {
118
- this.logger(`Set interchain security module on ${local} at ${configuredIsm}`);
119
- await this.multiProvider.handleTx(local, connectionClient.setInterchainSecurityModule(configuredIsm, txOverrides));
109
+ });
110
+ }
111
+ }
112
+ async configureHook(chain, contract, targetHook, getHook, setHook) {
113
+ const configuredHook = await getHook(contract);
114
+ if (targetHook !== configuredHook) {
115
+ await this.runIfOwner(chain, contract, async () => {
116
+ this.logger(`Set hook on ${chain}`);
117
+ await this.multiProvider.sendTransaction(chain, setHook(contract, targetHook));
118
+ if (targetHook !== (await getHook(contract))) {
119
+ throw new Error(`Set hook failed on ${chain}`);
120
120
  }
121
- }
122
- });
121
+ });
122
+ }
123
+ }
124
+ async initMailboxClient(local, client, config) {
125
+ this.logger(`Initializing mailbox client (if not already) on ${local}...`);
126
+ if (config.hook) {
127
+ await this.configureHook(local, client, config.hook, (_client) => _client.hook(), (_client, _hook) => _client.populateTransaction.setHook(_hook));
128
+ }
129
+ if (config.interchainSecurityModule) {
130
+ await this.configureIsm(local, client, config.interchainSecurityModule, (_client) => _client.interchainSecurityModule(), (_client, _module) => _client.populateTransaction.setInterchainSecurityModule(_module));
131
+ }
123
132
  this.logger(`Connection client on ${local} initialized...`);
124
133
  }
125
134
  async deployContractFromFactory(chain, factory, contractName, constructorArgs, initializeArgs) {
126
135
  const cachedContract = this.readCache(chain, factory, contractName);
127
136
  if (cachedContract) {
137
+ if (this.recoverVerificationInputs) {
138
+ const recoveredInputs = await this.recoverVerificationArtifacts(chain, contractName, cachedContract, constructorArgs, initializeArgs);
139
+ this.addVerificationArtifacts(chain, recoveredInputs);
140
+ }
128
141
  return cachedContract;
129
142
  }
130
- const signer = this.multiProvider.getSigner(chain);
131
- const overrides = this.multiProvider.getTransactionOverrides(chain);
132
143
  this.logger(`Deploy ${contractName} on ${chain}`);
133
- const contract = await factory
134
- .connect(signer)
135
- .deploy(...constructorArgs, overrides);
136
- await this.multiProvider.handleTx(chain, contract.deployTransaction);
144
+ const contract = await this.multiProvider.handleDeploy(chain, factory, constructorArgs);
137
145
  if (initializeArgs) {
138
146
  this.logger(`Initialize ${contractName} on ${chain}`);
147
+ const overrides = this.multiProvider.getTransactionOverrides(chain);
139
148
  const initTx = await contract.initialize(...initializeArgs, overrides);
140
149
  await this.multiProvider.handleTx(chain, initTx);
141
150
  }
142
151
  const verificationInput = (0, utils_2.getContractVerificationInput)(contractName, contract, factory.bytecode);
143
- this.verificationInputs[chain] = this.verificationInputs[chain] || [];
144
- this.verificationInputs[chain].push(verificationInput);
152
+ this.addVerificationArtifacts(chain, [verificationInput]);
145
153
  return contract;
146
154
  }
147
155
  async deployContract(chain, contractName, constructorArgs, initializeArgs) {
148
- const contract = (await this.deployContractFromFactory(chain, this.factories[contractName], contractName.toString(), constructorArgs, initializeArgs));
156
+ const contract = await this.deployContractFromFactory(chain, this.factories[contractName], contractName.toString(), constructorArgs, initializeArgs);
149
157
  this.writeCache(chain, contractName, contract.address);
150
158
  return contract;
151
159
  }
@@ -171,20 +179,17 @@ class HyperlaneDeployer {
171
179
  await this.runIfAdmin(chain, proxy, () => this.multiProvider.handleTx(chain, proxy.upgradeToAndCall(implementation.address, initData, overrides)), (proxyAdmin) => this.multiProvider.handleTx(chain, proxyAdmin.upgradeAndCall(proxy.address, implementation.address, initData, overrides)));
172
180
  }
173
181
  async deployProxy(chain, implementation, proxyAdmin, initializeArgs) {
174
- const initData = initializeArgs
175
- ? implementation.interface.encodeFunctionData('initialize', initializeArgs)
176
- : '0x';
177
- this.logger(`Deploying transparent upgradable proxy`);
178
- const constructorArgs = [
179
- implementation.address,
180
- proxyAdmin,
181
- initData,
182
- ];
182
+ const isProxied = await (0, proxy_1.isProxy)(this.multiProvider.getProvider(chain), implementation.address);
183
+ if (isProxied) {
184
+ // if the implementation is already a proxy, do not deploy a new proxy
185
+ return implementation;
186
+ }
187
+ const constructorArgs = (0, proxy_1.proxyConstructorArgs)(implementation, proxyAdmin, initializeArgs);
183
188
  const proxy = await this.deployContractFromFactory(chain, new core_1.TransparentUpgradeableProxy__factory(), 'TransparentUpgradeableProxy', constructorArgs);
184
189
  return implementation.attach(proxy.address);
185
190
  }
186
191
  async deployTimelock(chain, timelockConfig) {
187
- const timelock = await this.deployContractFromFactory(chain, new core_1.TimelockController__factory(), 'timelockController',
192
+ return this.multiProvider.handleDeploy(chain, new core_1.TimelockController__factory(),
188
193
  // delay, [proposers], [executors], admin
189
194
  [
190
195
  timelockConfig.delay,
@@ -192,7 +197,6 @@ class HyperlaneDeployer {
192
197
  [timelockConfig.roles.executor],
193
198
  ethers_1.ethers.constants.AddressZero,
194
199
  ]);
195
- return timelock;
196
200
  }
197
201
  writeCache(chain, contractName, address) {
198
202
  if (!this.cachedAddresses[chain]) {
@@ -213,15 +217,30 @@ class HyperlaneDeployer {
213
217
  }
214
218
  return undefined;
215
219
  }
220
+ async recoverVerificationArtifacts(chain, contractName, cachedContract, constructorArgs, initializeArgs) {
221
+ const provider = this.multiProvider.getProvider(chain);
222
+ const isProxied = await (0, proxy_1.isProxy)(provider, cachedContract.address);
223
+ let implementation;
224
+ if (isProxied) {
225
+ implementation = await (0, proxy_1.proxyImplementation)(provider, cachedContract.address);
226
+ }
227
+ else {
228
+ implementation = cachedContract.address;
229
+ }
230
+ const implementationInput = (0, utils_2.buildVerificationInput)(contractName, implementation, cachedContract.interface.encodeDeploy(constructorArgs));
231
+ if (!isProxied) {
232
+ return [implementationInput];
233
+ }
234
+ const admin = await (0, proxy_1.proxyAdmin)(provider, cachedContract.address);
235
+ const proxyArgs = (0, proxy_1.proxyConstructorArgs)(cachedContract.attach(implementation), admin, initializeArgs);
236
+ const proxyInput = (0, utils_2.buildVerificationInput)('TransparentUpgradeableProxy', cachedContract.address, core_1.TransparentUpgradeableProxy__factory.createInterface().encodeDeploy(proxyArgs));
237
+ return [implementationInput, proxyInput];
238
+ }
216
239
  /**
217
240
  * Deploys the Implementation and Proxy for a given contract
218
241
  *
219
242
  */
220
243
  async deployProxiedContract(chain, contractName, proxyAdmin, constructorArgs, initializeArgs) {
221
- const cachedContract = this.readCache(chain, this.factories[contractName], contractName.toString());
222
- if (cachedContract) {
223
- return cachedContract;
224
- }
225
244
  // Try to initialize the implementation even though it may not be necessary
226
245
  const implementation = await this.deployContract(chain, contractName, constructorArgs, initializeArgs);
227
246
  // Initialize the proxy the same way
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { HyperlaneContracts } from '../contracts/types';
2
+ import { MultiProvider } from '../providers/MultiProvider';
3
+ import { ChainName } from '../types';
4
+ import { HyperlaneDeployer } from './HyperlaneDeployer';
5
+ import { ProxyFactoryFactories } from './contracts';
6
+ export declare class HyperlaneProxyFactoryDeployer extends HyperlaneDeployer<any, ProxyFactoryFactories> {
7
+ constructor(multiProvider: MultiProvider);
8
+ deployContracts(chain: ChainName): Promise<HyperlaneContracts<ProxyFactoryFactories>>;
9
+ }
10
+ //# sourceMappingURL=HyperlaneProxyFactoryDeployer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperlaneProxyFactoryDeployer.d.ts","sourceRoot":"","sources":["../../src/deploy/HyperlaneProxyFactoryDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACL,qBAAqB,EAGtB,MAAM,aAAa,CAAC;AAErB,qBAAa,6BAA8B,SAAQ,iBAAiB,CAClE,GAAG,EACH,qBAAqB,CACtB;gBACa,aAAa,EAAE,aAAa;IAMlC,eAAe,CACnB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;CAkBtD"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HyperlaneProxyFactoryDeployer = void 0;
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const HyperlaneDeployer_1 = require("./HyperlaneDeployer");
9
+ const contracts_1 = require("./contracts");
10
+ class HyperlaneProxyFactoryDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
11
+ constructor(multiProvider) {
12
+ super(multiProvider, contracts_1.proxyFactoryFactories, {
13
+ logger: (0, debug_1.default)('hyperlane:IsmFactoryDeployer'),
14
+ });
15
+ }
16
+ async deployContracts(chain) {
17
+ const contracts = {};
18
+ for (const factoryName of Object.keys(this.factories)) {
19
+ const factory = await this.deployContract(chain, factoryName, []);
20
+ this.addVerificationArtifacts(chain, [
21
+ {
22
+ name: contracts_1.proxyFactoryImplementations[factoryName],
23
+ address: await factory.implementation(),
24
+ constructorArguments: '',
25
+ isProxy: true,
26
+ },
27
+ ]);
28
+ contracts[factoryName] = factory;
29
+ }
30
+ return contracts;
31
+ }
32
+ }
33
+ exports.HyperlaneProxyFactoryDeployer = HyperlaneProxyFactoryDeployer;
34
+ //# sourceMappingURL=HyperlaneProxyFactoryDeployer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HyperlaneProxyFactoryDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneProxyFactoryDeployer.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAM1B,2DAAwD;AACxD,2CAIqB;AAErB,MAAa,6BAA8B,SAAQ,qCAGlD;IACC,YAAY,aAA4B;QACtC,KAAK,CAAC,aAAa,EAAE,iCAAqB,EAAE;YAC1C,MAAM,EAAE,IAAA,eAAK,EAAC,8BAA8B,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAAgB;QAEhB,MAAM,SAAS,GAAQ,EAAE,CAAC;QAC1B,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,IAAI,CACnC,IAAI,CAAC,SAAS,CACoB,EAAE;YACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE;gBACnC;oBACE,IAAI,EAAE,uCAA2B,CAAC,WAAW,CAAC;oBAC9C,OAAO,EAAE,MAAM,OAAO,CAAC,cAAc,EAAE;oBACvC,oBAAoB,EAAE,EAAE;oBACxB,OAAO,EAAE,IAAI;iBACd;aACF,CAAC,CAAC;YACH,SAAS,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;SAClC;QACD,OAAO,SAAsD,CAAC;IAChE,CAAC;CACF;AA9BD,sEA8BC"}
@@ -0,0 +1,13 @@
1
+ import { DomainRoutingIsmFactory__factory, StaticAggregationHookFactory__factory, StaticAggregationIsmFactory__factory, StaticMerkleRootMultisigIsmFactory__factory, StaticMessageIdMultisigIsmFactory__factory } from '@hyperlane-xyz/core';
2
+ export declare const proxyFactoryFactories: {
3
+ merkleRootMultisigIsmFactory: StaticMerkleRootMultisigIsmFactory__factory;
4
+ messageIdMultisigIsmFactory: StaticMessageIdMultisigIsmFactory__factory;
5
+ aggregationIsmFactory: StaticAggregationIsmFactory__factory;
6
+ aggregationHookFactory: StaticAggregationHookFactory__factory;
7
+ routingIsmFactory: DomainRoutingIsmFactory__factory;
8
+ };
9
+ export type ProxyFactoryFactories = typeof proxyFactoryFactories;
10
+ type ProxyFactoryImplementations = Record<keyof ProxyFactoryFactories, string>;
11
+ export declare const proxyFactoryImplementations: ProxyFactoryImplementations;
12
+ export {};
13
+ //# sourceMappingURL=contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/deploy/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gCAAgC,EAChC,qCAAqC,EACrC,oCAAoC,EACpC,2CAA2C,EAC3C,0CAA0C,EAC3C,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,qBAAqB;;;;;;CAOjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC;AAEjE,KAAK,2BAA2B,GAAG,MAAM,CAAC,MAAM,qBAAqB,EAAE,MAAM,CAAC,CAAC;AAG/E,eAAO,MAAM,2BAA2B,EAAE,2BAMzC,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.proxyFactoryImplementations = exports.proxyFactoryFactories = void 0;
4
+ const core_1 = require("@hyperlane-xyz/core");
5
+ exports.proxyFactoryFactories = {
6
+ merkleRootMultisigIsmFactory: new core_1.StaticMerkleRootMultisigIsmFactory__factory(),
7
+ messageIdMultisigIsmFactory: new core_1.StaticMessageIdMultisigIsmFactory__factory(),
8
+ aggregationIsmFactory: new core_1.StaticAggregationIsmFactory__factory(),
9
+ aggregationHookFactory: new core_1.StaticAggregationHookFactory__factory(),
10
+ routingIsmFactory: new core_1.DomainRoutingIsmFactory__factory(),
11
+ };
12
+ // must match contract names for verification
13
+ exports.proxyFactoryImplementations = {
14
+ merkleRootMultisigIsmFactory: 'StaticMerkleRootMultisigIsm',
15
+ messageIdMultisigIsmFactory: 'StaticMessageIdMultisigIsm',
16
+ aggregationIsmFactory: 'StaticAggregationIsm',
17
+ aggregationHookFactory: 'StaticAggregationHook',
18
+ routingIsmFactory: 'DomaingRoutingIsm',
19
+ };
20
+ //# sourceMappingURL=contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/deploy/contracts.ts"],"names":[],"mappings":";;;AAAA,8CAM6B;AAEhB,QAAA,qBAAqB,GAAG;IACnC,4BAA4B,EAC1B,IAAI,kDAA2C,EAAE;IACnD,2BAA2B,EAAE,IAAI,iDAA0C,EAAE;IAC7E,qBAAqB,EAAE,IAAI,2CAAoC,EAAE;IACjE,sBAAsB,EAAE,IAAI,4CAAqC,EAAE;IACnE,iBAAiB,EAAE,IAAI,uCAAgC,EAAE;CAC1D,CAAC;AAMF,6CAA6C;AAChC,QAAA,2BAA2B,GAAgC;IACtE,4BAA4B,EAAE,6BAA6B;IAC3D,2BAA2B,EAAE,4BAA4B;IACzD,qBAAqB,EAAE,sBAAsB;IAC7C,sBAAsB,EAAE,uBAAuB;IAC/C,iBAAiB,EAAE,mBAAmB;CACvC,CAAC"}
@@ -11,5 +11,6 @@ export type UpgradeConfig = {
11
11
  };
12
12
  export declare function proxyImplementation(provider: ethers.providers.Provider, proxy: Address): Promise<Address>;
13
13
  export declare function proxyAdmin(provider: ethers.providers.Provider, proxy: Address): Promise<Address>;
14
+ export declare function proxyConstructorArgs<C extends ethers.Contract>(implementation: C, proxyAdmin: string, initializeArgs?: Parameters<C['initialize']>): [string, string, string];
14
15
  export declare function isProxy(provider: ethers.providers.Provider, proxy: Address): Promise<boolean>;
15
16
  //# sourceMappingURL=proxy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,QAAQ,EAAE,OAAO,CAAC;SACnB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAGlB"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,QAAQ,EAAE,OAAO,CAAC;SACnB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAC5D,cAAc,EAAE,CAAC,EACjB,UAAU,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAC3C,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAK1B;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAGlB"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isProxy = exports.proxyAdmin = exports.proxyImplementation = void 0;
3
+ exports.isProxy = exports.proxyConstructorArgs = exports.proxyAdmin = exports.proxyImplementation = void 0;
4
4
  const ethers_1 = require("ethers");
5
5
  const utils_1 = require("@hyperlane-xyz/utils");
6
6
  async function proxyImplementation(provider, proxy) {
@@ -15,6 +15,13 @@ async function proxyAdmin(provider, proxy) {
15
15
  return ethers_1.ethers.utils.getAddress(storageValue.slice(26));
16
16
  }
17
17
  exports.proxyAdmin = proxyAdmin;
18
+ function proxyConstructorArgs(implementation, proxyAdmin, initializeArgs) {
19
+ const initData = initializeArgs
20
+ ? implementation.interface.encodeFunctionData('initialize', initializeArgs)
21
+ : '0x';
22
+ return [implementation.address, proxyAdmin, initData];
23
+ }
24
+ exports.proxyConstructorArgs = proxyConstructorArgs;
18
25
  async function isProxy(provider, proxy) {
19
26
  const admin = await proxyAdmin(provider, proxy);
20
27
  return !(0, utils_1.eqAddress)(admin, ethers_1.ethers.constants.AddressZero);
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,gDAA0D;AAanD,KAAK,UAAU,mBAAmB,CACvC,QAAmC,EACnC,KAAc;IAEd,yDAAyD;IACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAVD,kDAUC;AAEM,KAAK,UAAU,UAAU,CAC9B,QAAmC,EACnC,KAAc;IAEd,gDAAgD;IAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAVD,gCAUC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAmC,EACnC,KAAc;IAEd,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;AACzD,CAAC;AAND,0BAMC"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,gDAA0D;AAanD,KAAK,UAAU,mBAAmB,CACvC,QAAmC,EACnC,KAAc;IAEd,yDAAyD;IACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAVD,kDAUC;AAEM,KAAK,UAAU,UAAU,CAC9B,QAAmC,EACnC,KAAc;IAEd,gDAAgD;IAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;IACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAVD,gCAUC;AAED,SAAgB,oBAAoB,CAClC,cAAiB,EACjB,UAAkB,EAClB,cAA4C;IAE5C,MAAM,QAAQ,GAAG,cAAc;QAC7B,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,cAAc,CAAC;QAC3E,CAAC,CAAC,IAAI,CAAC;IACT,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC;AATD,oDASC;AAEM,KAAK,UAAU,OAAO,CAC3B,QAAmC,EACnC,KAAc;IAEd,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;AACzD,CAAC;AAND,0BAMC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContractVerifier.d.ts","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAS,MAAM,OAAO,CAAC;AAKxC,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAiBjB,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,iBAAiB,CAAC;IAKjE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM;IAC1C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe;IAPrD,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC;gBAGzB,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAC5B,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,eAAe,EAAE,MAAM,EAAE,kDAAkD;IAC3E,eAAe,EAAE,eAAe;IAMrD,MAAM,CAAC,OAAO,WAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAMhE,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC;YAOF,UAAU;YA6DV,iBAAiB;IAoBzB,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAkCV,oBAAoB,CACxB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAuCV,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;CAoBjB"}
1
+ {"version":3,"file":"ContractVerifier.d.ts","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAS,MAAM,OAAO,CAAC;AAKxC,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAkBjB,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,iBAAiB,CAAC;IAKjE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM;IAC1C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe;IAPrD,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC;gBAGzB,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAC5B,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,eAAe,EAAE,MAAM,EAAE,kDAAkD;IAC3E,eAAe,EAAE,eAAe;IAMrD,MAAM,CAAC,OAAO,WAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAMhE,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC;YAOF,UAAU;YAkEV,iBAAiB;IAoBzB,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAkCV,oBAAoB,CACxB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAuCV,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;CA0BjB"}
@@ -23,6 +23,7 @@ var ExplorerApiErrors;
23
23
  ExplorerApiErrors["ALREADY_VERIFIED_ALT"] = "Already Verified";
24
24
  ExplorerApiErrors["VERIFICATION_PENDING"] = "Pending in queue";
25
25
  ExplorerApiErrors["PROXY_FAILED"] = "A corresponding implementation contract was unfortunately not detected for the proxy address.";
26
+ ExplorerApiErrors["BYTECODE_MISMATCH"] = "Fail - Unable to verify. Compiled contract deployment bytecode does NOT match the transaction deployment bytecode.";
26
27
  })(ExplorerApiErrors || (ExplorerApiErrors = {}));
27
28
  class ContractVerifier extends MultiGeneric_1.MultiGeneric {
28
29
  constructor(verificationInputs, multiProvider, apiKeys, flattenedSource, // flattened source code from eg `hardhat flatten`
@@ -85,7 +86,10 @@ class ContractVerifier extends MultiGeneric_1.MultiGeneric {
85
86
  case ExplorerApiErrors.ALREADY_VERIFIED_ALT:
86
87
  return;
87
88
  case ExplorerApiErrors.PROXY_FAILED:
88
- this.logger(`Proxy verification failed, try manually?`);
89
+ this.logger(`Proxy verification failed for, try manually?`);
90
+ return;
91
+ case ExplorerApiErrors.BYTECODE_MISMATCH:
92
+ this.logger(`Compiled bytecode does not match deployed bytecode, check constructor arguments?`);
89
93
  return;
90
94
  default:
91
95
  this.logger(`Verification failed for some unknown reason on ${chain}`, result);
@@ -161,7 +165,8 @@ class ContractVerifier extends MultiGeneric_1.MultiGeneric {
161
165
  return;
162
166
  }
163
167
  if (await this.isAlreadyVerified(chain, input)) {
164
- this.logger(`Contract ${input.name} already verified on ${chain}`);
168
+ const addressUrl = await this.multiProvider.tryGetExplorerAddressUrl(chain, input.address);
169
+ this.logger(`Contract ${input.name} already verified on ${chain} at ${addressUrl}#code`);
165
170
  // There is a rate limit of 5 requests per second
166
171
  await (0, utils_1.sleep)(200);
167
172
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"ContractVerifier.js","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContractVerifier.js","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ class HyperlaneIgp extends HyperlaneApp_1.HyperlaneApp {
49
49
  * @returns The amount of native tokens required to pay for interchain gas.
50
50
  */
51
51
  quoteGasPaymentForDefaultIsmIgp(origin, destination, gasAmount) {
52
- const igp = this.getContracts(origin).defaultIsmInterchainGasPaymaster;
52
+ const igp = this.getContracts(origin).interchainGasPaymaster;
53
53
  return this.quoteGasPaymentForIgp(origin, destination, gasAmount, igp.address);
54
54
  }
55
55
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneIgp.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgp.ts"],"names":[],"mappings":";;;AAEA,8CAAsE;AAGtE,sDAAmD;AACnD,yDAGgC;AAChC,sDAAmE;AAKnE,2CAAyD;AAEzD,MAAa,YAAa,SAAQ,2BAA0B;IAC1D,MAAM,CAAC,eAAe,CACpB,GAAQ,EACR,aAA4B;QAE5B,MAAM,YAAY,GAAG,oCAAqB,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;SAClD;QACD,OAAO,YAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,YAAwC,EACxC,aAA4B;QAE5B,MAAM,MAAM,GAAG,IAAA,qCAAyB,EACtC,YAAY,EACZ,wBAAY,EACZ,aAAa,CACd,CAAC;QACF,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,eAAe,CACb,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,+BAA+B,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC;QACvE,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,qBAAqB,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB,EACpB,6BAAsC;QAEtC,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,sCAA+B,CAAC,OAAO,CACjD,6BAA6B,EAC7B,cAAc,CACf,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;CACF;AAzGD,oCAyGC"}
1
+ {"version":3,"file":"HyperlaneIgp.js","sourceRoot":"","sources":["../../src/gas/HyperlaneIgp.ts"],"names":[],"mappings":";;;AAEA,8CAAsE;AAGtE,sDAAmD;AACnD,yDAGgC;AAChC,sDAAmE;AAKnE,2CAAyD;AAEzD,MAAa,YAAa,SAAQ,2BAA0B;IAC1D,MAAM,CAAC,eAAe,CACpB,GAAQ,EACR,aAA4B;QAE5B,MAAM,YAAY,GAAG,oCAAqB,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;SAClD;QACD,OAAO,YAAY,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,YAAwC,EACxC,aAA4B;QAE5B,MAAM,MAAM,GAAG,IAAA,qCAAyB,EACtC,YAAY,EACZ,wBAAY,EACZ,aAAa,CACd,CAAC;QACF,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,eAAe,CACb,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,+BAA+B,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC;QAC7D,OAAO,IAAI,CAAC,qBAAqB,CAC/B,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,CAAC,OAAO,CACZ,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACO,qBAAqB,CAC7B,MAAiB,EACjB,WAAsB,EACtB,SAAoB,EACpB,6BAAsC;QAEtC,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,sCAA+B,CAAC,OAAO,CACjD,6BAA6B,EAC7B,cAAc,CACf,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC7D,OAAO,GAAG,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;CACF;AAzGD,oCAyGC"}
@@ -2,8 +2,8 @@ import { Address } from '@hyperlane-xyz/utils';
2
2
  import { HyperlaneAppChecker } from '../deploy/HyperlaneAppChecker';
3
3
  import { ChainName } from '../types';
4
4
  import { HyperlaneIgp } from './HyperlaneIgp';
5
- import { OverheadIgpConfig } from './types';
6
- export declare class HyperlaneIgpChecker extends HyperlaneAppChecker<HyperlaneIgp, OverheadIgpConfig> {
5
+ import { IgpConfig } from './types';
6
+ export declare class HyperlaneIgpChecker extends HyperlaneAppChecker<HyperlaneIgp, IgpConfig> {
7
7
  checkChain(chain: ChainName): Promise<void>;
8
8
  checkDomainOwnership(chain: ChainName): Promise<void>;
9
9
  checkBytecodes(chain: ChainName): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneIgpChecker.d.ts","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAML,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAEjB,qBAAa,mBAAoB,SAAQ,mBAAmB,CAC1D,YAAY,EACZ,iBAAiB,CAClB;IACO,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAa3C,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAcrD,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsC/C,mCAAmC,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA4CpE,2BAA2B,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsDlE,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO;CAiBlE"}
1
+ {"version":3,"file":"HyperlaneIgpChecker.d.ts","sourceRoot":"","sources":["../../src/gas/HyperlaneIgpChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAGL,SAAS,EAIV,MAAM,SAAS,CAAC;AAEjB,qBAAa,mBAAoB,SAAQ,mBAAmB,CAC1D,YAAY,EACZ,SAAS,CACV;IACO,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3C,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IASrD,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAsC/C,mCAAmC,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CpE,2BAA2B,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDlE,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO;CAiBlE"}
@@ -14,20 +14,12 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
14
14
  await this.checkBytecodes(chain);
15
15
  await this.checkOverheadInterchainGasPaymaster(chain);
16
16
  await this.checkInterchainGasPaymaster(chain);
17
- const config = this.configMap[chain];
18
- if (config.upgrade) {
19
- await this.checkUpgrade(chain, config.upgrade);
20
- }
21
17
  }
22
18
  async checkDomainOwnership(chain) {
23
19
  const config = this.configMap[chain];
24
20
  const ownableOverrides = {
25
21
  storageGasOracle: config.oracleKey,
26
22
  };
27
- if (config.upgrade) {
28
- const timelockController = this.app.getAddresses(chain).timelockController;
29
- ownableOverrides['proxyAdmin'] = timelockController;
30
- }
31
23
  await super.checkOwnership(chain, config.owner, ownableOverrides);
32
24
  }
33
25
  async checkBytecodes(chain) {
@@ -38,7 +30,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
38
30
  bytecode_1.BytecodeHash.INTERCHAIN_GAS_PAYMASTER_BYTECODE_HASH,
39
31
  bytecode_1.BytecodeHash.OWNER_INITIALIZABLE_INTERCHAIN_GAS_PAYMASTER_BYTECODE_HASH,
40
32
  ]);
41
- await this.checkBytecode(chain, 'OverheadIGP', contracts.defaultIsmInterchainGasPaymaster.address, [bytecode_1.BytecodeHash.OVERHEAD_IGP_BYTECODE_HASH], (bytecode) =>
33
+ await this.checkBytecode(chain, 'InterchainGasPaymaster', contracts.interchainGasPaymaster.address, [bytecode_1.BytecodeHash.OVERHEAD_IGP_BYTECODE_HASH], (bytecode) =>
42
34
  // Remove the address of the wrapped IGP from the bytecode
43
35
  bytecode.replaceAll(ethers_1.utils.defaultAbiCoder
44
36
  .encode(['address'], [contracts.interchainGasPaymaster.address])
@@ -46,7 +38,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
46
38
  }
47
39
  async checkOverheadInterchainGasPaymaster(local) {
48
40
  const coreContracts = this.app.getContracts(local);
49
- const defaultIsmIgp = coreContracts.defaultIsmInterchainGasPaymaster;
41
+ const defaultIsmIgp = coreContracts.interchainGasPaymaster;
50
42
  // Construct the violation, updating the actual & expected
51
43
  // objects as violations are found.
52
44
  // A single violation is used so that only a single `setDestinationGasOverheads`
@@ -67,7 +59,7 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
67
59
  expectedOverhead = 0;
68
60
  }
69
61
  const remoteId = this.multiProvider.getDomainId(remote);
70
- const existingOverhead = await defaultIsmIgp.destinationGasOverhead(remoteId);
62
+ const existingOverhead = await defaultIsmIgp.destinationGasLimit(remoteId, 0);
71
63
  if (!existingOverhead.eq(expectedOverhead)) {
72
64
  const remoteChain = remote;
73
65
  overheadViolation.actual[remoteChain] = existingOverhead;
@@ -102,7 +94,8 @@ class HyperlaneIgpChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
102
94
  ]);
103
95
  for (const remote of remotes) {
104
96
  const remoteId = this.multiProvider.getDomainId(remote);
105
- const actualGasOracle = await igp.gasOracles(remoteId);
97
+ const destinationGasConfigs = await igp.destinationGasConfigs(remoteId);
98
+ const actualGasOracle = destinationGasConfigs.gasOracle;
106
99
  const expectedGasOracle = this.getGasOracleAddress(local, remote);
107
100
  if (!(0, utils_1.eqAddress)(actualGasOracle, expectedGasOracle)) {
108
101
  const remoteChain = remote;