@hyperlane-xyz/cli 33.1.0 → 33.1.1

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 (2) hide show
  1. package/bundle/index.js +253 -102
  2. package/package.json +15 -15
package/bundle/index.js CHANGED
@@ -677365,17 +677365,24 @@ async function getOperatorSignature(domain, serviceManager, avsDirectory, operat
677365
677365
 
677366
677366
  __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
677367
677367
  /* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
677368
- /* harmony export */ W: () => (/* binding */ runWarpIcaOwnerCheck),
677369
- /* harmony export */ x: () => (/* binding */ runWarpRouteCheck)
677368
+ /* harmony export */ WN: () => (/* binding */ runWarpIcaOwnerCheck),
677369
+ /* harmony export */ l$: () => (/* binding */ checkCrossCollateralWarpRoute),
677370
+ /* harmony export */ xr: () => (/* binding */ runWarpRouteCheck)
677370
677371
  /* harmony export */ });
677371
677372
  /* harmony import */ var yaml__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(10684);
677372
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(91039);
677373
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(21387);
677374
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(16639);
677375
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(93142);
677376
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_7__ = __nccwpck_require__(73938);
677377
- /* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_2__ = __nccwpck_require__(54321);
677378
- /* harmony import */ var _utils_output_js__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(61494);
677373
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(91039);
677374
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_9__ = __nccwpck_require__(4879);
677375
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_10__ = __nccwpck_require__(47265);
677376
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(21387);
677377
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(16639);
677378
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_7__ = __nccwpck_require__(93142);
677379
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__ = __nccwpck_require__(73938);
677380
+ /* harmony import */ var _config_warp_js__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(10392);
677381
+ /* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(54321);
677382
+ /* harmony import */ var _utils_output_js__WEBPACK_IMPORTED_MODULE_2__ = __nccwpck_require__(61494);
677383
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_config_warp_js__WEBPACK_IMPORTED_MODULE_1__]);
677384
+ _config_warp_js__WEBPACK_IMPORTED_MODULE_1__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
677385
+
677379
677386
 
677380
677387
 
677381
677388
 
@@ -677383,15 +677390,15 @@ __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependen
677383
677390
 
677384
677391
  async function runWarpRouteCheck({ result, }) {
677385
677392
  if (Object.keys(result.diff).length > 0) {
677386
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm)((0,_utils_output_js__WEBPACK_IMPORTED_MODULE_1__/* .formatYamlViolationsOutput */ ._4)((0,yaml__WEBPACK_IMPORTED_MODULE_0__/* .stringify */ .As)(result.diff, null, 2)));
677393
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm)((0,_utils_output_js__WEBPACK_IMPORTED_MODULE_2__/* .formatYamlViolationsOutput */ ._4)((0,yaml__WEBPACK_IMPORTED_MODULE_0__/* .stringify */ .As)(result.diff, null, 2)));
677387
677394
  }
677388
677395
  if (result.scaleViolations.length > 0) {
677389
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .logRed */ .SU)(`Found invalid or missing scale for inconsistent decimals`);
677396
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .logRed */ .SU)(`Found invalid or missing scale for inconsistent decimals`);
677390
677397
  }
677391
677398
  if (!result.isValid) {
677392
677399
  process.exit(1);
677393
677400
  }
677394
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .logGreen */ .In)(`No violations found`);
677401
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .logGreen */ .In)(`No violations found`);
677395
677402
  }
677396
677403
  /**
677397
677404
  * Checks that destination chain owners match expected ICA addresses
@@ -677401,32 +677408,32 @@ async function runWarpIcaOwnerCheck({ context, warpDeployConfig, origin, originO
677401
677408
  const { registry, multiProvider } = context;
677402
677409
  const configChains = new Set(Object.keys(warpDeployConfig));
677403
677410
  const originOwner = originOwnerOverride ?? warpDeployConfig[origin]?.owner;
677404
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .v)(originOwner, `Origin chain "${origin}" does not have an owner configured and --originOwner was not provided`);
677411
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)(originOwner, `Origin chain "${origin}" does not have an owner configured and --originOwner was not provided`);
677405
677412
  // Filter chains: must be in config, EVM, and not the origin chain
677406
677413
  const chainsToCheck = (chains ?? [...configChains]).filter((chain) => {
677407
677414
  if (chain === origin) {
677408
677415
  return false;
677409
677416
  }
677410
677417
  if (!configChains.has(chain)) {
677411
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .warnYellow */ .dE)(`Chain "${chain}" is not part of the warp config, skipping`);
677418
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .warnYellow */ .dE)(`Chain "${chain}" is not part of the warp config, skipping`);
677412
677419
  return false;
677413
677420
  }
677414
- if (!(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .isEVMLike */ .Us)(multiProvider.tryGetProtocol(chain))) {
677415
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .warnYellow */ .dE)(`Skipping non-EVM destination chain "${chain}"`);
677421
+ if (!(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_5__/* .isEVMLike */ .Us)(multiProvider.tryGetProtocol(chain))) {
677422
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .warnYellow */ .dE)(`Skipping non-EVM destination chain "${chain}"`);
677416
677423
  return false;
677417
677424
  }
677418
677425
  return true;
677419
677426
  });
677420
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .v)(chainsToCheck.length > 0, 'No EVM destination chains to check');
677421
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .v)((0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .isEVMLike */ .Us)(multiProvider.tryGetProtocol(origin)), `origin ${origin} must be EVM chain`);
677427
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)(chainsToCheck.length > 0, 'No EVM destination chains to check');
677428
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)((0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_5__/* .isEVMLike */ .Us)(multiProvider.tryGetProtocol(origin)), `origin ${origin} must be EVM chain`);
677422
677429
  // Get ICA router addresses from registry
677423
677430
  const chainAddresses = {};
677424
677431
  for (const chain of [origin, ...chainsToCheck]) {
677425
677432
  const addresses = await registry.getChainAddresses(chain);
677426
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .v)(addresses?.interchainAccountRouter, `No interchainAccountRouter found for chain ${chain}`);
677433
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)(addresses?.interchainAccountRouter, `No interchainAccountRouter found for chain ${chain}`);
677427
677434
  chainAddresses[chain] = addresses;
677428
677435
  }
677429
- const ica = _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_5__/* .InterchainAccount */ .N0.fromAddressesMap(chainAddresses, multiProvider);
677436
+ const ica = _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_6__/* .InterchainAccount */ .N0.fromAddressesMap(chainAddresses, multiProvider);
677430
677437
  const ownerConfig = {
677431
677438
  origin,
677432
677439
  owner: originOwner,
@@ -677437,20 +677444,69 @@ async function runWarpIcaOwnerCheck({ context, warpDeployConfig, origin, originO
677437
677444
  for (const destination of chainsToCheck) {
677438
677445
  const configuredOwner = warpDeployConfig[destination].owner;
677439
677446
  const expectedIcaAddress = await ica.getAccount(destination, ownerConfig);
677440
- if (!(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_6__/* .eqAddress */ .fv)(configuredOwner, expectedIcaAddress)) {
677447
+ if (!(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_7__/* .eqAddress */ .fv)(configuredOwner, expectedIcaAddress)) {
677441
677448
  violations[destination] = {
677442
677449
  owner: {
677443
- actual: (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_6__/* .normalizeAddressEvm */ .Ek)(configuredOwner),
677444
- expected: (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_6__/* .normalizeAddressEvm */ .Ek)(expectedIcaAddress),
677450
+ actual: (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_7__/* .normalizeAddressEvm */ .Ek)(configuredOwner),
677451
+ expected: (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_7__/* .normalizeAddressEvm */ .Ek)(expectedIcaAddress),
677445
677452
  },
677446
677453
  };
677447
677454
  }
677448
677455
  }
677449
677456
  if (Object.keys(violations).length > 0) {
677450
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .log */ .Rm)((0,_utils_output_js__WEBPACK_IMPORTED_MODULE_1__/* .formatYamlViolationsOutput */ ._4)((0,yaml__WEBPACK_IMPORTED_MODULE_0__/* .stringify */ .As)((0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_7__/* .keepOnlyDiffObjects */ .Fz)(violations), null, 2)));
677457
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .log */ .Rm)((0,_utils_output_js__WEBPACK_IMPORTED_MODULE_2__/* .formatYamlViolationsOutput */ ._4)((0,yaml__WEBPACK_IMPORTED_MODULE_0__/* .stringify */ .As)((0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__/* .keepOnlyDiffObjects */ .Fz)(violations), null, 2)));
677451
677458
  process.exit(1);
677452
677459
  }
677453
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_2__/* .logGreen */ .In)('No violations found');
677460
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_3__/* .logGreen */ .In)('No violations found');
677461
+ }
677462
+ /**
677463
+ * Checks a combined CROSS warp route by finding its constituent routes (those whose
677464
+ * tokens are a subset of the CROSS config's tokens) and checking each one separately.
677465
+ * Used when a CROSS route has no deploy config of its own.
677466
+ */
677467
+ async function checkCrossCollateralWarpRoute({ context, warpCoreConfig, warpRouteId, }) {
677468
+ const crossAddresses = new Set(warpCoreConfig.tokens.flatMap((t) => t.addressOrDenom ? [t.addressOrDenom.toLowerCase()] : []));
677469
+ const allRoutes = await context.registry.getWarpRoutes();
677470
+ const constituentRouteIds = [];
677471
+ for (const [routeId, routeCoreConfig] of Object.entries(allRoutes)) {
677472
+ if (routeId === warpRouteId)
677473
+ continue;
677474
+ if (routeCoreConfig.tokens.length === 0)
677475
+ continue;
677476
+ if (routeCoreConfig.tokens.every((t) => t.addressOrDenom &&
677477
+ crossAddresses.has(t.addressOrDenom.toLowerCase()) &&
677478
+ t.standard &&
677479
+ _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_9__/* .TOKEN_CROSS_COLLATERAL_STANDARDS */ .kK.has(t.standard))) {
677480
+ constituentRouteIds.push(routeId);
677481
+ }
677482
+ }
677483
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)(constituentRouteIds.length > 0, `No deploy config found for "${warpRouteId}" and no constituent routes could be identified. ` +
677484
+ `Ensure constituent routes have deploy configs in the registry.`);
677485
+ const combinedResult = {
677486
+ isValid: true,
677487
+ violations: [],
677488
+ diff: {},
677489
+ scaleViolations: [],
677490
+ };
677491
+ for (const constituentId of constituentRouteIds) {
677492
+ const constituentCoreConfig = allRoutes[constituentId];
677493
+ const constituentDeployConfig = await (0,_config_warp_js__WEBPACK_IMPORTED_MODULE_1__/* .readWarpRouteDeployConfig */ .Pr)({
677494
+ context,
677495
+ warpRouteId: constituentId,
677496
+ });
677497
+ const result = await (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_10__/* .checkWarpRouteDeployConfig */ .TU)({
677498
+ multiProvider: context.multiProvider,
677499
+ warpCoreConfig: constituentCoreConfig,
677500
+ warpDeployConfig: constituentDeployConfig,
677501
+ });
677502
+ combinedResult.isValid = combinedResult.isValid && result.isValid;
677503
+ combinedResult.violations.push(...result.violations);
677504
+ combinedResult.scaleViolations.push(...result.scaleViolations);
677505
+ for (const [chain, diff] of Object.entries(result.diff)) {
677506
+ combinedResult.diff[`${constituentId}/${chain}`] = diff;
677507
+ }
677508
+ }
677509
+ return combinedResult;
677454
677510
  }
677455
677511
  //# sourceMappingURL=warp.js.map
677456
677512
  __webpack_async_result__();
@@ -679813,6 +679869,19 @@ const check = {
679813
679869
  },
679814
679870
  handler: async ({ context, warpRouteId, ica, origin, originOwner, chains, }) => {
679815
679871
  (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .logCommandHeader */ .dp)('Hyperlane Warp Check');
679872
+ // CROSS route case: resolver set warpCoreConfig but not warpDeployConfig
679873
+ // (combined CROSS routes have no deploy config of their own)
679874
+ if (context.warpCoreConfig && !context.warpDeployConfig) {
679875
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_17__/* .assert */ .v)(!ica, 'Cannot perform ICA owner check for combined CROSS routes (no deploy config)');
679876
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_17__/* .assert */ .v)(context.resolvedWarpRouteId, 'resolvedWarpRouteId must be set for CROSS routes');
679877
+ const result = await (0,_check_warp_js__WEBPACK_IMPORTED_MODULE_3__/* .checkCrossCollateralWarpRoute */ .l$)({
679878
+ context,
679879
+ warpCoreConfig: context.warpCoreConfig,
679880
+ warpRouteId: context.resolvedWarpRouteId,
679881
+ });
679882
+ await (0,_check_warp_js__WEBPACK_IMPORTED_MODULE_3__/* .runWarpRouteCheck */ .xr)({ result });
679883
+ process.exit(0);
679884
+ }
679816
679885
  let { warpCoreConfig, warpDeployConfig } = await getWarpConfigsFromContextOrRegistry({
679817
679886
  context,
679818
679887
  warpRouteId,
@@ -679821,7 +679890,7 @@ const check = {
679821
679890
  // Note: ICA check uses full warpDeployConfig (not filtered) to support pre-deployed chains
679822
679891
  if (ica) {
679823
679892
  (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_17__/* .assert */ .v)(origin, '--origin is required when using --ica');
679824
- await (0,_check_warp_js__WEBPACK_IMPORTED_MODULE_3__/* .runWarpIcaOwnerCheck */ .W)({
679893
+ await (0,_check_warp_js__WEBPACK_IMPORTED_MODULE_3__/* .runWarpIcaOwnerCheck */ .WN)({
679825
679894
  context,
679826
679895
  warpDeployConfig,
679827
679896
  origin,
@@ -679836,7 +679905,7 @@ const check = {
679836
679905
  warpCoreConfig,
679837
679906
  warpDeployConfig,
679838
679907
  });
679839
- await (0,_check_warp_js__WEBPACK_IMPORTED_MODULE_3__/* .runWarpRouteCheck */ .x)({
679908
+ await (0,_check_warp_js__WEBPACK_IMPORTED_MODULE_3__/* .runWarpRouteCheck */ .xr)({
679840
679909
  result,
679841
679910
  });
679842
679911
  process.exit(0);
@@ -682272,17 +682341,18 @@ __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependen
682272
682341
  /* harmony export */ });
682273
682342
  /* unused harmony export getSubmitterChains */
682274
682343
  /* harmony import */ var _hyperlane_xyz_rebalancer__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(97772);
682275
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_11__ = __nccwpck_require__(74670);
682276
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_12__ = __nccwpck_require__(6643);
682277
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_13__ = __nccwpck_require__(59138);
682344
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_9__ = __nccwpck_require__(95778);
682345
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_12__ = __nccwpck_require__(74670);
682346
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_13__ = __nccwpck_require__(6643);
682347
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_14__ = __nccwpck_require__(59138);
682278
682348
  /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__ = __nccwpck_require__(21387);
682279
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_10__ = __nccwpck_require__(16639);
682349
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_11__ = __nccwpck_require__(16639);
682280
682350
  /* harmony import */ var _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(29781);
682281
682351
  /* harmony import */ var _config_core_js__WEBPACK_IMPORTED_MODULE_2__ = __nccwpck_require__(36789);
682282
682352
  /* harmony import */ var _config_submit_js__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(21106);
682283
682353
  /* harmony import */ var _deploy_warp_js__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(41687);
682284
682354
  /* harmony import */ var _utils_chains_js__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(80881);
682285
- /* harmony import */ var _utils_warp_send_js__WEBPACK_IMPORTED_MODULE_9__ = __nccwpck_require__(96192);
682355
+ /* harmony import */ var _utils_warp_send_js__WEBPACK_IMPORTED_MODULE_10__ = __nccwpck_require__(96192);
682286
682356
  /* harmony import */ var _utils_warp_js__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(85361);
682287
682357
  /* harmony import */ var _apiKeys_js__WEBPACK_IMPORTED_MODULE_7__ = __nccwpck_require__(95433);
682288
682358
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_hyperlane_xyz_rebalancer__WEBPACK_IMPORTED_MODULE_0__, _config_core_js__WEBPACK_IMPORTED_MODULE_2__, _config_submit_js__WEBPACK_IMPORTED_MODULE_3__, _deploy_warp_js__WEBPACK_IMPORTED_MODULE_4__, _utils_chains_js__WEBPACK_IMPORTED_MODULE_5__, _utils_warp_js__WEBPACK_IMPORTED_MODULE_6__, _apiKeys_js__WEBPACK_IMPORTED_MODULE_7__]);
@@ -682319,8 +682389,9 @@ async function resolveChains(argv) {
682319
682389
  case _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__/* .CommandType */ .g4.WARP_READ:
682320
682390
  return resolveWarpReadChains(argv);
682321
682391
  case _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__/* .CommandType */ .g4.WARP_APPLY:
682322
- case _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__/* .CommandType */ .g4.WARP_CHECK:
682323
682392
  return resolveWarpConfigChains(argv);
682393
+ case _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__/* .CommandType */ .g4.WARP_CHECK:
682394
+ return resolveWarpCheckChains(argv);
682324
682395
  case _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__/* .CommandType */ .g4.WARP_REBALANCER:
682325
682396
  return resolveWarpRebalancerChains(argv);
682326
682397
  case _commands_signCommands_js__WEBPACK_IMPORTED_MODULE_1__/* .CommandType */ .g4.SUBMIT:
@@ -682383,6 +682454,29 @@ async function resolveWarpConfigChains(argv) {
682383
682454
  (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__/* .assert */ .v)(argv.context.chains.length !== 0, 'No chains found in warp route deployment config');
682384
682455
  return argv.context.chains;
682385
682456
  }
682457
+ async function resolveWarpCheckChains(argv) {
682458
+ const context = argv.context;
682459
+ const resolvedId = await (0,_utils_warp_js__WEBPACK_IMPORTED_MODULE_6__/* .resolveWarpRouteId */ .NV)({
682460
+ context,
682461
+ warpRouteId: argv.warpRouteId,
682462
+ });
682463
+ const rawDeployConfig = await context.registry.getWarpDeployConfig(resolvedId);
682464
+ if (!rawDeployConfig) {
682465
+ // CROSS route: no deploy config, get chains from core config
682466
+ const warpCoreConfigRaw = await context.registry.getWarpRoute(resolvedId);
682467
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__/* .assert */ .v)(warpCoreConfigRaw, `No warp route config found for "${resolvedId}"`);
682468
+ const warpCoreConfig = _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_9__/* .WarpCoreConfigSchema */ .$.parse(warpCoreConfigRaw);
682469
+ const uniqueChains = [
682470
+ ...new Set(warpCoreConfig.tokens.map((t) => t.chainName)),
682471
+ ];
682472
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__/* .assert */ .v)(uniqueChains.length > 0, `No chains found for warp route "${resolvedId}"`);
682473
+ context.warpCoreConfig = warpCoreConfig;
682474
+ context.resolvedWarpRouteId = resolvedId;
682475
+ context.chains = uniqueChains;
682476
+ return uniqueChains;
682477
+ }
682478
+ return resolveWarpConfigChains(argv);
682479
+ }
682386
682480
  async function resolveWarpSendChains(argv) {
682387
682481
  const { multiProvider } = argv.context;
682388
682482
  const chainPath = [];
@@ -682401,7 +682495,7 @@ async function resolveWarpSendChains(argv) {
682401
682495
  });
682402
682496
  argv.context.warpCoreConfig = warpCoreConfig;
682403
682497
  const supportedChains = warpCoreConfig.tokens.map((token) => token.chainName);
682404
- chainPath.push(...(0,_utils_warp_send_js__WEBPACK_IMPORTED_MODULE_9__/* .getOrderedWarpSendChains */ .M)(supportedChains, multiProvider));
682498
+ chainPath.push(...(0,_utils_warp_send_js__WEBPACK_IMPORTED_MODULE_10__/* .getOrderedWarpSendChains */ .M)(supportedChains, multiProvider));
682405
682499
  }
682406
682500
  // Cache warpCoreConfig on context so the handler doesn't re-fetch it.
682407
682501
  // This ensures signers and execution use the same resolved config.
@@ -682430,7 +682524,7 @@ async function resolveWarpSendChains(argv) {
682430
682524
  if (!normalizedRecipient || argv.relay) {
682431
682525
  for (let i = 1; i < chainPath.length; i += 1) {
682432
682526
  const destination = chainPath[i];
682433
- if ((0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_10__/* .isEVMLike */ .Us)(multiProvider.getProtocol(destination))) {
682527
+ if ((0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_11__/* .isEVMLike */ .Us)(multiProvider.getProtocol(destination))) {
682434
682528
  signerChains.add(destination);
682435
682529
  }
682436
682530
  }
@@ -682456,7 +682550,7 @@ async function resolveSendMessageChains(argv) {
682456
682550
  const { multiProvider } = argv.context;
682457
682551
  const selectedChains = [argv.origin, argv.destination].filter(Boolean);
682458
682552
  if (selectedChains.length > 0) {
682459
- const nonEvmChains = selectedChains.filter((chain) => !(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_10__/* .isEVMLike */ .Us)(multiProvider.getProtocol(chain)));
682553
+ const nonEvmChains = selectedChains.filter((chain) => !(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_11__/* .isEVMLike */ .Us)(multiProvider.getProtocol(chain)));
682460
682554
  if (nonEvmChains.length > 0) {
682461
682555
  const chainDetails = nonEvmChains
682462
682556
  .map((chain) => `'${chain}' (${multiProvider.getProtocol(chain)})`)
@@ -682493,7 +682587,7 @@ async function resolveRelayerChains(argv) {
682493
682587
  // If no destination is specified, return all EVM chains only
682494
682588
  if (!argv.destination) {
682495
682589
  const chains = Object.keys((0,_utils_chains_js__WEBPACK_IMPORTED_MODULE_5__/* .filterOutDisabledChains */ .zC)(chainMetadata));
682496
- return chains.filter((chain) => (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_10__/* .isEVMLike */ .Us)(multiProvider.getProtocol(chain)));
682590
+ return chains.filter((chain) => (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_11__/* .isEVMLike */ .Us)(multiProvider.getProtocol(chain)));
682497
682591
  }
682498
682592
  chains.add(argv.destination);
682499
682593
  return Array.from(chains);
@@ -682505,12 +682599,12 @@ async function resolveCoreApplyChains(argv) {
682505
682599
  return [argv.chain];
682506
682600
  }
682507
682601
  const addresses = await argv.context.registry.getChainAddresses(argv.chain);
682508
- const coreAddresses = _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_11__/* .DeployedCoreAddressesSchema */ .Vd.parse(addresses);
682602
+ const coreAddresses = _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_12__/* .DeployedCoreAddressesSchema */ .Vd.parse(addresses);
682509
682603
  const protocolType = argv.context.multiProvider.getProtocol(argv.chain);
682510
682604
  switch (protocolType) {
682511
- case _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_10__/* .ProtocolType */ .Hb.Tron:
682512
- case _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_10__/* .ProtocolType */ .Hb.Ethereum: {
682513
- const evmCoreModule = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_12__/* .EvmCoreModule */ .a(argv.context.multiProvider, {
682605
+ case _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_11__/* .ProtocolType */ .Hb.Tron:
682606
+ case _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_11__/* .ProtocolType */ .Hb.Ethereum: {
682607
+ const evmCoreModule = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_13__/* .EvmCoreModule */ .a(argv.context.multiProvider, {
682514
682608
  chain: argv.chain,
682515
682609
  config,
682516
682610
  addresses: coreAddresses,
@@ -682591,13 +682685,13 @@ async function resolveSubmitChains(argv) {
682591
682685
  // Recursively extracts all chain names referenced by a submitter (e.g. ICA origin, destination, nested submitters).
682592
682686
  function getSubmitterChains(submitter) {
682593
682687
  const chains = submitter.chain ? [submitter.chain] : [];
682594
- if (submitter.type === _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_13__/* .TxSubmitterType */ .u.INTERCHAIN_ACCOUNT) {
682688
+ if (submitter.type === _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_14__/* .TxSubmitterType */ .u.INTERCHAIN_ACCOUNT) {
682595
682689
  if (submitter.destinationChain)
682596
682690
  chains.push(submitter.destinationChain);
682597
682691
  if (submitter.internalSubmitter)
682598
682692
  chains.push(...getSubmitterChains(submitter.internalSubmitter));
682599
682693
  }
682600
- else if (submitter.type === _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_13__/* .TxSubmitterType */ .u.TIMELOCK_CONTROLLER) {
682694
+ else if (submitter.type === _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_14__/* .TxSubmitterType */ .u.TIMELOCK_CONTROLLER) {
682601
682695
  if (submitter.proposerSubmitter)
682602
682696
  chains.push(...getSubmitterChains(submitter.proposerSubmitter));
682603
682697
  }
@@ -683448,7 +683542,7 @@ __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependen
683448
683542
  /* harmony import */ var yaml__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(10684);
683449
683543
  /* harmony import */ var _hyperlane_xyz_core_buildArtifact_js__WEBPACK_IMPORTED_MODULE_2__ = __nccwpck_require__(74119);
683450
683544
  /* harmony import */ var _hyperlane_xyz_deploy_sdk__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(56854);
683451
- /* harmony import */ var _hyperlane_xyz_deploy_sdk_AltVMFileSubmitter__WEBPACK_IMPORTED_MODULE_36__ = __nccwpck_require__(49988);
683545
+ /* harmony import */ var _hyperlane_xyz_deploy_sdk_AltVMFileSubmitter__WEBPACK_IMPORTED_MODULE_37__ = __nccwpck_require__(49988);
683452
683546
  /* harmony import */ var _hyperlane_xyz_provider_sdk__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(92201);
683453
683547
  /* harmony import */ var _hyperlane_xyz_provider_sdk_artifact__WEBPACK_IMPORTED_MODULE_5__ = __nccwpck_require__(4287);
683454
683548
  /* harmony import */ var _hyperlane_xyz_provider_sdk_warp__WEBPACK_IMPORTED_MODULE_6__ = __nccwpck_require__(17791);
@@ -683459,22 +683553,23 @@ __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependen
683459
683553
  /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_23__ = __nccwpck_require__(38466);
683460
683554
  /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_24__ = __nccwpck_require__(95778);
683461
683555
  /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_25__ = __nccwpck_require__(63776);
683462
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_26__ = __nccwpck_require__(93035);
683463
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_27__ = __nccwpck_require__(76939);
683464
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_28__ = __nccwpck_require__(26492);
683465
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_30__ = __nccwpck_require__(48807);
683466
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_31__ = __nccwpck_require__(764);
683467
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_32__ = __nccwpck_require__(22887);
683468
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__ = __nccwpck_require__(69352);
683469
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_35__ = __nccwpck_require__(59138);
683470
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_37__ = __nccwpck_require__(74694);
683471
- /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_38__ = __nccwpck_require__(27043);
683556
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_27__ = __nccwpck_require__(93035);
683557
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_28__ = __nccwpck_require__(76939);
683558
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_29__ = __nccwpck_require__(26492);
683559
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_31__ = __nccwpck_require__(48807);
683560
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_32__ = __nccwpck_require__(764);
683561
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__ = __nccwpck_require__(22887);
683562
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__ = __nccwpck_require__(69352);
683563
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_36__ = __nccwpck_require__(59138);
683564
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_38__ = __nccwpck_require__(74694);
683565
+ /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_39__ = __nccwpck_require__(27043);
683472
683566
  /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_15__ = __nccwpck_require__(16639);
683473
683567
  /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_18__ = __nccwpck_require__(14918);
683474
683568
  /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_19__ = __nccwpck_require__(73938);
683475
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__ = __nccwpck_require__(21387);
683476
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_34__ = __nccwpck_require__(94523);
683477
- /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_39__ = __nccwpck_require__(93142);
683569
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_26__ = __nccwpck_require__(18508);
683570
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__ = __nccwpck_require__(21387);
683571
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_35__ = __nccwpck_require__(94523);
683572
+ /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_40__ = __nccwpck_require__(93142);
683478
683573
  /* harmony import */ var _context_apiKeys_js__WEBPACK_IMPORTED_MODULE_7__ = __nccwpck_require__(95433);
683479
683574
  /* harmony import */ var _logger_js__WEBPACK_IMPORTED_MODULE_16__ = __nccwpck_require__(54321);
683480
683575
  /* harmony import */ var _send_transfer_js__WEBPACK_IMPORTED_MODULE_8__ = __nccwpck_require__(67793);
@@ -683484,8 +683579,8 @@ __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependen
683484
683579
  /* harmony import */ var _utils_relay_js__WEBPACK_IMPORTED_MODULE_12__ = __nccwpck_require__(92941);
683485
683580
  /* harmony import */ var _configValidation_js__WEBPACK_IMPORTED_MODULE_13__ = __nccwpck_require__(34804);
683486
683581
  /* harmony import */ var _utils_js__WEBPACK_IMPORTED_MODULE_14__ = __nccwpck_require__(62356);
683487
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_context_apiKeys_js__WEBPACK_IMPORTED_MODULE_7__, _send_transfer_js__WEBPACK_IMPORTED_MODULE_8__, _submitters_EV5FileSubmitter_js__WEBPACK_IMPORTED_MODULE_9__, _submitters_types_js__WEBPACK_IMPORTED_MODULE_10__, _utils_relay_js__WEBPACK_IMPORTED_MODULE_12__, _configValidation_js__WEBPACK_IMPORTED_MODULE_13__, _utils_js__WEBPACK_IMPORTED_MODULE_14__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_17__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_30__]);
683488
- ([_context_apiKeys_js__WEBPACK_IMPORTED_MODULE_7__, _send_transfer_js__WEBPACK_IMPORTED_MODULE_8__, _submitters_EV5FileSubmitter_js__WEBPACK_IMPORTED_MODULE_9__, _submitters_types_js__WEBPACK_IMPORTED_MODULE_10__, _utils_relay_js__WEBPACK_IMPORTED_MODULE_12__, _configValidation_js__WEBPACK_IMPORTED_MODULE_13__, _utils_js__WEBPACK_IMPORTED_MODULE_14__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_17__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_30__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
683582
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_context_apiKeys_js__WEBPACK_IMPORTED_MODULE_7__, _send_transfer_js__WEBPACK_IMPORTED_MODULE_8__, _submitters_EV5FileSubmitter_js__WEBPACK_IMPORTED_MODULE_9__, _submitters_types_js__WEBPACK_IMPORTED_MODULE_10__, _utils_relay_js__WEBPACK_IMPORTED_MODULE_12__, _configValidation_js__WEBPACK_IMPORTED_MODULE_13__, _utils_js__WEBPACK_IMPORTED_MODULE_14__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_17__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_31__]);
683583
+ ([_context_apiKeys_js__WEBPACK_IMPORTED_MODULE_7__, _send_transfer_js__WEBPACK_IMPORTED_MODULE_8__, _submitters_EV5FileSubmitter_js__WEBPACK_IMPORTED_MODULE_9__, _submitters_types_js__WEBPACK_IMPORTED_MODULE_10__, _utils_relay_js__WEBPACK_IMPORTED_MODULE_12__, _configValidation_js__WEBPACK_IMPORTED_MODULE_13__, _utils_js__WEBPACK_IMPORTED_MODULE_14__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_17__, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_31__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
683489
683584
 
683490
683585
 
683491
683586
 
@@ -683780,7 +683875,7 @@ async function extendWarpRoute(params, apiKeys, warpCoreConfig) {
683780
683875
  newDeployedContracts = { ...newDeployedContracts, ...contracts };
683781
683876
  }
683782
683877
  for (const [chain, error] of rejected) {
683783
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .errorRed */ .aq)(`Failed to deploy extension to ${chain}: ${error.message}`);
683878
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .errorRed */ .aq)(`Failed to deploy extension to ${chain}: ${(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_26__/* .formatError */ .Wk)(error)}`);
683784
683879
  allRejected.set(chain, error);
683785
683880
  }
683786
683881
  }
@@ -683791,9 +683886,8 @@ async function extendWarpRoute(params, apiKeys, warpCoreConfig) {
683791
683886
  newDeployedContracts = { ...newDeployedContracts, ...contracts };
683792
683887
  }
683793
683888
  catch (error) {
683794
- const message = error instanceof Error ? error.message : String(error);
683795
- (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .errorRed */ .aq)(`Failed to deploy extension to ${chain}: ${message}`);
683796
- allRejected.set(chain, error instanceof Error ? error : new Error(message));
683889
+ (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .errorRed */ .aq)(`Failed to deploy extension to ${chain}: ${(0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_26__/* .formatError */ .Wk)(error)}`);
683890
+ allRejected.set(chain, error instanceof Error ? error : new Error(String(error)));
683797
683891
  }
683798
683892
  }
683799
683893
  if (Object.keys(newDeployedContracts).length === 0 && allRejected.size > 0) {
@@ -683837,8 +683931,8 @@ async function updateExistingWarpRoute(params, apiKeys, warpDeployConfig, warpCo
683837
683931
  (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .logBlue */ .RK)('Updating deployed Warp Routes');
683838
683932
  const { multiProvider, altVmSigners, registry } = params.context;
683839
683933
  const registryAddresses = (await registry.getAddresses());
683840
- const ccipContractCache = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_26__/* .CCIPContractCache */ .G5(registryAddresses);
683841
- const contractVerifier = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_27__/* .ContractVerifier */ .j(multiProvider, apiKeys, _hyperlane_xyz_core_buildArtifact_js__WEBPACK_IMPORTED_MODULE_2__/* .buildArtifact */ .L, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_28__/* .ExplorerLicenseType */ .p8.MIT);
683934
+ const ccipContractCache = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_27__/* .CCIPContractCache */ .G5(registryAddresses);
683935
+ const contractVerifier = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_28__/* .ContractVerifier */ .j(multiProvider, apiKeys, _hyperlane_xyz_core_buildArtifact_js__WEBPACK_IMPORTED_MODULE_2__/* .buildArtifact */ .L, _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_29__/* .ExplorerLicenseType */ .p8.MIT);
683842
683936
  const updateTransactions = {};
683843
683937
  // Get all deployed router addresses
683844
683938
  const deployedRoutersAddresses = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_25__/* .getRouterAddressesFromWarpCoreConfig */ .Ji)(warpCoreConfig);
@@ -683855,7 +683949,7 @@ async function updateExistingWarpRoute(params, apiKeys, warpDeployConfig, warpCo
683855
683949
  return;
683856
683950
  }
683857
683951
  const deployedTokenRoute = deployedRoutersAddresses[chain];
683858
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(deployedTokenRoute, `Missing artifacts for ${chain}.`);
683952
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(deployedTokenRoute, `Missing artifacts for ${chain}.`);
683859
683953
  const configWithMailbox = {
683860
683954
  ...config,
683861
683955
  mailbox: registryAddresses[chain].mailbox,
@@ -683863,12 +683957,12 @@ async function updateExistingWarpRoute(params, apiKeys, warpDeployConfig, warpCo
683863
683957
  switch (protocolType) {
683864
683958
  case _hyperlane_xyz_provider_sdk__WEBPACK_IMPORTED_MODULE_4__/* .ProtocolType */ .Hb.Tron:
683865
683959
  case _hyperlane_xyz_provider_sdk__WEBPACK_IMPORTED_MODULE_4__/* .ProtocolType */ .Hb.Ethereum: {
683866
- const evmERC20WarpModule = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_30__/* .EvmWarpModule */ .N(multiProvider, {
683960
+ const evmERC20WarpModule = new _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_31__/* .EvmWarpModule */ .N(multiProvider, {
683867
683961
  config: configWithMailbox,
683868
683962
  chain,
683869
683963
  addresses: {
683870
683964
  deployedTokenRoute,
683871
- ...(0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_31__/* .extractIsmAndHookFactoryAddresses */ .zs)(registryAddresses[chain]),
683965
+ ...(0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_32__/* .extractIsmAndHookFactoryAddresses */ .zs)(registryAddresses[chain]),
683872
683966
  },
683873
683967
  }, ccipContractCache, contractVerifier);
683874
683968
  const transactions = await evmERC20WarpModule.update(configWithMailbox);
@@ -683878,7 +683972,7 @@ async function updateExistingWarpRoute(params, apiKeys, warpDeployConfig, warpCo
683878
683972
  default: {
683879
683973
  const signer = (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_19__/* .mustGet */ .Qd)(altVmSigners, chain);
683880
683974
  const validatedConfig = (0,_configValidation_js__WEBPACK_IMPORTED_MODULE_13__/* .validateWarpConfigForAltVM */ .u)(configWithMailbox, chain);
683881
- const chainLookup = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_32__/* .altVmChainLookup */ .O)(multiProvider);
683975
+ const chainLookup = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .altVmChainLookup */ .O)(multiProvider);
683882
683976
  const chainMetadata = chainLookup.getChainMetadata(chain);
683883
683977
  const writer = (0,_hyperlane_xyz_deploy_sdk__WEBPACK_IMPORTED_MODULE_3__/* .createWarpTokenWriter */ .l5)(chainMetadata, chainLookup, signer);
683884
683978
  const artifact = (0,_hyperlane_xyz_provider_sdk_warp__WEBPACK_IMPORTED_MODULE_6__/* .warpConfigToArtifact */ .ku)(validatedConfig, chainLookup);
@@ -683971,7 +684065,7 @@ function transformDeployConfigForDisplay(deployConfig) {
683971
684065
  function transformIsmConfigForDisplay(ismConfig) {
683972
684066
  const ismConfigs = [];
683973
684067
  switch (ismConfig.type) {
683974
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.AGGREGATION:
684068
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.AGGREGATION:
683975
684069
  ismConfigs.push({
683976
684070
  Type: ismConfig.type,
683977
684071
  Threshold: ismConfig.threshold,
@@ -683981,7 +684075,7 @@ function transformIsmConfigForDisplay(ismConfig) {
683981
684075
  ismConfigs.push(...transformIsmConfigForDisplay(module));
683982
684076
  });
683983
684077
  return ismConfigs;
683984
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.ROUTING:
684078
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.ROUTING:
683985
684079
  return [
683986
684080
  {
683987
684081
  Type: ismConfig.type,
@@ -683990,7 +684084,7 @@ function transformIsmConfigForDisplay(ismConfig) {
683990
684084
  Domains: 'See warp config for domain specification.',
683991
684085
  },
683992
684086
  ];
683993
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.FALLBACK_ROUTING:
684087
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.FALLBACK_ROUTING:
683994
684088
  return [
683995
684089
  {
683996
684090
  Type: ismConfig.type,
@@ -683999,7 +684093,7 @@ function transformIsmConfigForDisplay(ismConfig) {
683999
684093
  Domains: 'See warp config for domain specification.',
684000
684094
  },
684001
684095
  ];
684002
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.MERKLE_ROOT_MULTISIG:
684096
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.MERKLE_ROOT_MULTISIG:
684003
684097
  return [
684004
684098
  {
684005
684099
  Type: ismConfig.type,
@@ -684007,7 +684101,7 @@ function transformIsmConfigForDisplay(ismConfig) {
684007
684101
  Threshold: ismConfig.threshold,
684008
684102
  },
684009
684103
  ];
684010
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.MESSAGE_ID_MULTISIG:
684104
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.MESSAGE_ID_MULTISIG:
684011
684105
  return [
684012
684106
  {
684013
684107
  Type: ismConfig.type,
@@ -684015,7 +684109,7 @@ function transformIsmConfigForDisplay(ismConfig) {
684015
684109
  Threshold: ismConfig.threshold,
684016
684110
  },
684017
684111
  ];
684018
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.OP_STACK:
684112
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.OP_STACK:
684019
684113
  return [
684020
684114
  {
684021
684115
  Type: ismConfig.type,
@@ -684023,7 +684117,7 @@ function transformIsmConfigForDisplay(ismConfig) {
684023
684117
  'Native Bridge': ismConfig.nativeBridge,
684024
684118
  },
684025
684119
  ];
684026
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.PAUSABLE:
684120
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.PAUSABLE:
684027
684121
  return [
684028
684122
  {
684029
684123
  Type: ismConfig.type,
@@ -684032,7 +684126,7 @@ function transformIsmConfigForDisplay(ismConfig) {
684032
684126
  'Owner Overrides': ismConfig.ownerOverrides ?? 'Undefined',
684033
684127
  },
684034
684128
  ];
684035
- case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_33__/* .IsmType */ .GO.TRUSTED_RELAYER:
684129
+ case _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_34__/* .IsmType */ .GO.TRUSTED_RELAYER:
684036
684130
  return [
684037
684131
  {
684038
684132
  Type: ismConfig.type,
@@ -684105,7 +684199,7 @@ async function submitWarpApplyTransactions(params, updateTransactions) {
684105
684199
  if (evmChains.length > 0) {
684106
684200
  const { rejected } = await (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_18__/* .mapAllSettled */ .bh)(evmChains, (chain) => submitChainTransactions(params, chain, updateTransactions[chain], isExtended(chain)), (chain) => chain);
684107
684201
  for (const [chain, error] of rejected) {
684108
- _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_34__/* .rootLogger */ .Jk.debug(`Error in submitWarpApplyTransactions for ${chain}`, error);
684202
+ _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_35__/* .rootLogger */ .Jk.debug(`Error in submitWarpApplyTransactions for ${chain}`, error);
684109
684203
  (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .errorRed */ .aq)(`Failed to submit warp apply transactions for ${chain}: ${error.message}`);
684110
684204
  failures.push(chain);
684111
684205
  }
@@ -684117,7 +684211,7 @@ async function submitWarpApplyTransactions(params, updateTransactions) {
684117
684211
  }
684118
684212
  catch (e) {
684119
684213
  const errorMessage = e instanceof Error ? e.message : String(e);
684120
- _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_34__/* .rootLogger */ .Jk.debug(`Error in submitWarpApplyTransactions for ${chain}`, e);
684214
+ _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_35__/* .rootLogger */ .Jk.debug(`Error in submitWarpApplyTransactions for ${chain}`, e);
684121
684215
  (0,_logger_js__WEBPACK_IMPORTED_MODULE_16__/* .errorRed */ .aq)(`Failed to submit warp apply transactions for ${chain}: ${errorMessage}`);
684122
684216
  failures.push(chain);
684123
684217
  }
@@ -684136,7 +684230,7 @@ async function getSubmitterByStrategy({ chain, context, strategyUrl, isExtendedC
684136
684230
  const defaultSubmitter = {
684137
684231
  submitter: {
684138
684232
  chain,
684139
- type: _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_35__/* .TxSubmitterType */ .u.JSON_RPC,
684233
+ type: _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_36__/* .TxSubmitterType */ .u.JSON_RPC,
684140
684234
  },
684141
684235
  };
684142
684236
  // if the requested chain is not defined in the config, transaction submission will crash
@@ -684167,12 +684261,12 @@ async function getSubmitterByStrategy({ chain, context, strategyUrl, isExtendedC
684167
684261
  });
684168
684262
  },
684169
684263
  [_submitters_types_js__WEBPACK_IMPORTED_MODULE_10__/* .CustomTxSubmitterType */ .pW.FILE]: (_multiProvider, metadata) => {
684170
- return new _hyperlane_xyz_deploy_sdk_AltVMFileSubmitter__WEBPACK_IMPORTED_MODULE_36__/* .AltVMFileSubmitter */ .U(signer, metadata);
684264
+ return new _hyperlane_xyz_deploy_sdk_AltVMFileSubmitter__WEBPACK_IMPORTED_MODULE_37__/* .AltVMFileSubmitter */ .U(signer, metadata);
684171
684265
  },
684172
684266
  };
684173
684267
  }
684174
684268
  return {
684175
- submitter: await (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_37__/* .getSubmitterBuilder */ .x)({
684269
+ submitter: await (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_38__/* .getSubmitterBuilder */ .x)({
684176
684270
  submissionStrategy: strategyToUse, // TODO: fix this
684177
684271
  multiProvider,
684178
684272
  coreAddressesByChain: await registry.getAddresses(),
@@ -684184,14 +684278,14 @@ async function getSubmitterByStrategy({ chain, context, strategyUrl, isExtendedC
684184
684278
  function formatScaleForLogs(scale) {
684185
684279
  if (!scale)
684186
684280
  return '1';
684187
- const normalizedScale = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_38__/* .normalizeScale */ .EM)(scale);
684281
+ const normalizedScale = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_39__/* .normalizeScale */ .EM)(scale);
684188
684282
  if (normalizedScale.denominator === 1n) {
684189
684283
  return normalizedScale.numerator.toString();
684190
684284
  }
684191
684285
  return `${normalizedScale.numerator}/${normalizedScale.denominator}`;
684192
684286
  }
684193
684287
  function getCanonicalWholeTokenRatio(token) {
684194
- const normalizedScale = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_38__/* .normalizeScale */ .EM)(token.scale);
684288
+ const normalizedScale = (0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_39__/* .normalizeScale */ .EM)(token.scale);
684195
684289
  const oneTokenBaseUnits = 10n ** BigInt(token.decimals);
684196
684290
  return {
684197
684291
  numerator: oneTokenBaseUnits * normalizedScale.numerator,
@@ -684203,9 +684297,9 @@ function assertCombineRoutesAreValid(routes) {
684203
684297
  const invalidDeployChains = Object.entries(route.deployConfig)
684204
684298
  .filter(([, chainConfig]) => !(0,_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_23__/* .isCrossCollateralTokenConfig */ .v3)(chainConfig))
684205
684299
  .map(([chain]) => chain);
684206
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(invalidDeployChains.length === 0, `Route "${route.id}" contains non-CrossCollateralRouter deploy configs for chain(s): ${invalidDeployChains.join(', ')}`);
684300
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(invalidDeployChains.length === 0, `Route "${route.id}" contains non-CrossCollateralRouter deploy configs for chain(s): ${invalidDeployChains.join(', ')}`);
684207
684301
  const invalidCoreTokens = route.coreConfig.tokens.filter((token) => !_hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_21__/* .TOKEN_CROSS_COLLATERAL_STANDARDS */ .kK.has(token.standard));
684208
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(invalidCoreTokens.length === 0, `Route "${route.id}" contains non-CrossCollateralRouter warp config token(s): ${invalidCoreTokens
684302
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(invalidCoreTokens.length === 0, `Route "${route.id}" contains non-CrossCollateralRouter warp config token(s): ${invalidCoreTokens
684209
684303
  .map((token) => `${token.chainName}:${token.addressOrDenom}`)
684210
684304
  .join(', ')}`);
684211
684305
  }
@@ -684226,7 +684320,7 @@ function assertCombineRoutesAreValid(routes) {
684226
684320
  const candidateRatio = getCanonicalWholeTokenRatio(candidate.token);
684227
684321
  const isCompatible = baseRatio.numerator * candidateRatio.denominator ===
684228
684322
  candidateRatio.numerator * baseRatio.denominator;
684229
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(isCompatible, `Incompatible decimals/scale on chain "${chainName}" between route "${base.routeId}" (${base.token.symbol}, decimals=${base.token.decimals}, scale=${formatScaleForLogs(base.token.scale)}) and route "${candidate.routeId}" (${candidate.token.symbol}, decimals=${candidate.token.decimals}, scale=${formatScaleForLogs(candidate.token.scale)}).`);
684323
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(isCompatible, `Incompatible decimals/scale on chain "${chainName}" between route "${base.routeId}" (${base.token.symbol}, decimals=${base.token.decimals}, scale=${formatScaleForLogs(base.token.scale)}) and route "${candidate.routeId}" (${candidate.token.symbol}, decimals=${candidate.token.decimals}, scale=${formatScaleForLogs(candidate.token.scale)}).`);
684230
684324
  }
684231
684325
  }
684232
684326
  }
@@ -684235,14 +684329,14 @@ function assertCombineRoutesAreValid(routes) {
684235
684329
  * each route's deploy config with cross-route crossCollateralRouters.
684236
684330
  */
684237
684331
  async function runWarpRouteCombine({ context, routeIds, outputWarpRouteId, }) {
684238
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(routeIds.length >= 2, 'At least 2 route IDs are required to combine');
684239
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(routeIds.every((id) => id.length > 0), 'Route IDs must be non-empty strings');
684240
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(new Set(routeIds).size === routeIds.length, 'Duplicate route IDs are not allowed');
684332
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(routeIds.length >= 2, 'At least 2 route IDs are required to combine');
684333
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(routeIds.every((id) => id.length > 0), 'Route IDs must be non-empty strings');
684334
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(new Set(routeIds).size === routeIds.length, 'Duplicate route IDs are not allowed');
684241
684335
  // 1. Read each route's WarpCoreConfig and deploy config
684242
684336
  const routes = [];
684243
684337
  for (const id of routeIds) {
684244
684338
  const coreConfig = await context.registry.getWarpRoute(id);
684245
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(coreConfig, `Warp route "${id}" not found in registry`);
684339
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(coreConfig, `Warp route "${id}" not found in registry`);
684246
684340
  const deployConfigRaw = await context.registry.getWarpDeployConfig(id);
684247
684341
  const deployConfig = _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_23__/* .WarpRouteDeployConfigSchema */ .Wl.parse(deployConfigRaw);
684248
684342
  routes.push({
@@ -684267,8 +684361,8 @@ async function runWarpRouteCombine({ context, routeIds, outputWarpRouteId, }) {
684267
684361
  const otherDomain = context.multiProvider
684268
684362
  .getDomainId(otherToken.chainName)
684269
684363
  .toString();
684270
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(otherToken.addressOrDenom, `CrossCollateralRouter token missing addressOrDenom on ${otherToken.chainName}`);
684271
- const otherRouter = (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_39__/* .addressToBytes32 */ .In)(otherToken.addressOrDenom);
684364
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(otherToken.addressOrDenom, `CrossCollateralRouter token missing addressOrDenom on ${otherToken.chainName}`);
684365
+ const otherRouter = (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_40__/* .addressToBytes32 */ .In)(otherToken.addressOrDenom);
684272
684366
  crossCollateralRouters[otherDomain] ??= new Set();
684273
684367
  crossCollateralRouters[otherDomain].add(otherRouter);
684274
684368
  }
@@ -684302,7 +684396,7 @@ async function runWarpRouteCombine({ context, routeIds, outputWarpRouteId, }) {
684302
684396
  for (const route of routes) {
684303
684397
  for (const token of route.coreConfig.tokens) {
684304
684398
  const key = `${token.chainName}:${token.addressOrDenom}`;
684305
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_29__/* .assert */ .v)(!seenTokens.has(key), `Duplicate token ${key} across input routes`);
684399
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_30__/* .assert */ .v)(!seenTokens.has(key), `Duplicate token ${key} across input routes`);
684306
684400
  seenTokens.add(key);
684307
684401
  mergedConfig.tokens.push({ ...token, connections: [] });
684308
684402
  }
@@ -693533,12 +693627,12 @@ function getOrderedWarpSendChains(chains, multiProvider) {
693533
693627
 
693534
693628
  __nccwpck_require__.a(__webpack_module__, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
693535
693629
  /* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
693630
+ /* harmony export */ NV: () => (/* binding */ resolveWarpRouteId),
693536
693631
  /* harmony export */ Rj: () => (/* binding */ getWarpRouteDeployConfig),
693537
693632
  /* harmony export */ Yb: () => (/* binding */ getWarpConfigs),
693538
693633
  /* harmony export */ ff: () => (/* binding */ getWarpCoreConfigOrExit),
693539
693634
  /* harmony export */ mg: () => (/* binding */ filterWarpConfigsToMatchingChains)
693540
693635
  /* harmony export */ });
693541
- /* unused harmony export resolveWarpRouteId */
693542
693636
  /* harmony import */ var _inquirer_search__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(89458);
693543
693637
  /* harmony import */ var _hyperlane_xyz_registry__WEBPACK_IMPORTED_MODULE_3__ = __nccwpck_require__(5692);
693544
693638
  /* harmony import */ var _hyperlane_xyz_sdk__WEBPACK_IMPORTED_MODULE_4__ = __nccwpck_require__(63776);
@@ -694097,7 +694191,7 @@ __webpack_async_result__();
694097
694191
  /* harmony export */ __nccwpck_require__.d(__webpack_exports__, {
694098
694192
  /* harmony export */ x: () => (/* binding */ VERSION)
694099
694193
  /* harmony export */ });
694100
- const VERSION = '33.1.0';
694194
+ const VERSION = '33.1.1';
694101
694195
  //# sourceMappingURL=version.js.map
694102
694196
 
694103
694197
  /***/ }),
@@ -751120,9 +751214,10 @@ const proxyFactoryImplementations = {
751120
751214
  /* harmony export */ Ey: () => (/* binding */ proxyAdmin),
751121
751215
  /* harmony export */ Pl: () => (/* binding */ proxyImplementation),
751122
751216
  /* harmony export */ SY: () => (/* binding */ proxyConstructorArgs),
751217
+ /* harmony export */ h$: () => (/* binding */ isStorageEmpty),
751123
751218
  /* harmony export */ ju: () => (/* binding */ isProxy)
751124
751219
  /* harmony export */ });
751125
- /* unused harmony exports isStorageEmpty, isProxyAdminFromBytecode */
751220
+ /* unused harmony export isProxyAdminFromBytecode */
751126
751221
  /* harmony import */ var ethers__WEBPACK_IMPORTED_MODULE_1__ = __nccwpck_require__(61934);
751127
751222
  /* harmony import */ var _hyperlane_xyz_core__WEBPACK_IMPORTED_MODULE_0__ = __nccwpck_require__(50653);
751128
751223
  /* harmony import */ var _hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_2__ = __nccwpck_require__(93142);
@@ -752566,10 +752661,12 @@ class EvmTokenFeeDeployer extends HyperlaneDeployer/* HyperlaneDeployer */.J {
752566
752661
  const feeAddresses = [];
752567
752662
  for (const [destinationChain, destinationConfig] of Object.entries(config.feeContracts)) {
752568
752663
  for (const [routerKey, routerFeeConfig] of Object.entries(destinationConfig)) {
752569
- const deployedFeeContract = await this.deployFee(chain, routerFeeConfig);
752664
+ const { address } = routerFeeConfig.type === fee_types/* TokenFeeType */.cA.OffchainQuotedLinearFee
752665
+ ? await this.deployOffchainQuotedLinearFee(chain, routerFeeConfig)
752666
+ : await this.deployFee(chain, routerFeeConfig);
752570
752667
  destinationDomains.push(this.multiProvider.getDomainId(destinationChain));
752571
752668
  routerKeys.push(routerKey);
752572
- feeAddresses.push(deployedFeeContract.address);
752669
+ feeAddresses.push(address);
752573
752670
  }
752574
752671
  }
752575
752672
  if (destinationDomains.length > 0) {
@@ -802689,8 +802786,30 @@ class EvmWarpRouteReader extends EvmRouterReader/* EvmRouterReader */.V {
802689
802786
  // Provider errors are expected because deriving will call methods that may not exist in the Bytecode
802690
802787
  this.setSmartProviderLogLevel('silent');
802691
802788
  try {
802789
+ // Fetch implementation bytecode once; scanning selectors locally avoids
802790
+ // reverted eth_calls for methods that don't exist on the contract.
802791
+ // Read the EIP-1967 impl slot directly so UUPS proxies (which have
802792
+ // an empty admin slot) are resolved correctly alongside TransparentProxy.
802793
+ // Wrapped in try/catch so EOAs / bad addresses don't throw here — bytecode
802794
+ // will be '0x' and the selector guard falls through to probes as pre-PR.
802795
+ let implAddress = warpRouteAddress;
802796
+ try {
802797
+ const impl = await (0,proxy/* proxyImplementation */.Pl)(this.provider, warpRouteAddress);
802798
+ if (!(0,addresses/* isZeroishAddress */.Hi)(impl))
802799
+ implAddress = impl;
802800
+ }
802801
+ catch {
802802
+ // not a proxy or address has no code — use warpRouteAddress directly
802803
+ }
802804
+ const bytecode = await this.provider.getCode(implAddress);
802692
802805
  // First, try checking token specific methods
802693
802806
  for (const [tokenType, { factory, method }] of Object.entries(contractTypes)) {
802807
+ // Skip if selector absent from bytecode — avoids reverted eth_calls.
802808
+ // When bytecode is unavailable ('0x'), fall through to the probe anyway
802809
+ // to preserve pre-optimization behavior on zero-impl / flaky-RPC paths.
802810
+ const selector = factory.createInterface().getSighash(method);
802811
+ if (!(0,proxy/* isStorageEmpty */.h$)(bytecode) && !bytecode.includes((0,addresses/* strip0x */.LL)(selector)))
802812
+ continue;
802694
802813
  try {
802695
802814
  const warpRoute = factory.connect(warpRouteAddress, this.provider);
802696
802815
  const result = await warpRoute[method]();
@@ -813595,6 +813714,15 @@ async function expandWarpDeployConfig(params) {
813595
813714
  function normalizeWarpDeployConfigForCheck(params) {
813596
813715
  const { multiProvider, warpDeployConfig } = params;
813597
813716
  return (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .objMap */ .Yp)(warpDeployConfig, (_chain, config) => {
813717
+ if ((0,_types_js__WEBPACK_IMPORTED_MODULE_9__/* .isDepositAddressTokenConfig */ .oA)(config)) {
813718
+ return {
813719
+ ...config,
813720
+ mailbox: ethers__WEBPACK_IMPORTED_MODULE_13__.constants.AddressZero,
813721
+ interchainSecurityModule: ethers__WEBPACK_IMPORTED_MODULE_13__.constants.AddressZero,
813722
+ remoteRouters: {},
813723
+ destinationGas: undefined,
813724
+ };
813725
+ }
813598
813726
  if (!(0,_types_js__WEBPACK_IMPORTED_MODULE_9__/* .isOftTokenConfig */ .vo)(config)) {
813599
813727
  return config;
813600
813728
  }
@@ -817762,8 +817890,8 @@ class WarpCore {
817762
817890
  sender,
817763
817891
  });
817764
817892
  }
817765
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)(!transferQuote.igpQuote.addressOrDenom ||
817766
- (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__/* .isZeroishAddress */ .Hi)(transferQuote.igpQuote.addressOrDenom), `CrossCollateralRouter transferRemoteTo requires native IGP fee; got ${transferQuote.igpQuote.addressOrDenom}`);
817893
+ const igpDenom = transferQuote.igpQuote.addressOrDenom;
817894
+ (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_4__/* .assert */ .v)(!igpDenom || (0,_hyperlane_xyz_utils__WEBPACK_IMPORTED_MODULE_8__/* .isZeroishAddress */ .Hi)(igpDenom) || igpDenom === 'lamport', `CrossCollateralRouter transferRemoteTo requires native IGP fee; got ${igpDenom}`);
817767
817895
  const tokenFeeAmount = transferQuote.tokenFeeQuote?.amount ?? 0n;
817768
817896
  const totalDebit = amount + tokenFeeAmount;
817769
817897
  const [isApproveRequired, isRevokeApprovalRequired] = await Promise.all([
@@ -905580,6 +905708,7 @@ function intersection(a, b) {
905580
905708
  /* harmony export */ Nw: () => (/* binding */ errorToString),
905581
905709
  /* harmony export */ Sn: () => (/* binding */ toTitleCase),
905582
905710
  /* harmony export */ U5: () => (/* binding */ toHexString),
905711
+ /* harmony export */ Wk: () => (/* binding */ formatError),
905583
905712
  /* harmony export */ jP: () => (/* binding */ streamToString),
905584
905713
  /* harmony export */ xJ: () => (/* binding */ fromHexString)
905585
905714
  /* harmony export */ });
@@ -905631,6 +905760,28 @@ function errorToString(error, maxLength = 300) {
905631
905760
  return trimToLength(details, maxLength);
905632
905761
  return trimToLength(JSON.stringify(details), maxLength);
905633
905762
  }
905763
+ function isErrorWithContext(e) {
905764
+ return e instanceof Error && 'context' in e;
905765
+ }
905766
+ /**
905767
+ * Formats an error for display, including the cause chain and any Solana
905768
+ * program logs attached to preflight failure errors.
905769
+ */
905770
+ function formatError(error, depth = 0) {
905771
+ if (!(error instanceof Error))
905772
+ return String(error);
905773
+ const parts = [error.message];
905774
+ // SolanaError preflight failures attach { logs, unitsConsumed, ... } to context
905775
+ if (isErrorWithContext(error) &&
905776
+ Array.isArray(error.context?.logs) &&
905777
+ error.context.logs.length > 0) {
905778
+ parts.push(`Logs:\n ${error.context.logs.join('\n ')}`);
905779
+ }
905780
+ if (error.cause != null && depth < 10) {
905781
+ parts.push(`Caused by: ${formatError(error.cause, depth + 1)}`);
905782
+ }
905783
+ return parts.join('\n');
905784
+ }
905634
905785
  const fromHexString = (hexstr) => Buffer.from((0,_addresses_js__WEBPACK_IMPORTED_MODULE_0__/* .strip0x */ .LL)(hexstr), 'hex');
905635
905786
  const toHexString = (buf) => (0,_addresses_js__WEBPACK_IMPORTED_MODULE_0__/* .ensure0x */ .Ho)(buf.toString('hex'));
905636
905787
  //# sourceMappingURL=strings.js.map
@@ -906530,7 +906681,7 @@ module.exports = /*#__PURE__*/JSON.parse('[{"type":"function","name":"proveL2Lea
906530
906681
  /***/ 99468:
906531
906682
  /***/ ((module) => {
906532
906683
 
906533
- module.exports = {"rE":"33.1.0"};
906684
+ module.exports = {"rE":"33.1.1"};
906534
906685
 
906535
906686
  /***/ })
906536
906687
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyperlane-xyz/cli",
3
- "version": "33.1.0",
3
+ "version": "33.1.1",
4
4
  "description": "A command-line utility for common Hyperlane operations",
5
5
  "keywords": [
6
6
  "CLI",
@@ -74,21 +74,21 @@
74
74
  "zod": "^3.21.2",
75
75
  "zod-validation-error": "^3.3.0",
76
76
  "zx": "^8.1.4",
77
- "@hyperlane-xyz/aleo-sdk": "33.1.0",
77
+ "@hyperlane-xyz/aleo-sdk": "33.1.1",
78
+ "@hyperlane-xyz/cosmos-sdk": "33.1.1",
79
+ "@hyperlane-xyz/deploy-sdk": "6.0.1",
78
80
  "@hyperlane-xyz/core": "11.3.1",
79
- "@hyperlane-xyz/cosmos-sdk": "33.1.0",
80
- "@hyperlane-xyz/http-registry-server": "33.1.0",
81
- "@hyperlane-xyz/provider-sdk": "6.0.0",
82
- "@hyperlane-xyz/deploy-sdk": "6.0.0",
83
- "@hyperlane-xyz/radix-sdk": "33.1.0",
84
- "@hyperlane-xyz/rebalancer": "27.3.0",
85
- "@hyperlane-xyz/sdk": "33.1.0",
86
- "@hyperlane-xyz/relayer": "1.1.28",
87
- "@hyperlane-xyz/sealevel-sdk": "33.1.0",
88
- "@hyperlane-xyz/starknet-sdk": "28.0.5",
89
- "@hyperlane-xyz/tron-sdk": "23.0.5",
90
- "@hyperlane-xyz/tsconfig": "^33.1.0",
91
- "@hyperlane-xyz/utils": "33.1.0"
81
+ "@hyperlane-xyz/http-registry-server": "33.1.1",
82
+ "@hyperlane-xyz/provider-sdk": "6.0.1",
83
+ "@hyperlane-xyz/radix-sdk": "33.1.1",
84
+ "@hyperlane-xyz/rebalancer": "27.3.1",
85
+ "@hyperlane-xyz/relayer": "1.1.29",
86
+ "@hyperlane-xyz/sdk": "33.1.1",
87
+ "@hyperlane-xyz/sealevel-sdk": "33.1.1",
88
+ "@hyperlane-xyz/starknet-sdk": "28.0.6",
89
+ "@hyperlane-xyz/tsconfig": "^33.1.1",
90
+ "@hyperlane-xyz/tron-sdk": "23.0.6",
91
+ "@hyperlane-xyz/utils": "33.1.1"
92
92
  },
93
93
  "engines": {
94
94
  "node": ">=16"