@hyperlane-xyz/cli 3.20.0-beta1 → 4.0.0-alpha.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.
Files changed (118) hide show
  1. package/README.md +1 -1
  2. package/dist/cli.js +4 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/src/avs/config.d.ts +11 -0
  5. package/dist/src/avs/config.d.ts.map +1 -0
  6. package/dist/src/avs/config.js +10 -0
  7. package/dist/src/avs/config.js.map +1 -0
  8. package/dist/src/avs/stakeRegistry.d.ts +21 -0
  9. package/dist/src/avs/stakeRegistry.d.ts.map +1 -0
  10. package/dist/src/avs/stakeRegistry.js +64 -0
  11. package/dist/src/avs/stakeRegistry.js.map +1 -0
  12. package/dist/src/commands/avs.d.ts +12 -0
  13. package/dist/src/commands/avs.d.ts.map +1 -0
  14. package/dist/src/commands/avs.js +64 -0
  15. package/dist/src/commands/avs.js.map +1 -0
  16. package/dist/src/commands/config.js +9 -9
  17. package/dist/src/commands/config.js.map +1 -1
  18. package/dist/src/commands/deploy.d.ts.map +1 -1
  19. package/dist/src/commands/deploy.js +8 -10
  20. package/dist/src/commands/deploy.js.map +1 -1
  21. package/dist/src/commands/hook.js +2 -2
  22. package/dist/src/commands/hook.js.map +1 -1
  23. package/dist/src/commands/ism.js +2 -2
  24. package/dist/src/commands/ism.js.map +1 -1
  25. package/dist/src/commands/options.d.ts +11 -5
  26. package/dist/src/commands/options.d.ts.map +1 -1
  27. package/dist/src/commands/options.js +43 -10
  28. package/dist/src/commands/options.js.map +1 -1
  29. package/dist/src/commands/send.js +2 -2
  30. package/dist/src/commands/send.js.map +1 -1
  31. package/dist/src/commands/validator.d.ts +3 -0
  32. package/dist/src/commands/validator.d.ts.map +1 -0
  33. package/dist/src/commands/validator.js +34 -0
  34. package/dist/src/commands/validator.js.map +1 -0
  35. package/dist/src/config/chain.d.ts.map +1 -1
  36. package/dist/src/config/chain.js +21 -9
  37. package/dist/src/config/chain.js.map +1 -1
  38. package/dist/src/config/warp.d.ts +1 -1
  39. package/dist/src/config/warp.d.ts.map +1 -1
  40. package/dist/src/config/warp.js +89 -47
  41. package/dist/src/config/warp.js.map +1 -1
  42. package/dist/src/consts.d.ts +1 -0
  43. package/dist/src/consts.d.ts.map +1 -1
  44. package/dist/src/consts.js +1 -0
  45. package/dist/src/consts.js.map +1 -1
  46. package/dist/src/context/context.d.ts +1 -1
  47. package/dist/src/context/context.d.ts.map +1 -1
  48. package/dist/src/context/context.js +34 -12
  49. package/dist/src/context/context.js.map +1 -1
  50. package/dist/src/context/types.d.ts +1 -0
  51. package/dist/src/context/types.d.ts.map +1 -1
  52. package/dist/src/deploy/agent.js +1 -1
  53. package/dist/src/deploy/agent.js.map +1 -1
  54. package/dist/src/deploy/core.d.ts.map +1 -1
  55. package/dist/src/deploy/core.js +5 -3
  56. package/dist/src/deploy/core.js.map +1 -1
  57. package/dist/src/deploy/dry-run.d.ts +1 -1
  58. package/dist/src/deploy/dry-run.d.ts.map +1 -1
  59. package/dist/src/deploy/dry-run.js.map +1 -1
  60. package/dist/src/deploy/utils.d.ts +0 -7
  61. package/dist/src/deploy/utils.d.ts.map +1 -1
  62. package/dist/src/deploy/utils.js +4 -18
  63. package/dist/src/deploy/utils.js.map +1 -1
  64. package/dist/src/deploy/warp.d.ts.map +1 -1
  65. package/dist/src/deploy/warp.js +38 -123
  66. package/dist/src/deploy/warp.js.map +1 -1
  67. package/dist/src/send/message.d.ts.map +1 -1
  68. package/dist/src/send/message.js +4 -5
  69. package/dist/src/send/message.js.map +1 -1
  70. package/dist/src/send/transfer.d.ts.map +1 -1
  71. package/dist/src/send/transfer.js +5 -6
  72. package/dist/src/send/transfer.js.map +1 -1
  73. package/dist/src/submit/submit.d.ts +5 -0
  74. package/dist/src/submit/submit.d.ts.map +1 -0
  75. package/dist/src/submit/submit.js +30 -0
  76. package/dist/src/submit/submit.js.map +1 -0
  77. package/dist/src/submit/types.d.ts +18 -0
  78. package/dist/src/submit/types.d.ts.map +1 -0
  79. package/dist/src/submit/types.js +2 -0
  80. package/dist/src/submit/types.js.map +1 -0
  81. package/dist/src/tests/deployTestErc20.js +3 -2
  82. package/dist/src/tests/deployTestErc20.js.map +1 -1
  83. package/dist/src/utils/balances.d.ts +2 -2
  84. package/dist/src/utils/balances.d.ts.map +1 -1
  85. package/dist/src/utils/balances.js +8 -3
  86. package/dist/src/utils/balances.js.map +1 -1
  87. package/dist/src/utils/chains.d.ts +1 -0
  88. package/dist/src/utils/chains.d.ts.map +1 -1
  89. package/dist/src/utils/chains.js +20 -3
  90. package/dist/src/utils/chains.js.map +1 -1
  91. package/dist/src/utils/env.d.ts +3 -0
  92. package/dist/src/utils/env.d.ts.map +1 -1
  93. package/dist/src/utils/env.js +3 -0
  94. package/dist/src/utils/env.js.map +1 -1
  95. package/dist/src/utils/files.d.ts +1 -0
  96. package/dist/src/utils/files.d.ts.map +1 -1
  97. package/dist/src/utils/files.js +8 -0
  98. package/dist/src/utils/files.js.map +1 -1
  99. package/dist/src/utils/keys.d.ts +5 -3
  100. package/dist/src/utils/keys.d.ts.map +1 -1
  101. package/dist/src/utils/keys.js +14 -11
  102. package/dist/src/utils/keys.js.map +1 -1
  103. package/dist/src/validator/address.d.ts +10 -0
  104. package/dist/src/validator/address.d.ts.map +1 -0
  105. package/dist/src/validator/address.js +107 -0
  106. package/dist/src/validator/address.js.map +1 -0
  107. package/dist/src/version.d.ts +1 -1
  108. package/dist/src/version.d.ts.map +1 -1
  109. package/dist/src/version.js +1 -1
  110. package/dist/src/version.js.map +1 -1
  111. package/examples/core-config.yaml +19 -0
  112. package/examples/hooks.yaml +8 -4
  113. package/examples/warp-route-deployment.yaml +2 -4
  114. package/package.json +7 -4
  115. package/dist/src/registry/MergedRegistry.d.ts +0 -35
  116. package/dist/src/registry/MergedRegistry.d.ts.map +0 -1
  117. package/dist/src/registry/MergedRegistry.js +0 -83
  118. package/dist/src/registry/MergedRegistry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/commands/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/commands/options.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { ethers } from 'ethers';
2
2
  import { log } from '../logger.js';
3
3
  import { sendTestMessage } from '../send/message.js';
4
4
  import { sendTestTransfer } from '../send/transfer.js';
5
- import { warpConfigOption } from './options.js';
5
+ import { warpCoreConfigCommandOption } from './options.js';
6
6
  /**
7
7
  * Parent command
8
8
  */
@@ -76,7 +76,7 @@ const transferCommand = {
76
76
  describe: 'Send a test token transfer on a warp route',
77
77
  builder: {
78
78
  ...messageOptions,
79
- warp: warpConfigOption,
79
+ warp: warpCoreConfigCommandOption,
80
80
  wei: {
81
81
  type: 'string',
82
82
  description: 'Amount in wei to send',
@@ -1 +1 @@
1
- {"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/commands/send.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/commands/send.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAkB;IACxC,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,iCAAiC;IAC3C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,OAAO,CAAC,cAAc,CAAC;SACvB,OAAO,CAAC,eAAe,CAAC;SACxB,OAAO,CAAC,KAAK,CAAC;SACd,aAAa,EAAE;IACpB,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA6B;IACtD,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,mCAAmC;KACjD;IACD,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,sCAAsC;KACpD;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,oBAAoB;QACjC,OAAO,EAAE,CAAC,GAAG,EAAE;KAChB;IACD,KAAK,EAAE;QACL,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,uCAAuC;QACpD,OAAO,EAAE,KAAK;KACf;IACD,KAAK,EAAE;QACL,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,mDAAmD;QAChE,OAAO,EAAE,KAAK;KACf;CACF,CAAC;AAUF,MAAM,cAAc,GAEhB;IACF,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,uCAAuC;IACjD,OAAO,EAAE;QACP,GAAG,cAAc;QACjB,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uBAAuB;YACpC,OAAO,EAAE,QAAQ;SAClB;KACF;IACD,OAAO,EAAE,KAAK,EAAE,EACd,OAAO,EACP,MAAM,EACN,WAAW,EACX,OAAO,EACP,KAAK,EACL,KAAK,EACL,IAAI,GACL,EAAE,EAAE;QACH,MAAM,eAAe,CAAC;YACpB,OAAO;YACP,MAAM;YACN,WAAW;YACX,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACjE,UAAU,EAAE,OAAO;YACnB,mBAAmB,EAAE,KAAK;YAC1B,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,eAAe,GAOjB;IACF,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE;QACP,GAAG,cAAc;QACjB,IAAI,EAAE,2BAA2B;QACjC,GAAG,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,uBAAuB;YACpC,OAAO,EAAE,CAAC;SACX;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,8CAA8C;SAC5D;KACF;IACD,OAAO,EAAE,KAAK,EAAE,EACd,OAAO,EACP,MAAM,EACN,WAAW,EACX,OAAO,EACP,KAAK,EACL,KAAK,EACL,IAAI,EACJ,GAAG,EACH,SAAS,GACV,EAAE,EAAE;QACH,MAAM,gBAAgB,CAAC;YACrB,OAAO;YACP,cAAc,EAAE,IAAI;YACpB,MAAM;YACN,WAAW;YACX,GAAG;YACH,SAAS;YACT,UAAU,EAAE,OAAO;YACnB,mBAAmB,EAAE,KAAK;YAC1B,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { CommandModule } from 'yargs';
2
+ export declare const validatorCommand: CommandModule;
3
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../src/commands/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAetC,eAAO,MAAM,gBAAgB,EAAE,aAK9B,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { log } from '../logger.js';
2
+ import { getValidatorAddress } from '../validator/address.js';
3
+ import { awsAccessKeyCommandOption, awsBucketCommandOption, awsKeyIdCommandOption, awsRegionCommandOption, awsSecretKeyCommandOption, } from './options.js';
4
+ // Parent command to help configure and set up Hyperlane validators
5
+ export const validatorCommand = {
6
+ command: 'validator',
7
+ describe: 'Configure and manage Hyperlane validators',
8
+ builder: (yargs) => yargs.command(addressCommand).demandCommand(),
9
+ handler: () => log('Command required'),
10
+ };
11
+ // If AWS access key needed for future validator commands, move to context
12
+ const addressCommand = {
13
+ command: 'address',
14
+ describe: 'Get the validator address from S3 bucket or KMS key ID',
15
+ builder: {
16
+ 'access-key': awsAccessKeyCommandOption,
17
+ 'secret-key': awsSecretKeyCommandOption,
18
+ region: awsRegionCommandOption,
19
+ bucket: awsBucketCommandOption,
20
+ 'key-id': awsKeyIdCommandOption,
21
+ },
22
+ handler: async ({ context, accessKey, secretKey, region, bucket, keyId }) => {
23
+ await getValidatorAddress({
24
+ context,
25
+ accessKey,
26
+ secretKey,
27
+ region,
28
+ bucket,
29
+ keyId,
30
+ });
31
+ process.exit(0);
32
+ },
33
+ };
34
+ //# sourceMappingURL=validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/commands/validator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AAEtB,mEAAmE;AACnE,MAAM,CAAC,MAAM,gBAAgB,GAAkB;IAC7C,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,2CAA2C;IACrD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,aAAa,EAAE;IACjE,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC;CACvC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,cAAc,GAMf;IACH,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,wDAAwD;IAClE,OAAO,EAAE;QACP,YAAY,EAAE,yBAAyB;QACvC,YAAY,EAAE,yBAAyB;QACvC,MAAM,EAAE,sBAAsB;QAC9B,MAAM,EAAE,sBAAsB;QAC9B,QAAQ,EAAE,qBAAqB;KAChC;IACD,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QAC1E,MAAM,mBAAmB,CAAC;YACxB,OAAO;YACP,SAAS;YACT,SAAS;YACT,MAAM;YACN,MAAM;YACN,KAAK;SACN,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../../src/config/chain.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAuB,MAAM,oBAAoB,CAAC;AAGxE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAIrD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,iBAuBhD;AAED,wBAAsB,iBAAiB,CAAC,EACtC,OAAO,GACR,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;CACzB,iBAmFA"}
1
+ {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../../src/config/chain.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAuB,MAAM,oBAAoB,CAAC;AAGxE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAKrD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,iBAuBhD;AAED,wBAAsB,iBAAiB,CAAC,EACtC,OAAO,GACR,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;CACzB,iBAiHA"}
@@ -1,7 +1,9 @@
1
1
  import { confirm, input } from '@inquirer/prompts';
2
+ import { ethers } from 'ethers';
2
3
  import { ChainMetadataSchema } from '@hyperlane-xyz/sdk';
3
4
  import { ProtocolType } from '@hyperlane-xyz/utils';
4
5
  import { errorRed, log, logBlue, logGreen } from '../logger.js';
6
+ import { detectAndConfirmOrPrompt } from '../utils/chains.js';
5
7
  import { readYamlOrJson } from '../utils/files.js';
6
8
  export function readChainConfigs(filePath) {
7
9
  log(`Reading file configs in ${filePath}`);
@@ -23,21 +25,31 @@ export function readChainConfigs(filePath) {
23
25
  }
24
26
  export async function createChainConfig({ context, }) {
25
27
  logBlue('Creating a new chain config');
26
- const name = await input({
27
- message: 'Enter chain name (one word, lower case)',
28
- });
29
- const chainId = await input({ message: 'Enter chain id (number)' });
30
- const domainId = chainId;
31
- const rpcUrl = await input({ message: 'Enter http or https rpc url' });
28
+ const rpcUrl = await detectAndConfirmOrPrompt(async () => {
29
+ await new ethers.providers.JsonRpcProvider().getNetwork();
30
+ return ethers.providers.JsonRpcProvider.defaultUrl();
31
+ }, 'Enter http or https', 'rpc url');
32
+ const provider = new ethers.providers.JsonRpcProvider(rpcUrl);
33
+ const name = await detectAndConfirmOrPrompt(async () => {
34
+ const clientName = await provider.send('web3_clientVersion', []);
35
+ const port = rpcUrl.split(':').slice(-1);
36
+ const client = clientName.split('/')[0];
37
+ return `${client}${port}`;
38
+ }, 'Enter (one word, lower case)', 'chain name');
39
+ const chainId = parseInt(await detectAndConfirmOrPrompt(async () => {
40
+ const network = await provider.getNetwork();
41
+ return network.chainId.toString();
42
+ }, 'Enter a (number)', 'chain id'), 10);
32
43
  const metadata = {
33
44
  name,
34
- chainId: parseInt(chainId, 10),
35
- domainId: parseInt(domainId, 10),
45
+ chainId,
46
+ domainId: chainId,
36
47
  protocol: ProtocolType.Ethereum,
37
48
  rpcUrls: [{ http: rpcUrl }],
38
49
  };
39
50
  const wantAdvancedConfig = await confirm({
40
- message: 'Do you want to set block or gas properties for this chain config?(optional)',
51
+ default: false,
52
+ message: 'Do you want to set block or gas properties for this chain config?',
41
53
  });
42
54
  if (wantAdvancedConfig) {
43
55
  const wantBlockConfig = await confirm({
@@ -1 +1 @@
1
- {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../src/config/chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../src/config/chain.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { WarpCoreConfig, WarpRouteDeployConfig } from '@hyperlane-xyz/sdk';
2
2
  import { CommandContext } from '../context/types.js';
3
- export declare function readWarpRouteDeployConfig(filePath: string): WarpRouteDeployConfig;
3
+ export declare function readWarpRouteDeployConfig(filePath: string, context?: CommandContext): Promise<WarpRouteDeployConfig>;
4
4
  export declare function isValidWarpRouteDeployConfig(config: any): boolean;
5
5
  export declare function createWarpRouteDeployConfig({ context, outPath, }: {
6
6
  context: CommandContext;
@@ -1 +1 @@
1
- {"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,cAAc,EAEd,qBAAqB,EAEtB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAQrD,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,GACf,qBAAqB,CAKvB;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,GAAG,WAEvD;AAED,wBAAsB,2BAA2B,CAAC,EAChD,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,iBAoEA;AAID,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAIpE"}
1
+ {"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,cAAc,EAEd,qBAAqB,EAEtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AA+DrD,wBAAsB,yBAAyB,CAC7C,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,qBAAqB,CAAC,CAQhC;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,GAAG,WAEvD;AAED,wBAAsB,2BAA2B,CAAC,EAChD,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB,iBAoEA;AAID,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAIpE"}
@@ -1,13 +1,57 @@
1
- import { confirm, input } from '@inquirer/prompts';
2
- import { ethers } from 'ethers';
1
+ import { input, select } from '@inquirer/prompts';
3
2
  import { TokenType, WarpCoreConfigSchema, WarpRouteDeployConfigSchema, } from '@hyperlane-xyz/sdk';
3
+ import { assert, objMap, promiseObjAll } from '@hyperlane-xyz/utils';
4
4
  import { errorRed, logBlue, logGreen } from '../logger.js';
5
- import { runMultiChainSelectionStep, runSingleChainSelectionStep, } from '../utils/chains.js';
5
+ import { detectAndConfirmOrPrompt, runMultiChainSelectionStep, } from '../utils/chains.js';
6
6
  import { readYamlOrJson, writeYamlOrJson } from '../utils/files.js';
7
- export function readWarpRouteDeployConfig(filePath) {
8
- const config = readYamlOrJson(filePath);
7
+ const TYPE_DESCRIPTIONS = {
8
+ [TokenType.synthetic]: 'A new ERC20 with remote transfer functionality',
9
+ [TokenType.collateral]: 'Extends an existing ERC20 with remote transfer functionality',
10
+ [TokenType.native]: 'Extends the native token with remote transfer functionality',
11
+ [TokenType.collateralVault]: 'Extends an existing ERC4626 with remote transfer functionality',
12
+ [TokenType.collateralFiat]: 'Extends an existing FiatToken with remote transfer functionality',
13
+ [TokenType.XERC20]: 'Extends an existing xERC20 with Warp Route functionality',
14
+ [TokenType.XERC20Lockbox]: 'Extends an existing xERC20 Lockbox with Warp Route functionality',
15
+ // TODO: describe
16
+ [TokenType.fastSynthetic]: '',
17
+ [TokenType.syntheticUri]: '',
18
+ [TokenType.fastCollateral]: '',
19
+ [TokenType.collateralUri]: '',
20
+ [TokenType.nativeScaled]: '',
21
+ };
22
+ const TYPE_CHOICES = Object.values(TokenType).map((type) => ({
23
+ name: type,
24
+ value: type,
25
+ description: TYPE_DESCRIPTIONS[type],
26
+ }));
27
+ async function fillDefaults(context, config) {
28
+ return promiseObjAll(objMap(config, async (chain, config) => {
29
+ let mailbox = config.mailbox;
30
+ if (!mailbox) {
31
+ const addresses = await context.registry.getChainAddresses(chain);
32
+ assert(addresses, `No addresses found for chain ${chain}`);
33
+ mailbox = addresses.mailbox;
34
+ }
35
+ let owner = config.owner;
36
+ if (!owner) {
37
+ owner =
38
+ (await context.signer?.getAddress()) ??
39
+ (await context.multiProvider.getSignerAddress(chain));
40
+ }
41
+ return {
42
+ owner,
43
+ mailbox,
44
+ ...config,
45
+ };
46
+ }));
47
+ }
48
+ export async function readWarpRouteDeployConfig(filePath, context) {
49
+ let config = readYamlOrJson(filePath);
9
50
  if (!config)
10
51
  throw new Error(`No warp route deploy config found at ${filePath}`);
52
+ if (context) {
53
+ config = await fillDefaults(context, config);
54
+ }
11
55
  return WarpRouteDeployConfigSchema.parse(config);
12
56
  }
13
57
  export function isValidWarpRouteDeployConfig(config) {
@@ -15,53 +59,51 @@ export function isValidWarpRouteDeployConfig(config) {
15
59
  }
16
60
  export async function createWarpRouteDeployConfig({ context, outPath, }) {
17
61
  logBlue('Creating a new warp route deployment config');
18
- const baseChain = await runSingleChainSelectionStep(context.chainMetadata, 'Select base chain with the original token to warp');
19
- const isNative = await confirm({
20
- message: 'Are you creating a route for the native token of the base chain (e.g. Ether on Ethereum)?',
21
- });
22
- const isNft = isNative
23
- ? false
24
- : await confirm({ message: 'Is this an NFT (i.e. ERC-721)?' });
25
- const isYieldBearing = isNative || isNft
26
- ? false
27
- : await confirm({
28
- message: 'Do you want this warp route to be yield-bearing (i.e. deposits into ERC-4626 vault)?',
62
+ const owner = await detectAndConfirmOrPrompt(async () => context.signer?.getAddress(), 'Enter the desired', 'owner address');
63
+ const warpChains = await runMultiChainSelectionStep(context.chainMetadata, 'Select chains to connect');
64
+ const result = {};
65
+ for (const chain of warpChains) {
66
+ logBlue(`Configuring warp route for chain ${chain}`);
67
+ const type = await select({
68
+ message: `Select ${chain}'s token type`,
69
+ choices: TYPE_CHOICES,
29
70
  });
30
- const addressMessage = `Enter the ${isYieldBearing ? 'ERC-4626 vault' : 'collateral token'} address`;
31
- const baseAddress = isNative
32
- ? ethers.constants.AddressZero
33
- : await input({ message: addressMessage });
34
- const syntheticChains = await runMultiChainSelectionStep(context.chainMetadata, 'Select chains to which the base token will be connected');
35
- // TODO add more prompts here to support customizing the token metadata
36
- let result;
37
- if (isNative) {
38
- result = {
39
- [baseChain]: {
40
- type: TokenType.native,
41
- },
42
- };
43
- }
44
- else {
45
- result = {
46
- [baseChain]: {
47
- type: isYieldBearing ? TokenType.collateralVault : TokenType.collateral,
48
- token: baseAddress,
49
- isNft,
50
- },
51
- };
71
+ // TODO: restore NFT prompting
72
+ const isNft = type === TokenType.syntheticUri || type === TokenType.collateralUri;
73
+ const mailbox = await detectAndConfirmOrPrompt(async () => {
74
+ const addresses = await context.registry.getChainAddresses(chain);
75
+ return addresses?.mailbox;
76
+ }, `For ${chain}, enter the`, 'mailbox address');
77
+ switch (type) {
78
+ case TokenType.collateral:
79
+ case TokenType.XERC20:
80
+ case TokenType.XERC20Lockbox:
81
+ case TokenType.collateralFiat:
82
+ case TokenType.collateralUri:
83
+ case TokenType.fastCollateral:
84
+ case TokenType.collateralVault:
85
+ result[chain] = {
86
+ mailbox,
87
+ type,
88
+ owner,
89
+ isNft,
90
+ token: await input({
91
+ message: `Enter the existing token address on chain ${chain}`,
92
+ }),
93
+ };
94
+ break;
95
+ default:
96
+ result[chain] = { mailbox, type, owner, isNft };
97
+ }
52
98
  }
53
- syntheticChains.map((chain) => {
54
- result[chain] = {
55
- type: TokenType.synthetic,
56
- };
57
- });
58
- if (isValidWarpRouteDeployConfig(result)) {
99
+ try {
100
+ const parsed = WarpRouteDeployConfigSchema.parse(result);
59
101
  logGreen(`Warp Route config is valid, writing to file ${outPath}`);
60
- writeYamlOrJson(outPath, result);
102
+ writeYamlOrJson(outPath, parsed);
61
103
  }
62
- else {
104
+ catch (e) {
63
105
  errorRed(`Warp route deployment config is invalid, please see https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/typescript/cli/examples/warp-route-deployment.yaml for an example`);
64
- throw new Error('Invalid multisig config');
106
+ throw e;
65
107
  }
66
108
  }
67
109
  // Note, this is different than the function above which reads a config
@@ -1 +1 @@
1
- {"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"warp.js","sourceRoot":"","sources":["../../../src/config/warp.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export declare const MINIMUM_CORE_DEPLOY_GAS: string;
2
2
  export declare const MINIMUM_WARP_DEPLOY_GAS: string;
3
3
  export declare const MINIMUM_TEST_SEND_GAS: string;
4
+ export declare const MINIMUM_AVS_GAS: string;
4
5
  //# sourceMappingURL=consts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AACxD,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AACxD,eAAO,MAAM,qBAAqB,QAAmB,CAAC"}
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AACxD,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AACxD,eAAO,MAAM,qBAAqB,QAAmB,CAAC;AACtD,eAAO,MAAM,eAAe,QAAmB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export const MINIMUM_CORE_DEPLOY_GAS = (1e8).toString();
2
2
  export const MINIMUM_WARP_DEPLOY_GAS = (1e7).toString();
3
3
  export const MINIMUM_TEST_SEND_GAS = (3e5).toString();
4
+ export const MINIMUM_AVS_GAS = (3e6).toString();
4
5
  //# sourceMappingURL=consts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/consts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/consts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AACxD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;AACtD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC"}
@@ -10,5 +10,5 @@ export declare function getContext({ registryUri, registryOverrideUri, key, requ
10
10
  * Retrieves dry-run context for the user-selected command
11
11
  * @returns dry-run context for the current command
12
12
  */
13
- export declare function getDryRunContext({ registryUri, registryOverrideUri, key, skipConfirmation }: ContextSettings, chain?: ChainName): Promise<CommandContext>;
13
+ export declare function getDryRunContext({ registryUri, registryOverrideUri, key, fromAddress, skipConfirmation, }: ContextSettings, chain?: ChainName): Promise<CommandContext>;
14
14
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context/context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAC;AAQ9D,OAAO,EACL,cAAc,EACd,eAAe,EAEhB,MAAM,YAAY,CAAC;AAEpB,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,iBAchE;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,EAC/B,WAAW,EACX,mBAAmB,EACnB,GAAG,EACH,WAAW,EACX,gBAAgB,GACjB,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAiB3C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,EAAE,WAAW,EAAE,mBAAmB,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,eAAe,EAC5E,KAAK,CAAC,EAAE,SAAS,GAChB,OAAO,CAAC,cAAc,CAAC,CA+BzB"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context/context.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAiB,MAAM,oBAAoB,CAAC;AAS9D,OAAO,EACL,cAAc,EACd,eAAe,EAEhB,MAAM,YAAY,CAAC;AAEpB,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,iBAmBhE;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,EAC/B,WAAW,EACX,mBAAmB,EACnB,GAAG,EACH,WAAW,EACX,gBAAgB,GACjB,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAiB3C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,EACE,WAAW,EACX,mBAAmB,EACnB,GAAG,EACH,WAAW,EACX,gBAAgB,GACjB,EAAE,eAAe,EAClB,KAAK,CAAC,EAAE,SAAS,GAChB,OAAO,CAAC,cAAc,CAAC,CAmCzB"}
@@ -1,19 +1,25 @@
1
+ import { GithubRegistry, MergedRegistry, } from '@hyperlane-xyz/registry';
2
+ import { FileSystemRegistry } from '@hyperlane-xyz/registry/fs';
1
3
  import { MultiProvider } from '@hyperlane-xyz/sdk';
4
+ import { isHttpsUrl, isNullish, rootLogger } from '@hyperlane-xyz/utils';
2
5
  import { isSignCommand } from '../commands/signCommands.js';
3
- import { forkNetworkToMultiProvider } from '../deploy/dry-run.js';
4
- import { MergedRegistry } from '../registry/MergedRegistry.js';
6
+ import { forkNetworkToMultiProvider, verifyAnvil } from '../deploy/dry-run.js';
7
+ import { logBlue } from '../logger.js';
5
8
  import { runSingleChainSelectionStep } from '../utils/chains.js';
6
9
  import { getImpersonatedSigner, getSigner } from '../utils/keys.js';
7
10
  export async function contextMiddleware(argv) {
8
- const isDryRun = !!argv.dryRun;
11
+ const isDryRun = !isNullish(argv.dryRun);
9
12
  const requiresKey = isSignCommand(argv);
10
13
  const settings = {
11
14
  registryUri: argv.registry,
12
15
  registryOverrideUri: argv.overrides,
13
16
  key: argv.key,
17
+ fromAddress: argv.fromAddress,
14
18
  requiresKey,
15
19
  skipConfirmation: argv.yes,
16
20
  };
21
+ if (!isDryRun && settings.fromAddress)
22
+ throw new Error("'--from-address' or '-f' should only be used for dry-runs");
17
23
  const context = isDryRun
18
24
  ? await getDryRunContext(settings, argv.dryRun)
19
25
  : await getContext(settings);
@@ -43,17 +49,20 @@ export async function getContext({ registryUri, registryOverrideUri, key, requir
43
49
  * Retrieves dry-run context for the user-selected command
44
50
  * @returns dry-run context for the current command
45
51
  */
46
- export async function getDryRunContext({ registryUri, registryOverrideUri, key, skipConfirmation }, chain) {
47
- const registry = getRegistry(registryUri, registryOverrideUri, true);
52
+ export async function getDryRunContext({ registryUri, registryOverrideUri, key, fromAddress, skipConfirmation, }, chain) {
53
+ const registry = getRegistry(registryUri, registryOverrideUri);
48
54
  const chainMetadata = await registry.getMetadata();
49
55
  if (!chain) {
50
56
  if (skipConfirmation)
51
57
  throw new Error('No chains provided');
52
58
  chain = await runSingleChainSelectionStep(chainMetadata, 'Select chain to dry-run against:');
53
59
  }
60
+ logBlue(`Dry-running against chain: ${chain}`);
61
+ await verifyAnvil();
54
62
  const multiProvider = await getMultiProvider(registry);
55
63
  await forkNetworkToMultiProvider(multiProvider, chain);
56
- const { key: impersonatedKey, signer: impersonatedSigner } = await getImpersonatedSigner({
64
+ const { impersonatedKey, impersonatedSigner } = await getImpersonatedSigner({
65
+ fromAddress,
57
66
  key,
58
67
  skipConfirmation,
59
68
  });
@@ -76,13 +85,26 @@ export async function getDryRunContext({ registryUri, registryOverrideUri, key,
76
85
  * and an override one (such as a local directory)
77
86
  * @returns a new MergedRegistry
78
87
  */
79
- function getRegistry(primaryRegistryUri, overrideRegistryUri, isDryRun) {
80
- const registryUris = [primaryRegistryUri, overrideRegistryUri]
81
- .map((r) => r.trim())
82
- .filter((r) => !!r);
88
+ function getRegistry(primaryRegistryUri, overrideRegistryUri) {
89
+ const logger = rootLogger.child({ module: 'MergedRegistry' });
90
+ const registries = [primaryRegistryUri, overrideRegistryUri]
91
+ .map((uri) => uri.trim())
92
+ .filter((uri) => !!uri)
93
+ .map((uri, index) => {
94
+ const childLogger = logger.child({ uri, index });
95
+ if (isHttpsUrl(uri)) {
96
+ return new GithubRegistry({ uri, logger: childLogger });
97
+ }
98
+ else {
99
+ return new FileSystemRegistry({
100
+ uri,
101
+ logger: childLogger,
102
+ });
103
+ }
104
+ });
83
105
  return new MergedRegistry({
84
- registryUris,
85
- isDryRun,
106
+ registries,
107
+ logger,
86
108
  });
87
109
  }
88
110
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context/context.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export interface ContextSettings {
6
6
  registryUri: string;
7
7
  registryOverrideUri: string;
8
8
  key?: string;
9
+ fromAddress?: string;
9
10
  requiresKey?: boolean;
10
11
  skipConfirmation?: boolean;
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/context/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IACvC,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,wBAAwB,CAAC,IAAI,IAAI,aAAa,CACxD,EAAE,EACF,IAAI,GAAG;IAAE,OAAO,EAAE,cAAc,CAAA;CAAE,CACnC,CAAC;AAEF,MAAM,MAAM,6BAA6B,CAAC,IAAI,IAAI,aAAa,CAC7D,EAAE,EACF,IAAI,GAAG;IAAE,OAAO,EAAE,mBAAmB,CAAA;CAAE,CACxC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/context/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,EACb,aAAa,EACd,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IACvC,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,wBAAwB,CAAC,IAAI,IAAI,aAAa,CACxD,EAAE,EACF,IAAI,GAAG;IAAE,OAAO,EAAE,cAAc,CAAA;CAAE,CACnC,CAAC;AAEF,MAAM,MAAM,6BAA6B,CAAC,IAAI,IAAI,aAAa,CAC7D,EAAE,EACF,IAAI,GAAG;IAAE,OAAO,EAAE,mBAAmB,CAAA;CAAE,CACxC,CAAC"}
@@ -28,7 +28,7 @@ export async function runKurtosisAgentDeploy({ context, originChain, relayChains
28
28
  };
29
29
  const base64EncodedPackageConfig = toBase64(kurtosisPackageConfig) || '';
30
30
  const kurtosisCloudUrl = getKurtosisCloudUrl(base64EncodedPackageConfig);
31
- const kurtosisCloudLink = terminalLink('Cmd+Click or Ctrl+Click here', kurtosisCloudUrl, { fallback: () => kurtosisCloudUrl });
31
+ const kurtosisCloudLink = terminalLink('Kurtosis Cloud Link 🔗 (cmd+click or ctrl+click here)', kurtosisCloudUrl, { fallback: () => kurtosisCloudUrl });
32
32
  logGreen('\n', 'Click the link below to deploy your validator and relayer with Kurtosis:', '\n', `${kurtosisCloudLink}`);
33
33
  return;
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/deploy/agent.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAC3C,OAAO,EACP,WAAW,EACX,WAAW,EACX,sBAAsB,GAMvB;IACC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,WAAW,GAAG,MAAM,2BAA2B,CAC7C,OAAO,CAAC,aAAa,EACrB,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,mBAAmB,GAAG,MAAM,0BAA0B,CAC1D,OAAO,CAAC,aAAa,EACrB,gCAAgC,EAChC,IAAI,CACL,CAAC;QACF,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC5B,OAAO,CACL,IAAI,EACJ,mFAAmF,CACpF,CAAC;QACF,sBAAsB,GAAG,MAAM,oBAAoB,CACjD,WAAW,EACX,mBAAmB,EACnB,cAAc,CACf,CAAC;IACJ,CAAC;IACD,MAAM,iBAAiB,GAAG,QAAQ,CAAM,sBAAsB,CAAC,CAAC;IAEhE,MAAM,oBAAoB,GAAG;QAC3B,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,WAAW;QAC9B,YAAY,EAAE,WAAW;QACzB,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;KACrD,CAAC;IAEF,MAAM,qBAAqB,GAAG;QAC5B,eAAe,EAAE,IAAI;QACrB,IAAI,EAAE,oBAAoB;KAC3B,CAAC;IAEF,MAAM,0BAA0B,GAAG,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;IACzE,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;IAEzE,MAAM,iBAAiB,GAAG,YAAY,CACpC,8BAA8B,EAC9B,gBAAgB,EAChB,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE,CACrC,CAAC;IAEF,QAAQ,CACN,IAAI,EACJ,0EAA0E,EAC1E,IAAI,EACJ,GAAG,iBAAiB,EAAE,CACvB,CAAC;IACF,OAAO;AACT,CAAC;AAED,MAAM,mBAAmB,GAAG,CAAC,YAAoB,EAAE,EAAE,CACnD,qHAAqH,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../src/deploy/agent.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAC3C,OAAO,EACP,WAAW,EACX,WAAW,EACX,sBAAsB,GAMvB;IACC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,WAAW,GAAG,MAAM,2BAA2B,CAC7C,OAAO,CAAC,aAAa,EACrB,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,mBAAmB,GAAG,MAAM,0BAA0B,CAC1D,OAAO,CAAC,aAAa,EACrB,gCAAgC,EAChC,IAAI,CACL,CAAC;QACF,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC5B,OAAO,CACL,IAAI,EACJ,mFAAmF,CACpF,CAAC;QACF,sBAAsB,GAAG,MAAM,oBAAoB,CACjD,WAAW,EACX,mBAAmB,EACnB,cAAc,CACf,CAAC;IACJ,CAAC;IACD,MAAM,iBAAiB,GAAG,QAAQ,CAAM,sBAAsB,CAAC,CAAC;IAEhE,MAAM,oBAAoB,GAAG;QAC3B,IAAI,EAAE,IAAI;QACV,iBAAiB,EAAE,WAAW;QAC9B,YAAY,EAAE,WAAW;QACzB,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;KACrD,CAAC;IAEF,MAAM,qBAAqB,GAAG;QAC5B,eAAe,EAAE,IAAI;QACrB,IAAI,EAAE,oBAAoB;KAC3B,CAAC;IAEF,MAAM,0BAA0B,GAAG,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC;IACzE,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;IAEzE,MAAM,iBAAiB,GAAG,YAAY,CACpC,uDAAuD,EACvD,gBAAgB,EAChB,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE,CACrC,CAAC;IAEF,QAAQ,CACN,IAAI,EACJ,0EAA0E,EAC1E,IAAI,EACJ,GAAG,iBAAiB,EAAE,CACvB,CAAC;IACF,OAAO;AACT,CAAC;AAED,MAAM,mBAAmB,GAAG,CAAC,YAAoB,EAAE,EAAE,CACnD,qHAAqH,YAAY,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/deploy/core.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,QAAQ,EACR,SAAS,EAUT,SAAS,EAGT,cAAc,EAOf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAA+B,MAAM,sBAAsB,CAAC;AAM5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAsB1D;;GAEG;AACH,wBAAsB,aAAa,CAAC,EAClC,OAAO,EACP,MAAM,EACN,aAAa,EACb,cAAc,EACd,YAAY,GACb,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB,iBA4CA;AAoPD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,SAAS,EAAE,EACnB,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,GACxC,QAAQ,CAAC,SAAS,CAAC,CA6BrB"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/deploy/core.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,QAAQ,EACR,SAAS,EAUT,SAAS,EAGT,cAAc,EAOf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAA+B,MAAM,sBAAsB,CAAC;AAM5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAsB1D;;GAEG;AACH,wBAAsB,aAAa,CAAC,EAClC,OAAO,EACP,MAAM,EACN,aAAa,EACb,cAAc,EACd,YAAY,GACb,EAAE;IACD,OAAO,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB,iBA4CA;AA0PD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,SAAS,EAAE,EACnB,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,GACxC,QAAQ,CAAC,SAAS,CAAC,CA6BrB"}
@@ -124,7 +124,7 @@ async function executeDeploy({ context, chains, ismConfigs = {}, multisigConfigs
124
124
  return chainMap;
125
125
  }, {});
126
126
  const ismFactoryContracts = await ismFactoryDeployer.deploy(ismFactoryConfig);
127
- artifacts = await updateChainAddresses(registry, ismFactoryContracts, artifacts);
127
+ artifacts = await updateChainAddresses(registry, ismFactoryContracts, artifacts, context.isDryRun);
128
128
  logGreen('ISM factory contracts deployed');
129
129
  // Build an IsmFactory that covers all chains so that we can
130
130
  // use it to deploy ISMs to remote chains.
@@ -150,7 +150,7 @@ async function executeDeploy({ context, chains, ismConfigs = {}, multisigConfigs
150
150
  };
151
151
  }
152
152
  artifacts = objMerge(artifacts, isms);
153
- artifacts = await updateChainAddresses(registry, coreContracts, artifacts);
153
+ artifacts = await updateChainAddresses(registry, coreContracts, artifacts, context.isDryRun);
154
154
  logGreen('✅ Core contracts deployed');
155
155
  log(JSON.stringify(artifacts, null, 2));
156
156
  await writeAgentConfig(context, artifacts, chains, agentOutPath);
@@ -211,7 +211,7 @@ export function buildIgpConfigMap(owner, chains, multisigConfigs) {
211
211
  }
212
212
  return configMap;
213
213
  }
214
- async function updateChainAddresses(registry, newContracts, otherAddresses) {
214
+ async function updateChainAddresses(registry, newContracts, otherAddresses, isDryRun) {
215
215
  let newAddresses = serializeContractsMap(newContracts);
216
216
  // The HyperlaneCoreDeployer is returning a nested object with ISM addresses
217
217
  // from other chains, which don't need to be in the artifacts atm.
@@ -220,6 +220,8 @@ async function updateChainAddresses(registry, newContracts, otherAddresses) {
220
220
  return objFilter(newChainAddresses, (_, value) => typeof value === 'string');
221
221
  });
222
222
  const mergedAddresses = objMerge(otherAddresses, newAddresses);
223
+ if (isDryRun)
224
+ return mergedAddresses;
223
225
  for (const chainName of Object.keys(newContracts)) {
224
226
  await registry.updateChain({
225
227
  chainName,