@hyperlane-xyz/cli 9.0.0 → 9.1.0
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.
- package/dist/src/check/warp.d.ts +3 -3
- package/dist/src/check/warp.d.ts.map +1 -1
- package/dist/src/check/warp.js +2 -8
- package/dist/src/check/warp.js.map +1 -1
- package/dist/src/deploy/warp.d.ts +11 -1
- package/dist/src/deploy/warp.d.ts.map +1 -1
- package/dist/src/deploy/warp.js +71 -154
- package/dist/src/deploy/warp.js.map +1 -1
- package/dist/src/tests/commands/helpers.d.ts +15 -0
- package/dist/src/tests/commands/helpers.d.ts.map +1 -1
- package/dist/src/tests/commands/helpers.js +58 -2
- package/dist/src/tests/commands/helpers.js.map +1 -1
- package/dist/src/tests/commands/warp.d.ts +2 -2
- package/dist/src/tests/commands/warp.d.ts.map +1 -1
- package/dist/src/tests/commands/warp.js.map +1 -1
- package/dist/src/tests/warp/warp-apply-extend.e2e-test.js +251 -2
- package/dist/src/tests/warp/warp-apply-extend.e2e-test.js.map +1 -1
- package/dist/src/tests/warp/warp-apply.e2e-test.js +41 -2
- package/dist/src/tests/warp/warp-apply.e2e-test.js.map +1 -1
- package/dist/src/tests/warp/warp-check.e2e-test.js +25 -3
- package/dist/src/tests/warp/warp-check.e2e-test.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/package.json +3 -3
package/dist/src/check/warp.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { WarpRouteDeployConfigMailboxRequired } from '@hyperlane-xyz/sdk';
|
|
2
2
|
export declare function runWarpRouteCheck({ warpRouteConfig, onChainWarpConfig, }: {
|
|
3
|
-
warpRouteConfig:
|
|
4
|
-
onChainWarpConfig:
|
|
3
|
+
warpRouteConfig: WarpRouteDeployConfigMailboxRequired;
|
|
4
|
+
onChainWarpConfig: WarpRouteDeployConfigMailboxRequired;
|
|
5
5
|
}): Promise<void>;
|
|
6
6
|
//# sourceMappingURL=warp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/check/warp.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/check/warp.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,oCAAoC,EAErC,MAAM,oBAAoB,CAAC;AAM5B,wBAAsB,iBAAiB,CAAC,EACtC,eAAe,EACf,iBAAiB,GAClB,EAAE;IACD,eAAe,EAAE,oCAAoC,CAAC;IACtD,iBAAiB,EAAE,oCAAoC,CAAC;CACzD,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBhB"}
|
package/dist/src/check/warp.js
CHANGED
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
import { stringify as yamlStringify } from 'yaml';
|
|
2
|
-
import {
|
|
2
|
+
import { transformConfigToCheck, } from '@hyperlane-xyz/sdk';
|
|
3
3
|
import { diffObjMerge } from '@hyperlane-xyz/utils';
|
|
4
4
|
import { log, logGreen } from '../logger.js';
|
|
5
5
|
import { formatYamlViolationsOutput } from '../utils/output.js';
|
|
6
|
-
const KEYS_TO_IGNORE = ['totalSupply'];
|
|
7
|
-
function sanitizeConfig(obj) {
|
|
8
|
-
// Remove keys from obj
|
|
9
|
-
const filteredObj = Object.fromEntries(Object.entries(obj).filter(([key]) => !KEYS_TO_IGNORE.includes(key)));
|
|
10
|
-
return normalizeConfig(filteredObj);
|
|
11
|
-
}
|
|
12
6
|
export async function runWarpRouteCheck({ warpRouteConfig, onChainWarpConfig, }) {
|
|
13
7
|
// Go through each chain and only add to the output the chains that have mismatches
|
|
14
8
|
const [violations, isInvalid] = Object.keys(warpRouteConfig).reduce((acc, chain) => {
|
|
15
|
-
const { mergedObject, isInvalid } = diffObjMerge(
|
|
9
|
+
const { mergedObject, isInvalid } = diffObjMerge(transformConfigToCheck(onChainWarpConfig[chain]), transformConfigToCheck(warpRouteConfig[chain]));
|
|
16
10
|
if (isInvalid) {
|
|
17
11
|
acc[0][chain] = mergedObject;
|
|
18
12
|
acc[1] ||= isInvalid;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/check/warp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAElD,OAAO,
|
|
1
|
+
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/check/warp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAElD,OAAO,EAEL,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAc,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEhE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,eAAe,EACf,iBAAiB,GAIlB;IACC,mFAAmF;IACnF,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CACjE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACb,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,YAAY,CAC9C,sBAAsB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAChD,sBAAsB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAC/C,CAAC;QAEF,IAAI,SAAS,EAAE,CAAC;YACd,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC;YAC7B,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;QACvB,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC,EACD,CAAC,EAAE,EAAE,KAAK,CAA+C,CAC1D,CAAC;IAEF,IAAI,SAAS,EAAE,CAAC;QACd,GAAG,CAAC,0BAA0B,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,QAAQ,CAAC,qBAAqB,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChainSubmissionStrategy, WarpCoreConfig, WarpRouteDeployConfigMailboxRequired } from '@hyperlane-xyz/sdk';
|
|
1
|
+
import { ChainMap, ChainSubmissionStrategy, WarpCoreConfig, WarpRouteDeployConfigMailboxRequired } from '@hyperlane-xyz/sdk';
|
|
2
2
|
import { WriteCommandContext } from '../context/types.js';
|
|
3
3
|
interface DeployParams {
|
|
4
4
|
context: WriteCommandContext;
|
|
@@ -14,6 +14,16 @@ export declare function runWarpRouteDeploy({ context, warpRouteDeploymentConfigP
|
|
|
14
14
|
warpRouteDeploymentConfigPath?: string;
|
|
15
15
|
}): Promise<void>;
|
|
16
16
|
export declare function runWarpRouteApply(params: WarpApplyParams): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Extends an existing Warp route to include new chains.
|
|
19
|
+
* This function manages the entire extension workflow:
|
|
20
|
+
* 1. Divides the configuration into existing and new chain segments.
|
|
21
|
+
* 2. Returns the current configuration if no new chains are added.
|
|
22
|
+
* 3. Deploys and sets up new contracts for the additional chains.
|
|
23
|
+
* 4. Refreshes the Warp core configuration with updated token details.
|
|
24
|
+
* 5. Saves the revised artifacts to the registry.
|
|
25
|
+
*/
|
|
26
|
+
export declare function extendWarpRoute(params: WarpApplyParams, apiKeys: ChainMap<string>, warpCoreConfig: WarpCoreConfig): Promise<WarpCoreConfig>;
|
|
17
27
|
/**
|
|
18
28
|
* Retrieves a chain submission strategy from the provided filepath.
|
|
19
29
|
* @param submissionStrategyFilepath a filepath to the submission strategy file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAOA,OAAO,
|
|
1
|
+
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"AAOA,OAAO,EAIL,QAAQ,EAER,uBAAuB,EA4BvB,cAAc,EAEd,oCAAoC,EAarC,MAAM,oBAAoB,CAAC;AAa5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAiB1D,UAAU,YAAY;IACpB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,gBAAgB,EAAE,oCAAoC,CAAC;CACxD;AAED,UAAU,eAAgB,SAAQ,YAAY;IAC5C,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,kBAAkB,CAAC,EACvC,OAAO,EACP,6BAA6B,GAC9B,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACxC,iBA4DA;AA+TD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CAmCf;AAoDD;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,cAAc,CAAC,CAoCzB;AAgED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,0BAA0B,EAAE,MAAM,GACjC,uBAAuB,CAKzB"}
|
package/dist/src/deploy/warp.js
CHANGED
|
@@ -3,8 +3,8 @@ import { groupBy } from 'lodash-es';
|
|
|
3
3
|
import { stringify as yamlStringify } from 'yaml';
|
|
4
4
|
import { ProxyAdmin__factory } from '@hyperlane-xyz/core';
|
|
5
5
|
import { buildArtifact as coreBuildArtifact } from '@hyperlane-xyz/core/buildArtifact.js';
|
|
6
|
-
import { CCIPContractCache, ChainSubmissionStrategySchema, ContractVerifier, EvmERC20WarpModule,
|
|
7
|
-
import { ProtocolType, assert,
|
|
6
|
+
import { CCIPContractCache, ChainSubmissionStrategySchema, ContractVerifier, EvmERC20WarpModule, EvmHookModule, EvmIsmModule, ExplorerLicenseType, HypERC20Deployer, HypERC721Deployer, HyperlaneProxyFactoryDeployer, IsmType, TOKEN_TYPE_TO_STANDARD, TxSubmitterType, WarpCoreConfigSchema, WarpRouteDeployConfigSchema, attachContractsMap, connectContractsMap, expandWarpDeployConfig, extractIsmAndHookFactoryAddresses, getRouterAddressesFromWarpCoreConfig, getTokenConnectionId, hypERC20factories, isCollateralTokenConfig, isTokenMetadata, isXERC20TokenConfig, splitWarpCoreAndExtendedConfigs, } from '@hyperlane-xyz/sdk';
|
|
7
|
+
import { ProtocolType, assert, objMap, promiseObjAll, retryAsync, } from '@hyperlane-xyz/utils';
|
|
8
8
|
import { readWarpRouteDeployConfig } from '../config/warp.js';
|
|
9
9
|
import { MINIMUM_WARP_DEPLOY_GAS } from '../consts.js';
|
|
10
10
|
import { requestAndSaveApiKeys } from '../context/context.js';
|
|
@@ -126,20 +126,11 @@ async function createWarpIsm({ ccipContractCache, chain, chainAddresses, context
|
|
|
126
126
|
logBlue(`Loading registry factory addresses for ${chain}...`);
|
|
127
127
|
logGray(`Creating ${interchainSecurityModule.type} ISM for token on ${chain} chain...`);
|
|
128
128
|
logGreen(`Finished creating ${interchainSecurityModule.type} ISM for token on ${chain} chain.`);
|
|
129
|
-
const { mailbox, domainRoutingIsmFactory, staticAggregationHookFactory, staticAggregationIsmFactory, staticMerkleRootMultisigIsmFactory, staticMessageIdMultisigIsmFactory, staticMerkleRootWeightedMultisigIsmFactory, staticMessageIdWeightedMultisigIsmFactory, } = chainAddresses;
|
|
130
129
|
const evmIsmModule = await EvmIsmModule.create({
|
|
131
130
|
chain,
|
|
132
|
-
mailbox,
|
|
131
|
+
mailbox: chainAddresses.mailbox,
|
|
133
132
|
multiProvider: context.multiProvider,
|
|
134
|
-
proxyFactoryFactories:
|
|
135
|
-
domainRoutingIsmFactory,
|
|
136
|
-
staticAggregationHookFactory,
|
|
137
|
-
staticAggregationIsmFactory,
|
|
138
|
-
staticMerkleRootMultisigIsmFactory,
|
|
139
|
-
staticMessageIdMultisigIsmFactory,
|
|
140
|
-
staticMerkleRootWeightedMultisigIsmFactory,
|
|
141
|
-
staticMessageIdWeightedMultisigIsmFactory,
|
|
142
|
-
},
|
|
133
|
+
proxyFactoryFactories: extractIsmAndHookFactoryAddresses(chainAddresses),
|
|
143
134
|
config: interchainSecurityModule,
|
|
144
135
|
ccipContractCache,
|
|
145
136
|
contractVerifier,
|
|
@@ -155,16 +146,6 @@ async function createWarpHook({ ccipContractCache, chain, chainAddresses, contex
|
|
|
155
146
|
}
|
|
156
147
|
logBlue(`Loading registry factory addresses for ${chain}...`);
|
|
157
148
|
logGray(`Creating ${hook.type} Hook for token on ${chain} chain...`);
|
|
158
|
-
const { mailbox, domainRoutingIsmFactory, staticAggregationHookFactory, staticAggregationIsmFactory, staticMerkleRootMultisigIsmFactory, staticMessageIdMultisigIsmFactory, staticMerkleRootWeightedMultisigIsmFactory, staticMessageIdWeightedMultisigIsmFactory, } = chainAddresses;
|
|
159
|
-
const proxyFactoryFactories = {
|
|
160
|
-
domainRoutingIsmFactory,
|
|
161
|
-
staticAggregationHookFactory,
|
|
162
|
-
staticAggregationIsmFactory,
|
|
163
|
-
staticMerkleRootMultisigIsmFactory,
|
|
164
|
-
staticMessageIdMultisigIsmFactory,
|
|
165
|
-
staticMerkleRootWeightedMultisigIsmFactory,
|
|
166
|
-
staticMessageIdWeightedMultisigIsmFactory,
|
|
167
|
-
};
|
|
168
149
|
// If config.proxyadmin.address exists, then use that. otherwise deploy a new proxyAdmin
|
|
169
150
|
const proxyAdminAddress = warpConfig.proxyAdmin?.address ??
|
|
170
151
|
(await context.multiProvider.handleDeploy(chain, new ProxyAdmin__factory(), [])).address;
|
|
@@ -172,26 +153,26 @@ async function createWarpHook({ ccipContractCache, chain, chainAddresses, contex
|
|
|
172
153
|
chain,
|
|
173
154
|
multiProvider: context.multiProvider,
|
|
174
155
|
coreAddresses: {
|
|
175
|
-
mailbox,
|
|
156
|
+
mailbox: chainAddresses.mailbox,
|
|
176
157
|
proxyAdmin: proxyAdminAddress,
|
|
177
158
|
},
|
|
178
159
|
config: hook,
|
|
179
160
|
ccipContractCache,
|
|
180
161
|
contractVerifier,
|
|
181
|
-
proxyFactoryFactories,
|
|
162
|
+
proxyFactoryFactories: extractIsmAndHookFactoryAddresses(chainAddresses),
|
|
182
163
|
});
|
|
183
164
|
logGreen(`Finished creating ${hook.type} Hook for token on ${chain} chain.`);
|
|
184
165
|
const { deployedHook } = evmHookModule.serialize();
|
|
185
166
|
return deployedHook;
|
|
186
167
|
}
|
|
187
|
-
async function getWarpCoreConfig(
|
|
168
|
+
async function getWarpCoreConfig(params, contracts) {
|
|
188
169
|
const warpCoreConfig = { tokens: [] };
|
|
189
170
|
// TODO: replace with warp read
|
|
190
|
-
const tokenMetadata = await HypERC20Deployer.deriveTokenMetadata(context.multiProvider, warpDeployConfig);
|
|
171
|
+
const tokenMetadata = await HypERC20Deployer.deriveTokenMetadata(params.context.multiProvider, params.warpDeployConfig);
|
|
191
172
|
assert(tokenMetadata && isTokenMetadata(tokenMetadata), 'Missing required token metadata');
|
|
192
173
|
const { decimals, symbol, name } = tokenMetadata;
|
|
193
174
|
assert(decimals, 'Missing decimals on token metadata');
|
|
194
|
-
generateTokenConfigs(warpCoreConfig, warpDeployConfig, contracts, symbol, name, decimals);
|
|
175
|
+
generateTokenConfigs(warpCoreConfig, params.warpDeployConfig, contracts, symbol, name, decimals);
|
|
195
176
|
fullyConnectTokens(warpCoreConfig);
|
|
196
177
|
return { warpCoreConfig, addWarpRouteOptions: { symbol } };
|
|
197
178
|
}
|
|
@@ -240,68 +221,95 @@ export async function runWarpRouteApply(params) {
|
|
|
240
221
|
const { chainMetadata, skipConfirmation } = context;
|
|
241
222
|
WarpRouteDeployConfigSchema.parse(warpDeployConfig);
|
|
242
223
|
WarpCoreConfigSchema.parse(warpCoreConfig);
|
|
243
|
-
const warpCoreConfigByChain = Object.fromEntries(warpCoreConfig.tokens.map((token) => [token.chainName, token]));
|
|
244
224
|
const chains = Object.keys(warpDeployConfig);
|
|
245
225
|
let apiKeys = {};
|
|
246
226
|
if (!skipConfirmation)
|
|
247
227
|
apiKeys = await requestAndSaveApiKeys(chains, chainMetadata, context.registry);
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
228
|
+
// Extend the warp route and get the updated configs
|
|
229
|
+
const updatedWarpCoreConfig = await extendWarpRoute(params, apiKeys, warpCoreConfig);
|
|
230
|
+
// Then create and submit update transactions
|
|
231
|
+
const transactions = await updateExistingWarpRoute(params, apiKeys, warpDeployConfig, updatedWarpCoreConfig);
|
|
252
232
|
if (transactions.length == 0)
|
|
253
233
|
return logGreen(`Warp config is the same as target. No updates needed.`);
|
|
254
234
|
await submitWarpApplyTransactions(params, groupBy(transactions, 'chainId'));
|
|
255
235
|
}
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
extendedConfigs = await deriveMetadataFromExisting(multiProvider, existingConfigs,
|
|
236
|
+
/**
|
|
237
|
+
* Handles the deployment and configuration of new contracts for extending a Warp route.
|
|
238
|
+
* This function performs several key steps:
|
|
239
|
+
* 1. Derives metadata from existing contracts and applies it to new configurations
|
|
240
|
+
* 2. Deploys new contracts using the derived configurations
|
|
241
|
+
* 3. Merges existing and new router configurations
|
|
242
|
+
* 4. Generates an updated Warp core configuration
|
|
243
|
+
*/
|
|
244
|
+
async function deployWarpExtensionContracts(params, apiKeys, existingConfigs, initialExtendedConfigs, warpCoreConfigByChain) {
|
|
245
|
+
// Deploy new contracts with derived metadata
|
|
246
|
+
const extendedConfigs = await deriveMetadataFromExisting(params.context.multiProvider, existingConfigs, initialExtendedConfigs);
|
|
267
247
|
const newDeployedContracts = await executeDeploy({
|
|
268
248
|
context: params.context,
|
|
269
249
|
warpDeployConfig: extendedConfigs,
|
|
270
250
|
}, apiKeys);
|
|
271
|
-
|
|
251
|
+
// Merge existing and new routers
|
|
252
|
+
const mergedRouters = mergeAllRouters(params.context.multiProvider, existingConfigs, newDeployedContracts, warpCoreConfigByChain);
|
|
253
|
+
// Get the updated core config
|
|
272
254
|
const { warpCoreConfig: updatedWarpCoreConfig, addWarpRouteOptions } = await getWarpCoreConfig(params, mergedRouters);
|
|
273
255
|
WarpCoreConfigSchema.parse(updatedWarpCoreConfig);
|
|
274
|
-
|
|
275
|
-
|
|
256
|
+
return {
|
|
257
|
+
newDeployedContracts,
|
|
258
|
+
updatedWarpCoreConfig,
|
|
259
|
+
addWarpRouteOptions,
|
|
260
|
+
};
|
|
276
261
|
}
|
|
277
|
-
|
|
262
|
+
/**
|
|
263
|
+
* Extends an existing Warp route to include new chains.
|
|
264
|
+
* This function manages the entire extension workflow:
|
|
265
|
+
* 1. Divides the configuration into existing and new chain segments.
|
|
266
|
+
* 2. Returns the current configuration if no new chains are added.
|
|
267
|
+
* 3. Deploys and sets up new contracts for the additional chains.
|
|
268
|
+
* 4. Refreshes the Warp core configuration with updated token details.
|
|
269
|
+
* 5. Saves the revised artifacts to the registry.
|
|
270
|
+
*/
|
|
271
|
+
export async function extendWarpRoute(params, apiKeys, warpCoreConfig) {
|
|
272
|
+
const { context, warpDeployConfig } = params;
|
|
273
|
+
const warpCoreConfigByChain = Object.fromEntries(warpCoreConfig.tokens.map((token) => [token.chainName, token]));
|
|
274
|
+
const warpCoreChains = Object.keys(warpCoreConfigByChain);
|
|
275
|
+
// Split between the existing and additional config
|
|
276
|
+
const [existingConfigs, initialExtendedConfigs] = splitWarpCoreAndExtendedConfigs(warpDeployConfig, warpCoreChains);
|
|
277
|
+
const extendedChains = Object.keys(initialExtendedConfigs);
|
|
278
|
+
if (extendedChains.length === 0) {
|
|
279
|
+
return warpCoreConfig;
|
|
280
|
+
}
|
|
281
|
+
logBlue(`Extending Warp Route to ${extendedChains.join(', ')}`);
|
|
282
|
+
// Deploy new contracts with derived metadata and merge with existing config
|
|
283
|
+
const { updatedWarpCoreConfig, addWarpRouteOptions } = await deployWarpExtensionContracts(params, apiKeys, existingConfigs, initialExtendedConfigs, warpCoreConfigByChain);
|
|
284
|
+
// Write the updated artifacts
|
|
285
|
+
await writeDeploymentArtifacts(updatedWarpCoreConfig, context, addWarpRouteOptions);
|
|
286
|
+
return updatedWarpCoreConfig;
|
|
287
|
+
}
|
|
288
|
+
// Updates Warp routes with new configurations.
|
|
289
|
+
async function updateExistingWarpRoute(params, apiKeys, warpDeployConfig, warpCoreConfig) {
|
|
278
290
|
logBlue('Updating deployed Warp Routes');
|
|
279
291
|
const { multiProvider, registry } = params.context;
|
|
280
292
|
const registryAddresses = (await registry.getAddresses());
|
|
281
293
|
const ccipContractCache = new CCIPContractCache(registryAddresses);
|
|
282
294
|
const contractVerifier = new ContractVerifier(multiProvider, apiKeys, coreBuildArtifact, ExplorerLicenseType.MIT);
|
|
283
295
|
const transactions = [];
|
|
284
|
-
|
|
296
|
+
// Get all deployed router addresses
|
|
297
|
+
const deployedRoutersAddresses = getRouterAddressesFromWarpCoreConfig(warpCoreConfig);
|
|
298
|
+
const expandedWarpDeployConfig = await expandWarpDeployConfig(multiProvider, warpDeployConfig, deployedRoutersAddresses);
|
|
299
|
+
await promiseObjAll(objMap(expandedWarpDeployConfig, async (chain, config) => {
|
|
285
300
|
await retryAsync(async () => {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
const configWithMailbox = { ...config, mailbox };
|
|
301
|
+
const deployedTokenRoute = deployedRoutersAddresses[chain];
|
|
302
|
+
assert(deployedTokenRoute, `Missing artifacts for ${chain}.`);
|
|
303
|
+
const configWithMailbox = {
|
|
304
|
+
...config,
|
|
305
|
+
mailbox: registryAddresses[chain].mailbox,
|
|
306
|
+
};
|
|
293
307
|
const evmERC20WarpModule = new EvmERC20WarpModule(multiProvider, {
|
|
294
308
|
config: configWithMailbox,
|
|
295
309
|
chain,
|
|
296
310
|
addresses: {
|
|
297
311
|
deployedTokenRoute,
|
|
298
|
-
|
|
299
|
-
staticMessageIdMultisigIsmFactory,
|
|
300
|
-
staticAggregationIsmFactory,
|
|
301
|
-
staticAggregationHookFactory,
|
|
302
|
-
domainRoutingIsmFactory,
|
|
303
|
-
staticMerkleRootWeightedMultisigIsmFactory,
|
|
304
|
-
staticMessageIdWeightedMultisigIsmFactory,
|
|
312
|
+
...extractIsmAndHookFactoryAddresses(registryAddresses[chain]),
|
|
305
313
|
},
|
|
306
314
|
}, ccipContractCache, contractVerifier);
|
|
307
315
|
transactions.push(...(await evmERC20WarpModule.update(configWithMailbox)));
|
|
@@ -343,97 +351,6 @@ function mergeAllRouters(multiProvider, existingConfigs, deployedContractsMap, w
|
|
|
343
351
|
...deployedContractsMap,
|
|
344
352
|
};
|
|
345
353
|
}
|
|
346
|
-
/**
|
|
347
|
-
* Enroll all deployed routers with each other.
|
|
348
|
-
*
|
|
349
|
-
* @param deployedContractsMap - A map of deployed Hyperlane contracts by chain.
|
|
350
|
-
* @param multiProvider - A MultiProvider instance to interact with multiple chains.
|
|
351
|
-
*/
|
|
352
|
-
async function enrollRemoteRouters(params, deployedContractsMap) {
|
|
353
|
-
logBlue(`Enrolling deployed routers with each other...`);
|
|
354
|
-
const { multiProvider, registry } = params.context;
|
|
355
|
-
const registryAddresses = await registry.getAddresses();
|
|
356
|
-
const deployedRoutersAddresses = objMap(deployedContractsMap, (_, contracts) => getRouter(contracts).address);
|
|
357
|
-
const deployedDestinationGas = await populateDestinationGas(multiProvider, params.warpDeployConfig, deployedContractsMap);
|
|
358
|
-
const deployedChains = Object.keys(deployedRoutersAddresses);
|
|
359
|
-
const transactions = [];
|
|
360
|
-
await promiseObjAll(objMap(deployedContractsMap, async (chain, contracts) => {
|
|
361
|
-
await retryAsync(async () => {
|
|
362
|
-
const router = getRouter(contracts); // Assume deployedContract always has 1 value
|
|
363
|
-
const deployedTokenRoute = router.address;
|
|
364
|
-
// Mutate the config.remoteRouters by setting it to all other routers to update
|
|
365
|
-
const warpRouteReader = new EvmERC20WarpRouteReader(multiProvider, chain);
|
|
366
|
-
const mutatedWarpRouteConfig = await warpRouteReader.deriveWarpRouteConfig(deployedTokenRoute);
|
|
367
|
-
const { domainRoutingIsmFactory, staticMerkleRootMultisigIsmFactory, staticMessageIdMultisigIsmFactory, staticAggregationIsmFactory, staticAggregationHookFactory, staticMerkleRootWeightedMultisigIsmFactory, staticMessageIdWeightedMultisigIsmFactory, } = registryAddresses[chain];
|
|
368
|
-
const evmERC20WarpModule = new EvmERC20WarpModule(multiProvider, {
|
|
369
|
-
config: mutatedWarpRouteConfig,
|
|
370
|
-
chain,
|
|
371
|
-
addresses: {
|
|
372
|
-
deployedTokenRoute,
|
|
373
|
-
staticMerkleRootMultisigIsmFactory,
|
|
374
|
-
staticMessageIdMultisigIsmFactory,
|
|
375
|
-
staticAggregationIsmFactory,
|
|
376
|
-
staticAggregationHookFactory,
|
|
377
|
-
domainRoutingIsmFactory,
|
|
378
|
-
staticMerkleRootWeightedMultisigIsmFactory,
|
|
379
|
-
staticMessageIdWeightedMultisigIsmFactory,
|
|
380
|
-
},
|
|
381
|
-
});
|
|
382
|
-
const otherChains = multiProvider
|
|
383
|
-
.getRemoteChains(chain)
|
|
384
|
-
.filter((c) => deployedChains.includes(c));
|
|
385
|
-
mutatedWarpRouteConfig.remoteRouters =
|
|
386
|
-
otherChains.reduce((remoteRouters, otherChain) => {
|
|
387
|
-
remoteRouters[multiProvider.getDomainId(otherChain)] = {
|
|
388
|
-
address: deployedRoutersAddresses[otherChain],
|
|
389
|
-
};
|
|
390
|
-
return remoteRouters;
|
|
391
|
-
}, {});
|
|
392
|
-
mutatedWarpRouteConfig.destinationGas =
|
|
393
|
-
otherChains.reduce((destinationGas, otherChain) => {
|
|
394
|
-
const otherChainDomain = multiProvider.getDomainId(otherChain);
|
|
395
|
-
destinationGas[otherChainDomain] =
|
|
396
|
-
deployedDestinationGas[otherChainDomain];
|
|
397
|
-
return destinationGas;
|
|
398
|
-
}, {});
|
|
399
|
-
const mutatedConfigTxs = await evmERC20WarpModule.update(mutatedWarpRouteConfig);
|
|
400
|
-
if (mutatedConfigTxs.length == 0)
|
|
401
|
-
return logGreen(`Warp config on ${chain} is the same as target. No updates needed.`);
|
|
402
|
-
transactions.push(...mutatedConfigTxs);
|
|
403
|
-
});
|
|
404
|
-
}));
|
|
405
|
-
return transactions;
|
|
406
|
-
}
|
|
407
|
-
/**
|
|
408
|
-
* Populates the destination gas amounts for each chain using warpConfig.gas OR querying other router's destinationGas
|
|
409
|
-
*/
|
|
410
|
-
async function populateDestinationGas(multiProvider, warpDeployConfig, deployedContractsMap) {
|
|
411
|
-
const destinationGas = {};
|
|
412
|
-
const deployedChains = Object.keys(deployedContractsMap);
|
|
413
|
-
await promiseObjAll(objMap(deployedContractsMap, async (chain, contracts) => {
|
|
414
|
-
await retryAsync(async () => {
|
|
415
|
-
const router = getRouter(contracts);
|
|
416
|
-
const otherChains = multiProvider
|
|
417
|
-
.getRemoteChains(chain)
|
|
418
|
-
.filter((c) => deployedChains.includes(c));
|
|
419
|
-
for (const otherChain of otherChains) {
|
|
420
|
-
const otherDomain = multiProvider.getDomainId(otherChain);
|
|
421
|
-
if (!destinationGas[otherDomain])
|
|
422
|
-
destinationGas[otherDomain] =
|
|
423
|
-
warpDeployConfig[otherChain].gas?.toString() ||
|
|
424
|
-
(await router.destinationGas(otherDomain)).toString();
|
|
425
|
-
}
|
|
426
|
-
});
|
|
427
|
-
}));
|
|
428
|
-
return destinationGas;
|
|
429
|
-
}
|
|
430
|
-
function getRouter(contracts) {
|
|
431
|
-
for (const key of objKeys(hypERC20factories)) {
|
|
432
|
-
if (contracts[key])
|
|
433
|
-
return contracts[key];
|
|
434
|
-
}
|
|
435
|
-
throw new Error('No matching contract found.');
|
|
436
|
-
}
|
|
437
354
|
function displayWarpDeployPlan(deployConfig) {
|
|
438
355
|
logBlue('\nWarp Route Deployment Plan');
|
|
439
356
|
logGray('==========================');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/deploy/warp.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
/// <reference types="node" resolution-mode="require"/>
|
|
3
3
|
import { ProcessOutput, ProcessPromise } from 'zx';
|
|
4
4
|
import { ERC20Test, XERC20LockboxTest, XERC20VSTest } from '@hyperlane-xyz/core';
|
|
5
|
+
import { ChainAddresses } from '@hyperlane-xyz/registry';
|
|
5
6
|
import { HypTokenRouterConfig } from '@hyperlane-xyz/sdk';
|
|
6
7
|
import { Address } from '@hyperlane-xyz/utils';
|
|
8
|
+
import { CommandContext } from '../../context/types.js';
|
|
7
9
|
export declare const E2E_TEST_CONFIGS_PATH = "./test-configs";
|
|
8
10
|
export declare const REGISTRY_PATH = "./test-configs/anvil";
|
|
9
11
|
export declare const TEMP_PATH = "/tmp";
|
|
@@ -69,6 +71,19 @@ export declare function extendWarpConfig(params: {
|
|
|
69
71
|
warpDeployPath: string;
|
|
70
72
|
strategyUrl?: string;
|
|
71
73
|
}): Promise<string>;
|
|
74
|
+
/**
|
|
75
|
+
* Sets up an incomplete warp route extension for testing purposes.
|
|
76
|
+
*
|
|
77
|
+
* This function creates a new warp route configuration for the second chain.
|
|
78
|
+
*/
|
|
79
|
+
export declare function setupIncompleteWarpRouteExtension(chain2Addresses: ChainAddresses): Promise<{
|
|
80
|
+
chain2DomainId: string;
|
|
81
|
+
chain3DomainId: string;
|
|
82
|
+
warpConfigPath: string;
|
|
83
|
+
configToExtend: HypTokenRouterConfig;
|
|
84
|
+
context: CommandContext;
|
|
85
|
+
combinedWarpCorePath: string;
|
|
86
|
+
}>;
|
|
72
87
|
/**
|
|
73
88
|
* Deploys new core contracts on the specified chain if it doesn't already exist, and returns the chain addresses.
|
|
74
89
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/tests/commands/helpers.ts"],"names":[],"mappings":";;AACA,OAAO,EAAK,aAAa,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC;AAEtD,OAAO,EACL,SAAS,EAGT,iBAAiB,EAEjB,YAAY,EAEb,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/tests/commands/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { ethers } from 'ethers';
|
|
1
|
+
import { Wallet, ethers } from 'ethers';
|
|
2
2
|
import { $ } from 'zx';
|
|
3
3
|
import { ERC20Test__factory, ERC4626Test__factory, XERC20LockboxTest__factory, XERC20VSTest__factory, } from '@hyperlane-xyz/core';
|
|
4
4
|
import { createWarpRouteConfigId, } from '@hyperlane-xyz/registry';
|
|
5
|
-
import { WarpCoreConfigSchema, } from '@hyperlane-xyz/sdk';
|
|
5
|
+
import { TokenType, WarpCoreConfigSchema, } from '@hyperlane-xyz/sdk';
|
|
6
6
|
import { sleep } from '@hyperlane-xyz/utils';
|
|
7
7
|
import { getContext } from '../../context/context.js';
|
|
8
|
+
import { extendWarpRoute as extendWarpRouteWithoutApplyTransactions } from '../../deploy/warp.js';
|
|
8
9
|
import { readYamlOrJson, writeYamlOrJson } from '../../utils/files.js';
|
|
9
10
|
import { hyperlaneCoreDeploy } from './core.js';
|
|
10
11
|
import { hyperlaneWarpApply, hyperlaneWarpSendRelay, readWarpConfig, } from './warp.js';
|
|
@@ -126,10 +127,65 @@ export async function extendWarpConfig(params) {
|
|
|
126
127
|
const { chain, chainToExtend, extendedConfig, warpCorePath, warpDeployPath, strategyUrl, } = params;
|
|
127
128
|
const warpDeployConfig = await readWarpConfig(chain, warpCorePath, warpDeployPath);
|
|
128
129
|
warpDeployConfig[chainToExtend] = extendedConfig;
|
|
130
|
+
// Remove remoteRouters and destinationGas as they are written in readWarpConfig
|
|
131
|
+
delete warpDeployConfig[chain].remoteRouters;
|
|
132
|
+
delete warpDeployConfig[chain].destinationGas;
|
|
129
133
|
writeYamlOrJson(warpDeployPath, warpDeployConfig);
|
|
130
134
|
await hyperlaneWarpApply(warpDeployPath, warpCorePath, strategyUrl);
|
|
131
135
|
return warpDeployPath;
|
|
132
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* Sets up an incomplete warp route extension for testing purposes.
|
|
139
|
+
*
|
|
140
|
+
* This function creates a new warp route configuration for the second chain.
|
|
141
|
+
*/
|
|
142
|
+
export async function setupIncompleteWarpRouteExtension(chain2Addresses) {
|
|
143
|
+
const warpConfigPath = `${TEMP_PATH}/warp-route-deployment-2.yaml`;
|
|
144
|
+
const chain2DomainId = await getDomainId(CHAIN_NAME_2, ANVIL_KEY);
|
|
145
|
+
const chain3DomainId = await getDomainId(CHAIN_NAME_3, ANVIL_KEY);
|
|
146
|
+
const configToExtend = {
|
|
147
|
+
decimals: 18,
|
|
148
|
+
mailbox: chain2Addresses.mailbox,
|
|
149
|
+
name: 'Ether',
|
|
150
|
+
owner: new Wallet(ANVIL_KEY).address,
|
|
151
|
+
symbol: 'ETH',
|
|
152
|
+
totalSupply: 0,
|
|
153
|
+
type: TokenType.native,
|
|
154
|
+
};
|
|
155
|
+
const context = await getContext({
|
|
156
|
+
registryUris: [REGISTRY_PATH],
|
|
157
|
+
key: ANVIL_KEY,
|
|
158
|
+
});
|
|
159
|
+
const warpCoreConfig = readYamlOrJson(WARP_CORE_CONFIG_PATH_2);
|
|
160
|
+
const warpDeployConfig = await readWarpConfig(CHAIN_NAME_2, WARP_CORE_CONFIG_PATH_2, warpConfigPath);
|
|
161
|
+
warpDeployConfig[CHAIN_NAME_3] = configToExtend;
|
|
162
|
+
const signer2 = new Wallet(ANVIL_KEY, context.multiProvider.getProvider(CHAIN_NAME_2));
|
|
163
|
+
const signer3 = new Wallet(ANVIL_KEY, context.multiProvider.getProvider(CHAIN_NAME_3));
|
|
164
|
+
context.multiProvider.setSigner(CHAIN_NAME_2, signer2);
|
|
165
|
+
context.multiProvider.setSigner(CHAIN_NAME_3, signer3);
|
|
166
|
+
await extendWarpRouteWithoutApplyTransactions({
|
|
167
|
+
context: {
|
|
168
|
+
...context,
|
|
169
|
+
signer: signer3,
|
|
170
|
+
key: ANVIL_KEY,
|
|
171
|
+
},
|
|
172
|
+
warpCoreConfig,
|
|
173
|
+
warpDeployConfig,
|
|
174
|
+
receiptsDir: TEMP_PATH,
|
|
175
|
+
}, {}, warpCoreConfig);
|
|
176
|
+
const combinedWarpCorePath = getCombinedWarpRoutePath('ETH', [
|
|
177
|
+
CHAIN_NAME_2,
|
|
178
|
+
CHAIN_NAME_3,
|
|
179
|
+
]);
|
|
180
|
+
return {
|
|
181
|
+
chain2DomainId,
|
|
182
|
+
chain3DomainId,
|
|
183
|
+
warpConfigPath,
|
|
184
|
+
configToExtend,
|
|
185
|
+
context,
|
|
186
|
+
combinedWarpCorePath,
|
|
187
|
+
};
|
|
188
|
+
}
|
|
133
189
|
/**
|
|
134
190
|
* Deploys new core contracts on the specified chain if it doesn't already exist, and returns the chain addresses.
|
|
135
191
|
*/
|