@hyperlane-xyz/sdk 1.5.7-beta1 → 3.0.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 (156) hide show
  1. package/dist/consts/chainMetadata.d.ts +3 -0
  2. package/dist/consts/chainMetadata.d.ts.map +1 -1
  3. package/dist/consts/chainMetadata.js +99 -11
  4. package/dist/consts/chainMetadata.js.map +1 -1
  5. package/dist/consts/chains.d.ts +3 -0
  6. package/dist/consts/chains.d.ts.map +1 -1
  7. package/dist/consts/chains.js +8 -0
  8. package/dist/consts/chains.js.map +1 -1
  9. package/dist/consts/environments/index.d.ts +1135 -407
  10. package/dist/consts/environments/index.d.ts.map +1 -1
  11. package/dist/consts/environments/index.js +1 -6
  12. package/dist/consts/environments/index.js.map +1 -1
  13. package/dist/consts/environments/mainnet.json +827 -131
  14. package/dist/consts/environments/testnet.json +362 -19
  15. package/dist/consts/multisigIsm.d.ts.map +1 -1
  16. package/dist/consts/multisigIsm.js +73 -59
  17. package/dist/consts/multisigIsm.js.map +1 -1
  18. package/dist/contracts/contracts.d.ts +8 -3
  19. package/dist/contracts/contracts.d.ts.map +1 -1
  20. package/dist/contracts/contracts.js +39 -9
  21. package/dist/contracts/contracts.js.map +1 -1
  22. package/dist/core/CoreDeployer.hardhat-test.js +62 -10
  23. package/dist/core/CoreDeployer.hardhat-test.js.map +1 -1
  24. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  25. package/dist/core/HyperlaneCore.js +1 -0
  26. package/dist/core/HyperlaneCore.js.map +1 -1
  27. package/dist/core/HyperlaneCoreChecker.js +1 -1
  28. package/dist/core/HyperlaneCoreChecker.js.map +1 -1
  29. package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  30. package/dist/core/HyperlaneCoreDeployer.js +19 -16
  31. package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
  32. package/dist/core/MultiProtocolCore.test.js +53 -2
  33. package/dist/core/MultiProtocolCore.test.js.map +1 -1
  34. package/dist/core/TestCoreDeployer.d.ts +1 -5
  35. package/dist/core/TestCoreDeployer.d.ts.map +1 -1
  36. package/dist/core/TestCoreDeployer.js +0 -20
  37. package/dist/core/TestCoreDeployer.js.map +1 -1
  38. package/dist/core/adapters/SealevelCoreAdapter.d.ts +1 -1
  39. package/dist/core/adapters/SealevelCoreAdapter.d.ts.map +1 -1
  40. package/dist/core/adapters/SealevelCoreAdapter.js +9 -4
  41. package/dist/core/adapters/SealevelCoreAdapter.js.map +1 -1
  42. package/dist/core/testHyperlaneDeploy.hardhat-test.js +5 -1
  43. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
  44. package/dist/core/types.d.ts +1 -1
  45. package/dist/core/types.d.ts.map +1 -1
  46. package/dist/deploy/HyperlaneAppChecker.d.ts +1 -0
  47. package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
  48. package/dist/deploy/HyperlaneAppChecker.js +25 -2
  49. package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
  50. package/dist/deploy/HyperlaneDeployer.d.ts +9 -4
  51. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  52. package/dist/deploy/HyperlaneDeployer.js +85 -66
  53. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  54. package/dist/deploy/HyperlaneProxyFactoryDeployer.d.ts.map +1 -1
  55. package/dist/deploy/HyperlaneProxyFactoryDeployer.js +8 -4
  56. package/dist/deploy/HyperlaneProxyFactoryDeployer.js.map +1 -1
  57. package/dist/deploy/proxy.d.ts +1 -0
  58. package/dist/deploy/proxy.d.ts.map +1 -1
  59. package/dist/deploy/proxy.js +8 -1
  60. package/dist/deploy/proxy.js.map +1 -1
  61. package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
  62. package/dist/deploy/verify/ContractVerifier.js +7 -2
  63. package/dist/deploy/verify/ContractVerifier.js.map +1 -1
  64. package/dist/gas/HyperlaneIgp.d.ts.map +1 -1
  65. package/dist/gas/HyperlaneIgp.js +1 -0
  66. package/dist/gas/HyperlaneIgp.js.map +1 -1
  67. package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
  68. package/dist/gas/HyperlaneIgpChecker.js +15 -5
  69. package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
  70. package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
  71. package/dist/gas/HyperlaneIgpDeployer.js +2 -1
  72. package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
  73. package/dist/hook/HyperlaneHookDeployer.d.ts +12 -2
  74. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  75. package/dist/hook/HyperlaneHookDeployer.js +99 -13
  76. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  77. package/dist/hook/contracts.d.ts +4 -1
  78. package/dist/hook/contracts.d.ts.map +1 -1
  79. package/dist/hook/contracts.js +4 -1
  80. package/dist/hook/contracts.js.map +1 -1
  81. package/dist/hook/types.d.ts +24 -2
  82. package/dist/hook/types.d.ts.map +1 -1
  83. package/dist/hook/types.js +3 -0
  84. package/dist/hook/types.js.map +1 -1
  85. package/dist/index.d.ts +6 -6
  86. package/dist/index.d.ts.map +1 -1
  87. package/dist/index.js +9 -5
  88. package/dist/index.js.map +1 -1
  89. package/dist/ism/HyperlaneIsmFactory.d.ts +3 -1
  90. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  91. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +3 -3
  92. package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
  93. package/dist/ism/HyperlaneIsmFactory.js +87 -26
  94. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  95. package/dist/ism/types.d.ts +24 -7
  96. package/dist/ism/types.d.ts.map +1 -1
  97. package/dist/ism/types.js +33 -1
  98. package/dist/ism/types.js.map +1 -1
  99. package/dist/metadata/agentConfig.d.ts +92 -92
  100. package/dist/metadata/matchingList.d.ts +12 -12
  101. package/dist/metadata/matchingList.d.ts.map +1 -1
  102. package/dist/metadata/matchingList.js +1 -5
  103. package/dist/metadata/matchingList.js.map +1 -1
  104. package/dist/middleware/account/InterchainAccount.d.ts.map +1 -1
  105. package/dist/middleware/account/InterchainAccount.js +4 -1
  106. package/dist/middleware/account/InterchainAccount.js.map +1 -1
  107. package/dist/middleware/account/accounts.hardhat-test.js +5 -1
  108. package/dist/middleware/account/accounts.hardhat-test.js.map +1 -1
  109. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +5 -1
  110. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
  111. package/dist/middleware/query/InterchainQuery.d.ts.map +1 -1
  112. package/dist/middleware/query/InterchainQuery.js +1 -0
  113. package/dist/middleware/query/InterchainQuery.js.map +1 -1
  114. package/dist/middleware/query/queries.hardhat-test.js +5 -1
  115. package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
  116. package/dist/providers/MultiProvider.d.ts +1 -1
  117. package/dist/providers/MultiProvider.d.ts.map +1 -1
  118. package/dist/providers/MultiProvider.js +1 -1
  119. package/dist/providers/MultiProvider.js.map +1 -1
  120. package/dist/router/HyperlaneRouterChecker.d.ts +5 -1
  121. package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
  122. package/dist/router/HyperlaneRouterChecker.js +41 -6
  123. package/dist/router/HyperlaneRouterChecker.js.map +1 -1
  124. package/dist/router/RouterApps.d.ts +7 -1
  125. package/dist/router/RouterApps.d.ts.map +1 -1
  126. package/dist/router/RouterApps.js +17 -0
  127. package/dist/router/RouterApps.js.map +1 -1
  128. package/dist/router/types.d.ts +12 -1
  129. package/dist/router/types.d.ts.map +1 -1
  130. package/dist/router/types.js +5 -1
  131. package/dist/router/types.js.map +1 -1
  132. package/dist/test/testUtils.d.ts +1 -1
  133. package/dist/test/testUtils.d.ts.map +1 -1
  134. package/dist/test/testUtils.js +15 -37
  135. package/dist/test/testUtils.js.map +1 -1
  136. package/dist/token/adapters/SealevelTokenAdapter.d.ts.map +1 -1
  137. package/dist/token/adapters/SealevelTokenAdapter.js +13 -1
  138. package/dist/token/adapters/SealevelTokenAdapter.js.map +1 -1
  139. package/dist/token/config.d.ts +6 -3
  140. package/dist/token/config.d.ts.map +1 -1
  141. package/dist/token/config.js +11 -3
  142. package/dist/token/config.js.map +1 -1
  143. package/dist/token/contracts.d.ts +2 -2
  144. package/dist/token/contracts.d.ts.map +1 -1
  145. package/dist/token/deploy.d.ts +1 -1
  146. package/dist/token/deploy.d.ts.map +1 -1
  147. package/dist/token/deploy.js +21 -2
  148. package/dist/token/deploy.js.map +1 -1
  149. package/package.json +3 -3
  150. package/dist/consts/environments/testnet-sealevel.json +0 -19
  151. package/logos/black/base.svg +0 -12
  152. package/logos/black/polygonzkevm.svg +0 -49
  153. package/logos/black/scroll.svg +0 -66
  154. package/logos/color/base.svg +0 -18
  155. package/logos/color/polygonzkevm.svg +0 -22
  156. package/logos/color/scroll.svg +0 -36
@@ -1,15 +1,20 @@
1
1
  import { Ownable } from '@hyperlane-xyz/core';
2
- import { ProtocolType } from '@hyperlane-xyz/utils';
2
+ import { Address, ProtocolType } from '@hyperlane-xyz/utils';
3
3
  import { ChainMetadataManager } from '../metadata/ChainMetadataManager';
4
4
  import { MultiProvider } from '../providers/MultiProvider';
5
5
  import { ChainMap, Connection } from '../types';
6
6
  import { HyperlaneAddresses, HyperlaneAddressesMap, HyperlaneContracts, HyperlaneContractsMap, HyperlaneFactories } from './types';
7
7
  export declare function serializeContractsMap<F extends HyperlaneFactories>(contractsMap: HyperlaneContractsMap<F>): HyperlaneAddressesMap<F>;
8
- export declare function serializeContracts<F extends HyperlaneFactories>(contracts: HyperlaneContracts<F>): HyperlaneAddresses<F>;
8
+ export declare function serializeContracts<F extends HyperlaneFactories>(contracts: HyperlaneContracts<F>): any;
9
9
  export declare function filterAddressesMap<F extends HyperlaneFactories>(addressesMap: HyperlaneAddressesMap<any>, factories: F): HyperlaneAddressesMap<F>;
10
- export declare function filterAddressesToProtocol(addresses: HyperlaneAddressesMap<any>, protocolType: ProtocolType, metadataManager: ChainMetadataManager<any>): HyperlaneAddressesMap<any>;
10
+ export declare function filterChainMapToProtocol(contractsMap: ChainMap<any>, protocolType: ProtocolType, metadataManager: ChainMetadataManager<any>): ChainMap<any>;
11
+ export declare function filterChainMapExcludeProtocol(contractsMap: ChainMap<any>, protocolType: ProtocolType, metadataManager: ChainMetadataManager<any>): ChainMap<any>;
11
12
  export declare function attachContracts<F extends HyperlaneFactories>(addresses: HyperlaneAddresses<F>, factories: F): HyperlaneContracts<F>;
12
13
  export declare function attachContractsMap<F extends HyperlaneFactories>(addressesMap: HyperlaneAddressesMap<any>, factories: F): HyperlaneContractsMap<F>;
14
+ export declare function attachContractsMapAndGetForeignDeployments<F extends HyperlaneFactories>(addressesMap: HyperlaneAddressesMap<any>, factories: F, metadataManager: ChainMetadataManager<any>): {
15
+ contractsMap: HyperlaneContractsMap<F>;
16
+ foreignDeployments: ChainMap<Address>;
17
+ };
13
18
  export declare function connectContracts<F extends HyperlaneFactories>(contracts: HyperlaneContracts<F>, connection: Connection): HyperlaneContracts<F>;
14
19
  export declare function connectContractsMap<F extends HyperlaneFactories>(contractsMap: ChainMap<HyperlaneContracts<F>>, multiProvider: MultiProvider): ChainMap<HyperlaneContracts<F>>;
15
20
  export declare function filterOwnableContracts(contracts: HyperlaneContracts<any>): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/contracts/contracts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAEL,YAAY,EAMb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,kBAAkB,EAChE,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,GACrC,qBAAqB,CAAC,CAAC,CAAC,CAI1B;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,kBAAkB,EAC7D,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC/B,kBAAkB,CAAC,CAAC,CAAC,CAEvB;AAYD,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,kBAAkB,EAC7D,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,SAAS,EAAE,CAAC,GACX,qBAAqB,CAAC,CAAC,CAAC,CAa1B;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACrC,YAAY,EAAE,YAAY,EAE1B,eAAe,EAAE,oBAAoB,CAAC,GAAG,CAAC,GACzC,qBAAqB,CAAC,GAAG,CAAC,CAM5B;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,kBAAkB,EAC1D,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAChC,SAAS,EAAE,CAAC,GACX,kBAAkB,CAAC,CAAC,CAAC,CAKvB;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,kBAAkB,EAC7D,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,SAAS,EAAE,CAAC,GACX,qBAAqB,CAAC,CAAC,CAAC,CAK1B;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,kBAAkB,EAC3D,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAChC,UAAU,EAAE,UAAU,GACrB,kBAAkB,CAAC,CAAC,CAAC,CAKvB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,kBAAkB,EAC9D,YAAY,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAC7C,aAAa,EAAE,aAAa,GAC3B,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAIjC;AAED,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,GACjC,OAAO,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC,CAcrC;AAED,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,kBAAkB,EACpE,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,SAAS,EAAE,CAAC,EACZ,aAAa,EAAE,aAAa,GAC3B;IACD,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACvC,aAAa,EAAE,aAAa,CAAC;CAC9B,CAgBA"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/contracts/contracts.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.appFromAddressesMapHelper = exports.filterOwnableContracts = exports.connectContractsMap = exports.connectContracts = exports.attachContractsMap = exports.attachContracts = exports.filterAddressesToProtocol = exports.filterAddressesMap = exports.serializeContracts = exports.serializeContractsMap = void 0;
3
+ exports.appFromAddressesMapHelper = exports.filterOwnableContracts = exports.connectContractsMap = exports.connectContracts = exports.attachContractsMapAndGetForeignDeployments = exports.attachContractsMap = exports.attachContracts = exports.filterChainMapExcludeProtocol = exports.filterChainMapToProtocol = exports.filterAddressesMap = exports.serializeContracts = exports.serializeContractsMap = void 0;
4
+ const ethers_1 = require("ethers");
4
5
  const utils_1 = require("@hyperlane-xyz/utils");
5
6
  function serializeContractsMap(contractsMap) {
6
7
  return (0, utils_1.objMap)(contractsMap, (_, contracts) => {
@@ -9,7 +10,7 @@ function serializeContractsMap(contractsMap) {
9
10
  }
10
11
  exports.serializeContractsMap = serializeContractsMap;
11
12
  function serializeContracts(contracts) {
12
- return (0, utils_1.objMap)(contracts, (_, contract) => contract.address);
13
+ return (0, utils_1.objMap)(contracts, (_, contract) => contract.address ? contract.address : serializeContracts(contract));
13
14
  }
14
15
  exports.serializeContracts = serializeContracts;
15
16
  function getFactory(key, factories) {
@@ -28,12 +29,14 @@ function filterAddressesMap(addressesMap, factories) {
28
29
  });
29
30
  }
30
31
  exports.filterAddressesMap = filterAddressesMap;
31
- function filterAddressesToProtocol(addresses, protocolType,
32
- // Note, MultiProviders are passable here
33
- metadataManager) {
34
- return (0, utils_1.objFilter)(addresses, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol === protocolType);
32
+ function filterChainMapToProtocol(contractsMap, protocolType, metadataManager) {
33
+ return (0, utils_1.objFilter)(contractsMap, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol === protocolType);
35
34
  }
36
- exports.filterAddressesToProtocol = filterAddressesToProtocol;
35
+ exports.filterChainMapToProtocol = filterChainMapToProtocol;
36
+ function filterChainMapExcludeProtocol(contractsMap, protocolType, metadataManager) {
37
+ return (0, utils_1.objFilter)(contractsMap, (c, _addrs) => metadataManager.tryGetChainMetadata(c)?.protocol !== protocolType);
38
+ }
39
+ exports.filterChainMapExcludeProtocol = filterChainMapExcludeProtocol;
37
40
  function attachContracts(addresses, factories) {
38
41
  return (0, utils_1.objMap)(addresses, (key, address) => {
39
42
  const factory = getFactory(key, factories);
@@ -46,8 +49,23 @@ function attachContractsMap(addressesMap, factories) {
46
49
  return (0, utils_1.objMap)(filteredAddressesMap, (_, addresses) => attachContracts(addresses, factories));
47
50
  }
48
51
  exports.attachContractsMap = attachContractsMap;
52
+ function attachContractsMapAndGetForeignDeployments(addressesMap, factories, metadataManager) {
53
+ const contractsMap = attachContractsMap(filterChainMapToProtocol(addressesMap, utils_1.ProtocolType.Ethereum, metadataManager), factories);
54
+ const foreignDeployments = (0, utils_1.objMap)(filterChainMapExcludeProtocol(addressesMap, utils_1.ProtocolType.Ethereum, metadataManager), (_, addresses) => (0, utils_1.hexOrBase58ToHex)(addresses.router));
55
+ return {
56
+ contractsMap,
57
+ foreignDeployments,
58
+ };
59
+ }
60
+ exports.attachContractsMapAndGetForeignDeployments = attachContractsMapAndGetForeignDeployments;
49
61
  function connectContracts(contracts, connection) {
50
- return (0, utils_1.objMap)(contracts, (_, contract) => contract.connect(connection));
62
+ const connectedContracts = (0, utils_1.objMap)(contracts, (_, contract) => {
63
+ if (!contract.connect) {
64
+ return undefined;
65
+ }
66
+ return contract.connect(connection);
67
+ });
68
+ return Object.fromEntries(Object.entries(connectedContracts).filter(([_, contract]) => !!contract));
51
69
  }
52
70
  exports.connectContracts = connectContracts;
53
71
  function connectContractsMap(contractsMap, multiProvider) {
@@ -69,9 +87,21 @@ async function filterOwnableContracts(contracts) {
69
87
  }
70
88
  exports.filterOwnableContracts = filterOwnableContracts;
71
89
  function appFromAddressesMapHelper(addressesMap, factories, multiProvider) {
90
+ // Hack to accommodate non-Ethereum artifacts, while still retaining their
91
+ // presence in the addressesMap so that they are included in the list of chains
92
+ // on the MultiProvider (needed for getting metadata). A non-Ethereum-style address
93
+ // from another execution environment will cause Ethers to throw if we try to attach
94
+ // it, so we just replace it with the zero address.
95
+ const addressesMapWithEthereumizedAddresses = (0, utils_1.objMap)(addressesMap, (chain, addresses) => {
96
+ const metadata = multiProvider.getChainMetadata(chain);
97
+ if (metadata.protocol === utils_1.ProtocolType.Ethereum) {
98
+ return addresses;
99
+ }
100
+ return (0, utils_1.objMap)(addresses, (_key, _address) => ethers_1.ethers.constants.AddressZero);
101
+ });
72
102
  // Attaches contracts for each chain for which we have a complete set of
73
103
  // addresses
74
- const contractsMap = attachContractsMap(addressesMap, factories);
104
+ const contractsMap = attachContractsMap(addressesMapWithEthereumizedAddresses, factories);
75
105
  // Filters out providers for chains for which we don't have a complete set
76
106
  // of addresses
77
107
  const intersection = multiProvider.intersect(Object.keys(contractsMap));
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/contracts/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/contracts/contracts.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,11 @@ require("@nomiclabs/hardhat-waffle");
7
7
  const chai_1 = require("chai");
8
8
  const hardhat_1 = require("hardhat");
9
9
  const sinon_1 = __importDefault(require("sinon"));
10
+ const utils_1 = require("@hyperlane-xyz/utils");
10
11
  const chains_1 = require("../consts/chains");
11
12
  const HyperlaneProxyFactoryDeployer_1 = require("../deploy/HyperlaneProxyFactoryDeployer");
12
13
  const HyperlaneIsmFactory_1 = require("../ism/HyperlaneIsmFactory");
14
+ const types_1 = require("../ism/types");
13
15
  const MultiProvider_1 = require("../providers/MultiProvider");
14
16
  const testUtils_1 = require("../test/testUtils");
15
17
  const HyperlaneCore_1 = require("./HyperlaneCore");
@@ -26,20 +28,65 @@ describe('core', async () => {
26
28
  const [signer] = await hardhat_1.ethers.getSigners();
27
29
  multiProvider = MultiProvider_1.MultiProvider.createTestMultiProvider({ signer });
28
30
  const proxyFactoryDeployer = new HyperlaneProxyFactoryDeployer_1.HyperlaneProxyFactoryDeployer(multiProvider);
29
- coreConfig = (0, testUtils_1.testCoreConfig)(chains_1.TestChains);
31
+ coreConfig = (0, testUtils_1.testCoreConfig)(chains_1.TestChains, signer.address);
30
32
  const ismFactories = await proxyFactoryDeployer.deploy(coreConfig);
31
33
  ismFactory = new HyperlaneIsmFactory_1.HyperlaneIsmFactory(ismFactories, multiProvider);
32
- });
33
- beforeEach(async () => {
34
- const [signer] = await hardhat_1.ethers.getSigners();
35
- // This is kind of awkward and really these tests shouldn't live here
36
- multiProvider = MultiProvider_1.MultiProvider.createTestMultiProvider({ signer });
34
+ deployer = new HyperlaneCoreDeployer_1.HyperlaneCoreDeployer(multiProvider, ismFactory);
37
35
  });
38
36
  it('deploys', async () => {
39
- deployer = new HyperlaneCoreDeployer_1.HyperlaneCoreDeployer(multiProvider, ismFactory);
40
37
  contracts = await deployer.deploy(coreConfig);
41
38
  core = new HyperlaneCore_1.HyperlaneCore(contracts, multiProvider);
42
39
  });
40
+ describe('idempotency', () => {
41
+ beforeEach(async () => {
42
+ contracts = await deployer.deploy(coreConfig);
43
+ });
44
+ it('rotates default and required hooks and recovers artifacts', async () => {
45
+ const getHooks = async (contracts) => (0, utils_1.promiseObjAll)((0, utils_1.objMap)(contracts, async (_, { mailbox }) => ({
46
+ default: await mailbox.defaultHook(),
47
+ required: await mailbox.requiredHook(),
48
+ })));
49
+ const hooksBefore = await getHooks(contracts);
50
+ const updatedConfig = (0, utils_1.objMap)(coreConfig, (_, config) => ({
51
+ ...config,
52
+ defaultHook: config.requiredHook,
53
+ requiredHook: config.defaultHook,
54
+ }));
55
+ const [signer] = await hardhat_1.ethers.getSigners();
56
+ const nonceBefore = await signer.getTransactionCount();
57
+ const updatedContracts = await deployer.deploy(updatedConfig);
58
+ const hooksAfter = await getHooks(updatedContracts);
59
+ (0, chai_1.expect)(hooksBefore).to.deep.equal((0, utils_1.objMap)(hooksAfter, (_, res) => ({
60
+ required: res.default,
61
+ default: res.required,
62
+ })));
63
+ // number of set hook transactions
64
+ const numTransactions = 2 * chains_1.TestChains.length;
65
+ const nonceAfter = await signer.getTransactionCount();
66
+ (0, chai_1.expect)(nonceAfter).to.equal(nonceBefore + numTransactions);
67
+ });
68
+ it('rotates default ISMs', async () => {
69
+ const testIsm = await contracts.test1.mailbox.defaultIsm();
70
+ const updatedConfig = (0, utils_1.objMap)(coreConfig, (_, config) => {
71
+ const ismConfig = {
72
+ type: types_1.IsmType.AGGREGATION,
73
+ modules: [testIsm, testIsm],
74
+ threshold: 2,
75
+ };
76
+ return {
77
+ ...config,
78
+ defaultIsm: ismConfig,
79
+ };
80
+ });
81
+ const [signer] = await hardhat_1.ethers.getSigners();
82
+ const nonceBefore = await signer.getTransactionCount();
83
+ await deployer.deploy(updatedConfig);
84
+ // one aggregation ISM deploy and one set ISM transaction per chain
85
+ const numTransactions = 2 * chains_1.TestChains.length;
86
+ const nonceAfter = await signer.getTransactionCount();
87
+ (0, chai_1.expect)(nonceAfter).to.equal(nonceBefore + numTransactions);
88
+ });
89
+ });
43
90
  describe('failure modes', async () => {
44
91
  beforeEach(async () => {
45
92
  deployer = new HyperlaneCoreDeployer_1.HyperlaneCoreDeployer(multiProvider, ismFactory);
@@ -63,7 +110,11 @@ describe('core', async () => {
63
110
  sinon_1.default.restore(); // restore normal deployer behavior and test3 will be deployed
64
111
  const result = await deployer.deploy(coreConfig);
65
112
  (0, chai_1.expect)(result).to.have.keys(['test1', 'test2', 'test3']);
66
- (0, chai_1.expect)(result.test3).to.have.keys(Object.keys(result.test2));
113
+ // Each test network key has entries about the other test networks, whre ISM details are stored.
114
+ // With this exception, the keys should be the same, so we check the intersections for equality.
115
+ const testnetKeysIntersection = Object.keys(result.test1).filter((key) => Object.keys(result.test2).includes(key) &&
116
+ Object.keys(result.test3).includes(key));
117
+ (0, chai_1.assert)(testnetKeysIntersection.length > 0, 'there are no common core contracts deployed between the local testnets');
67
118
  });
68
119
  it('can be resumed from partial contracts', async () => {
69
120
  sinon_1.default.restore(); // restore normal deployer behavior
@@ -72,8 +123,9 @@ describe('core', async () => {
72
123
  //@ts-ignore operand not optional, ignore for this test
73
124
  delete deployer.deployedContracts.test2.mailbox;
74
125
  const result = await deployer.deploy(coreConfig);
75
- (0, chai_1.expect)(result.test2).to.have.keys(Object.keys(result.test1));
76
- (0, chai_1.expect)(result.test3).to.have.keys(Object.keys(result.test1));
126
+ const testnetKeysIntersection = Object.keys(result.test1).filter((key) => Object.keys(result.test2).includes(key) &&
127
+ Object.keys(result.test3).includes(key));
128
+ (0, chai_1.assert)(testnetKeysIntersection.length > 0, 'there are no common core contracts deployed between the local testnets');
77
129
  });
78
130
  it('times out ', async () => {
79
131
  // @ts-ignore
@@ -1 +1 @@
1
- {"version":3,"file":"CoreDeployer.hardhat-test.js","sourceRoot":"","sources":["../../src/core/CoreDeployer.hardhat-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoreDeployer.hardhat-test.js","sourceRoot":"","sources":["../../src/core/CoreDeployer.hardhat-test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneCore.d.ts","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EACL,OAAO,EACP,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EACL,oBAAoB,EAErB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,qBAAa,aAAc,SAAQ,YAAY,CAAC,aAAa,CAAC;IAC5D,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,oBAAoB,EACrD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,GAC3B,aAAa;IAQhB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,aAAa,EAAE,aAAa,GAC3B,aAAa;IAShB,eAAe,UAAW,OAAO,KAAG,SAAS,YAAY,CAAC,CAMrD;IAEL,eAAe,WACL,SAAS,eACJ,SAAS,aACX,cAAc,QACnB,MAAM,KACX,QAAQ,OAAO,SAAS,CAAC,CAK1B;IAEF,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS;IAI/D,SAAS,CAAC,qBAAqB,CAC7B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;IAkB5B,yBAAyB,CAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,SAAS,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAmBhB,wBAAwB,CACtB,QAAQ,EAAE,MAAM,CAAC,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IAM9B,uBAAuB,CAC3B,QAAQ,EAAE,MAAM,CAAC,eAAe,EAChC,KAAK,CAAC,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAehB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG,iBAAiB,EAAE;IAI5E,MAAM,CAAC,qBAAqB,CAC1B,QAAQ,EAAE,MAAM,CAAC,eAAe,GAC/B,iBAAiB,EAAE;CAqBvB"}
1
+ {"version":3,"file":"HyperlaneCore.d.ts","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EACL,OAAO,EACP,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EACL,oBAAoB,EAErB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,qBAAa,aAAc,SAAQ,YAAY,CAAC,aAAa,CAAC;IAC5D,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,oBAAoB,EACrD,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,GAC3B,aAAa;IAShB,MAAM,CAAC,gBAAgB,CACrB,YAAY,EAAE,qBAAqB,CAAC,GAAG,CAAC,EACxC,aAAa,EAAE,aAAa,GAC3B,aAAa;IAShB,eAAe,UAAW,OAAO,KAAG,SAAS,YAAY,CAAC,CAMrD;IAEL,eAAe,WACL,SAAS,eACJ,SAAS,aACX,cAAc,QACnB,MAAM,KACX,QAAQ,OAAO,SAAS,CAAC,CAK1B;IAEF,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,iBAAiB,GAAG,SAAS;IAI/D,SAAS,CAAC,qBAAqB,CAC7B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;IAkB5B,yBAAyB,CAC7B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,SAAS,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAmBhB,wBAAwB,CACtB,QAAQ,EAAE,MAAM,CAAC,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;IAM9B,uBAAuB,CAC3B,QAAQ,EAAE,MAAM,CAAC,eAAe,EAChC,KAAK,CAAC,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAehB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC,eAAe,GAAG,iBAAiB,EAAE;IAI5E,MAAM,CAAC,qBAAqB,CAC1B,QAAQ,EAAE,MAAM,CAAC,eAAe,GAC/B,iBAAiB,EAAE;CAqBvB"}
@@ -26,6 +26,7 @@ class HyperlaneCore extends HyperlaneApp_1.HyperlaneApp {
26
26
  if (!envAddresses) {
27
27
  throw new Error(`No addresses found for ${env}`);
28
28
  }
29
+ // @ts-ignore
29
30
  return HyperlaneCore.fromAddressesMap(envAddresses, multiProvider);
30
31
  }
31
32
  static fromAddressesMap(addressesMap, multiProvider) {
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneCore.js","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneCore.js","sourceRoot":"","sources":["../../src/core/HyperlaneCore.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,7 @@ class HyperlaneCoreChecker extends HyperlaneAppChecker_1.HyperlaneAppChecker {
50
50
  if (!matches) {
51
51
  const violation = {
52
52
  type: types_1.CoreViolationType.Mailbox,
53
- mailboxType: types_1.MailboxViolationType.DefaultIsm,
53
+ subType: types_1.MailboxViolationType.DefaultIsm,
54
54
  contract: mailbox,
55
55
  chain,
56
56
  actual: actualIsm,
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneCoreChecker.js","sourceRoot":"","sources":["../../src/core/HyperlaneCoreChecker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneCoreChecker.js","sourceRoot":"","sources":["../../src/core/HyperlaneCoreChecker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneCoreDeployer.d.ts","sourceRoot":"","sources":["../../src/core/HyperlaneCoreDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,OAAO,EACP,iBAAiB,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,qBAAa,qBAAsB,SAAQ,iBAAiB,CAC1D,UAAU,EACV,aAAa,CACd;IAMG,QAAQ,CAAC,UAAU,EAAE,mBAAmB;IAL1C,oBAAoB,EAAE,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAM;IACxD,YAAY,EAAE,qBAAqB,CAAC;gBAGlC,aAAa,EAAE,aAAa,EACnB,UAAU,EAAE,mBAAmB;IAa1C,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,IAAI;IAKxD,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,OAAO,CAAC;IAwCb,uBAAuB,CAC3B,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC;IASvB,UAAU,CACd,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GACpC,OAAO,CAAC,OAAO,CAAC;IAUb,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBhE,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAsC9C"}
1
+ {"version":3,"file":"HyperlaneCoreDeployer.d.ts","sourceRoot":"","sources":["../../src/core/HyperlaneCoreDeployer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,mBAAmB,EAEpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,qBAAa,qBAAsB,SAAQ,iBAAiB,CAC1D,UAAU,EACV,aAAa,CACd;IAMG,QAAQ,CAAC,UAAU,EAAE,mBAAmB;IAL1C,oBAAoB,EAAE,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAM;IACxD,YAAY,EAAE,qBAAqB,CAAC;gBAGlC,aAAa,EAAE,aAAa,EACnB,UAAU,EAAE,mBAAmB;IAc1C,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG,IAAI;IAKxD,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,OAAO,CAAC;IAwFb,uBAAuB,CAC3B,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC;IASvB,UAAU,CACd,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,EAClB,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GACpC,OAAO,CAAC,OAAO,CAAC;IAcb,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAMhE,eAAe,CACnB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAsC9C"}
@@ -5,15 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.HyperlaneCoreDeployer = void 0;
7
7
  const debug_1 = __importDefault(require("debug"));
8
- const core_1 = require("@hyperlane-xyz/core");
9
8
  const HyperlaneDeployer_1 = require("../deploy/HyperlaneDeployer");
10
9
  const HyperlaneHookDeployer_1 = require("../hook/HyperlaneHookDeployer");
10
+ const HyperlaneIsmFactory_1 = require("../ism/HyperlaneIsmFactory");
11
11
  const contracts_1 = require("./contracts");
12
12
  class HyperlaneCoreDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
13
13
  constructor(multiProvider, ismFactory) {
14
14
  super(multiProvider, contracts_1.coreFactories, {
15
15
  logger: (0, debug_1.default)('hyperlane:CoreDeployer'),
16
- chainTimeoutMs: 1000 * 60 * 10, // 10 minutes
16
+ chainTimeoutMs: 1000 * 60 * 10,
17
+ ismFactory,
17
18
  });
18
19
  this.ismFactory = ismFactory;
19
20
  this.startingBlockNumbers = {};
@@ -26,21 +27,30 @@ class HyperlaneCoreDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
26
27
  async deployMailbox(chain, config, proxyAdmin) {
27
28
  const domain = this.multiProvider.getDomainId(chain);
28
29
  const mailbox = await this.deployProxiedContract(chain, 'mailbox', proxyAdmin, [domain]);
29
- const defaultIsm = await this.deployIsm(chain, config.defaultIsm);
30
+ let defaultIsm = await mailbox.defaultIsm();
31
+ const matches = await (0, HyperlaneIsmFactory_1.moduleMatchesConfig)(chain, defaultIsm, config.defaultIsm, this.multiProvider, this.ismFactory.getContracts(chain));
32
+ if (!matches) {
33
+ this.logger('Deploying default ISM');
34
+ defaultIsm = await this.deployIsm(chain, config.defaultIsm);
35
+ }
30
36
  const hookAddresses = { mailbox: mailbox.address, proxyAdmin };
37
+ this.logger('Deploying default hook');
31
38
  const defaultHook = await this.deployHook(chain, config.defaultHook, hookAddresses);
39
+ this.logger('Deploying required hook');
32
40
  const requiredHook = await this.deployHook(chain, config.requiredHook, hookAddresses);
33
41
  // configure mailbox
34
42
  try {
35
- await this.multiProvider.handleTx(chain, mailbox.initialize(config.owner, defaultIsm, defaultHook, requiredHook));
43
+ this.logger('Initializing mailbox');
44
+ await this.multiProvider.handleTx(chain, mailbox.initialize(config.owner, defaultIsm, defaultHook, requiredHook, this.multiProvider.getTransactionOverrides(chain)));
36
45
  }
37
46
  catch (e) {
38
47
  if (!e.message.includes('already initialized')) {
39
48
  throw e;
40
49
  }
41
- else {
42
- this.logger('Mailbox already initialized');
43
- }
50
+ this.logger('Mailbox already initialized');
51
+ await this.configureHook(chain, mailbox, defaultHook, (_mailbox) => _mailbox.defaultHook(), (_mailbox, _hook) => _mailbox.populateTransaction.setDefaultHook(_hook));
52
+ await this.configureHook(chain, mailbox, requiredHook, (_mailbox) => _mailbox.requiredHook(), (_mailbox, _hook) => _mailbox.populateTransaction.setRequiredHook(_hook));
53
+ await this.configureIsm(chain, mailbox, defaultIsm, (_mailbox) => _mailbox.defaultIsm(), (_mailbox, _module) => _mailbox.populateTransaction.setDefaultIsm(_module));
44
54
  }
45
55
  return mailbox;
46
56
  }
@@ -50,19 +60,12 @@ class HyperlaneCoreDeployer extends HyperlaneDeployer_1.HyperlaneDeployer {
50
60
  }
51
61
  async deployHook(chain, config, coreAddresses) {
52
62
  const hooks = await this.hookDeployer.deployContracts(chain, config, coreAddresses);
53
- this.addDeployedContracts(chain, hooks);
63
+ this.addDeployedContracts(chain, this.hookDeployer.deployedContracts[chain], this.hookDeployer.verificationInputs[chain]);
54
64
  return hooks[config.type].address;
55
65
  }
56
66
  async deployIsm(chain, config) {
57
- const key = 'defaultIsm';
58
- if (this.cachedAddresses[chain][key]) {
59
- this.addDeployedContracts(chain, {
60
- [key]: core_1.IInterchainSecurityModule__factory.connect(this.cachedAddresses[chain][key], this.multiProvider.getSignerOrProvider(chain)),
61
- });
62
- return this.cachedAddresses[chain][key];
63
- }
64
67
  const ism = await this.ismFactory.deploy(chain, config);
65
- this.addDeployedContracts(chain, { [key]: ism });
68
+ this.addDeployedContracts(chain, this.ismFactory.deployedIsms[chain]);
66
69
  return ism.address;
67
70
  }
68
71
  async deployContracts(chain, config) {
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneCoreDeployer.js","sourceRoot":"","sources":["../../src/core/HyperlaneCoreDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneCoreDeployer.js","sourceRoot":"","sources":["../../src/core/HyperlaneCoreDeployer.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,12 @@ const ethers_1 = require("ethers");
5
5
  const chainMetadata_1 = require("../consts/chainMetadata");
6
6
  const chains_1 = require("../consts/chains");
7
7
  const MultiProtocolProvider_1 = require("../providers/MultiProtocolProvider");
8
+ const ProviderType_1 = require("../providers/ProviderType");
8
9
  const MultiProtocolCore_1 = require("./MultiProtocolCore");
9
10
  const EvmCoreAdapter_1 = require("./adapters/EvmCoreAdapter");
10
11
  describe('MultiProtocolCore', () => {
11
12
  describe('constructs', () => {
12
- it('with constructor', async () => {
13
+ it('with constructor', () => {
13
14
  const multiProvider = new MultiProtocolProvider_1.MultiProtocolProvider({
14
15
  ethereum: {
15
16
  ...chainMetadata_1.ethereum,
@@ -26,7 +27,7 @@ describe('MultiProtocolCore', () => {
26
27
  const ethAdapter = core.adapter(chains_1.Chains.ethereum);
27
28
  (0, chai_1.expect)(ethAdapter).to.be.instanceOf(EvmCoreAdapter_1.EvmCoreAdapter);
28
29
  });
29
- it('from environment', async () => {
30
+ it('from environment', () => {
30
31
  const multiProvider = new MultiProtocolProvider_1.MultiProtocolProvider();
31
32
  const core = MultiProtocolCore_1.MultiProtocolCore.fromEnvironment('mainnet', multiProvider);
32
33
  (0, chai_1.expect)(core).to.be.instanceOf(MultiProtocolCore_1.MultiProtocolCore);
@@ -34,5 +35,55 @@ describe('MultiProtocolCore', () => {
34
35
  (0, chai_1.expect)(ethAdapter).to.be.instanceOf(EvmCoreAdapter_1.EvmCoreAdapter);
35
36
  });
36
37
  });
38
+ describe('checks delivery', () => {
39
+ it('to EVM', async () => {
40
+ const multiProvider = new MultiProtocolProvider_1.MultiProtocolProvider();
41
+ const core = MultiProtocolCore_1.MultiProtocolCore.fromEnvironment('mainnet', multiProvider);
42
+ // https://arbiscan.io//tx/0x9da03376486327fc9b1e8069538e0fef91641055cb3a2ff89460c7955ab68264#eventlog
43
+ const receipt = {
44
+ transactionHash: '0x9da03376486327fc9b1e8069538e0fef91641055cb3a2ff89460c7955ab68264',
45
+ logs: [
46
+ {
47
+ data: '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000005300000013670000a4b100000000000000000000000096271ca0ab9eefb3ca481749c0ca4c705fd4f523000000890000000000000000000000006c0ac8cea75232aa7bed8cbe9c4f820e7a77a9c348656c6c6f2100000000000000000000000000',
48
+ topics: [
49
+ '0x769f711d20c679153d382254f59892613b58a97cc876b249134ac25c80f9c814',
50
+ '0x00000000000000000000000096271ca0ab9eefb3ca481749c0ca4c705fd4f523',
51
+ '0x0000000000000000000000000000000000000000000000000000000000000089',
52
+ '0x0000000000000000000000006c0ac8cea75232aa7bed8cbe9c4f820e7a77a9c3',
53
+ ],
54
+ },
55
+ ],
56
+ };
57
+ // Should return immediately
58
+ await core.waitForMessagesProcessed(chains_1.Chains.arbitrum, chains_1.Chains.polygon, {
59
+ type: ProviderType_1.ProviderType.EthersV5,
60
+ receipt,
61
+ });
62
+ });
63
+ it('to Sealevel', async () => {
64
+ const multiProvider = new MultiProtocolProvider_1.MultiProtocolProvider();
65
+ const core = MultiProtocolCore_1.MultiProtocolCore.fromEnvironment('mainnet', multiProvider);
66
+ // https://arbiscan.io//tx/0x9da03376486327fc9b1e8069538e0fef91641055cb3a2ff89460c7955ab68264#eventlog
67
+ const receipt = {
68
+ transactionHash: '0x9da03376486327fc9b1e8069538e0fef91641055cb3a2ff89460c7955ab68264',
69
+ logs: [
70
+ {
71
+ data: '0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000053000000136d0000a4b100000000000000000000000096271ca0ab9eefb3ca481749c0ca4c705fd4f523536f6c4d3797d0096b18b5b645c346a66d7f18c6c5738782c6bce24da57a3462bdef82b148656c6c6f2100000000000000000000000000',
72
+ topics: [
73
+ '0x769f711d20c679153d382254f59892613b58a97cc876b249134ac25c80f9c814',
74
+ '0x00000000000000000000000096271ca0ab9eefb3ca481749c0ca4c705fd4f523',
75
+ '0x00000000000000000000000000000000000000000000000000000000536f6c4d',
76
+ '0x3797d0096b18b5b645c346a66d7f18c6c5738782c6bce24da57a3462bdef82b1',
77
+ ],
78
+ },
79
+ ],
80
+ };
81
+ // Should return immediately
82
+ await core.waitForMessagesProcessed(chains_1.Chains.arbitrum, chains_1.Chains.solana, {
83
+ type: ProviderType_1.ProviderType.EthersV5,
84
+ receipt,
85
+ });
86
+ });
87
+ });
37
88
  });
38
89
  //# sourceMappingURL=MultiProtocolCore.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiProtocolCore.test.js","sourceRoot":"","sources":["../../src/core/MultiProtocolCore.test.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,mCAAgC;AAEhC,2DAAmD;AACnD,6CAA0C;AAC1C,8EAA2E;AAE3E,2DAAwD;AACxD,8DAA2D;AAE3D,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;YAChC,MAAM,aAAa,GAAG,IAAI,6CAAqB,CAAC;gBAC9C,QAAQ,EAAE;oBACR,GAAG,wBAAQ;iBACZ;aACF,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,qCAAiB,CAAC,aAAa,EAAE;gBAChD,QAAQ,EAAE;oBACR,iBAAiB,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW;oBAC/C,UAAU,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW;oBACxC,OAAO,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW;iBACtC;aACF,CAAC,CAAC;YACH,IAAA,aAAM,EAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,qCAAiB,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,eAAM,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,+BAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;YAChC,MAAM,aAAa,GAAG,IAAI,6CAAqB,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,qCAAiB,CAAC,eAAe,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACzE,IAAA,aAAM,EAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,qCAAiB,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,eAAM,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,+BAAc,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"MultiProtocolCore.test.js","sourceRoot":"","sources":["../../src/core/MultiProtocolCore.test.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,9 @@
1
1
  import { HyperlaneContracts } from '../contracts/types';
2
- import { MultiProvider } from '../providers/MultiProvider';
3
- import { ChainMap, ChainName } from '../types';
2
+ import { ChainMap } from '../types';
4
3
  import { HyperlaneCoreDeployer } from './HyperlaneCoreDeployer';
5
4
  import { TestCoreApp } from './TestCoreApp';
6
5
  import { CoreFactories } from './contracts';
7
6
  export declare class TestCoreDeployer extends HyperlaneCoreDeployer {
8
- readonly multiProvider: MultiProvider;
9
- constructor(multiProvider: MultiProvider);
10
- deployIsm(chain: ChainName): Promise<string>;
11
7
  deploy(): Promise<ChainMap<HyperlaneContracts<CoreFactories>>>;
12
8
  deployApp(): Promise<TestCoreApp>;
13
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TestCoreDeployer.d.ts","sourceRoot":"","sources":["../../src/core/TestCoreDeployer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAC;AAS3D,qBAAa,gBAAiB,SAAQ,qBAAqB;aAC7B,aAAa,EAAE,aAAa;gBAA5B,aAAa,EAAE,aAAa;IAMlD,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAW5C,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;IAI9D,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;CAGxC"}
1
+ {"version":3,"file":"TestCoreDeployer.d.ts","sourceRoot":"","sources":["../../src/core/TestCoreDeployer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,qBAAa,gBAAiB,SAAQ,qBAAqB;IACnD,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC;IAI9D,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;CAGxC"}