@hyperlane-xyz/sdk 41.3.1 → 42.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ccip/consts.d.ts.map +1 -1
- package/dist/ccip/consts.js +20 -0
- package/dist/ccip/consts.js.map +1 -1
- package/dist/consts/multisigIsm.d.ts.map +1 -1
- package/dist/consts/multisigIsm.js +20 -0
- package/dist/consts/multisigIsm.js.map +1 -1
- package/dist/contracts/contracts.d.ts.map +1 -1
- package/dist/contracts/contracts.js +15 -0
- package/dist/contracts/contracts.js.map +1 -1
- package/dist/contracts/contracts.test.d.ts +2 -0
- package/dist/contracts/contracts.test.d.ts.map +1 -0
- package/dist/contracts/contracts.test.js +88 -0
- package/dist/contracts/contracts.test.js.map +1 -0
- package/dist/core/types.d.ts +80 -2602
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +19 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/types.test.js +58 -0
- package/dist/core/types.test.js.map +1 -1
- package/dist/deploy/warp.d.ts +119 -3
- package/dist/deploy/warp.d.ts.map +1 -1
- package/dist/deploy/warp.js +696 -33
- package/dist/deploy/warp.js.map +1 -1
- package/dist/deploy/warp.test.d.ts +2 -0
- package/dist/deploy/warp.test.d.ts.map +1 -0
- package/dist/deploy/warp.test.js +358 -0
- package/dist/deploy/warp.test.js.map +1 -0
- package/dist/deploy/warpHybridPlan.d.ts +104 -0
- package/dist/deploy/warpHybridPlan.d.ts.map +1 -0
- package/dist/deploy/warpHybridPlan.js +178 -0
- package/dist/deploy/warpHybridPlan.js.map +1 -0
- package/dist/deploy/warpHybridPlan.test.d.ts +2 -0
- package/dist/deploy/warpHybridPlan.test.d.ts.map +1 -0
- package/dist/deploy/warpHybridPlan.test.js +141 -0
- package/dist/deploy/warpHybridPlan.test.js.map +1 -0
- package/dist/hook/EvmHookModule.d.ts +1 -1
- package/dist/hook/EvmHookModule.d.ts.map +1 -1
- package/dist/hook/EvmHookModule.js +16 -3
- package/dist/hook/EvmHookModule.js.map +1 -1
- package/dist/hook/EvmHookReader.d.ts +10 -0
- package/dist/hook/EvmHookReader.d.ts.map +1 -1
- package/dist/hook/EvmHookReader.js +92 -11
- package/dist/hook/EvmHookReader.js.map +1 -1
- package/dist/hook/EvmHookReader.test.js +155 -1
- package/dist/hook/EvmHookReader.test.js.map +1 -1
- package/dist/hook/types.d.ts +107 -1983
- package/dist/hook/types.d.ts.map +1 -1
- package/dist/hook/types.js +49 -0
- package/dist/hook/types.js.map +1 -1
- package/dist/hook/types.test.js +21 -1
- package/dist/hook/types.test.js.map +1 -1
- package/dist/hook/updates.d.ts +1 -0
- package/dist/hook/updates.d.ts.map +1 -1
- package/dist/hook/updates.js +2 -2
- package/dist/hook/updates.js.map +1 -1
- package/dist/hook/utils.d.ts +28 -1
- package/dist/hook/utils.d.ts.map +1 -1
- package/dist/hook/utils.js +89 -0
- package/dist/hook/utils.js.map +1 -1
- package/dist/ica/types.d.ts +4 -674
- package/dist/ica/types.d.ts.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -5
- package/dist/index.js.map +1 -1
- package/dist/ism/EvmIsmModule.d.ts +28 -2
- package/dist/ism/EvmIsmModule.d.ts.map +1 -1
- package/dist/ism/EvmIsmModule.hardhat-test.js +478 -3
- package/dist/ism/EvmIsmModule.hardhat-test.js.map +1 -1
- package/dist/ism/EvmIsmModule.js +224 -10
- package/dist/ism/EvmIsmModule.js.map +1 -1
- package/dist/ism/EvmIsmReader.d.ts.map +1 -1
- package/dist/ism/EvmIsmReader.js +77 -1
- package/dist/ism/EvmIsmReader.js.map +1 -1
- package/dist/ism/EvmIsmReader.test.js +245 -4
- package/dist/ism/EvmIsmReader.test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.d.ts +14 -4
- package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js +372 -3
- package/dist/ism/HyperlaneIsmFactory.hardhat-test.js.map +1 -1
- package/dist/ism/HyperlaneIsmFactory.js +80 -6
- package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
- package/dist/ism/delayedFlow.d.ts +31 -0
- package/dist/ism/delayedFlow.d.ts.map +1 -0
- package/dist/ism/delayedFlow.js +33 -0
- package/dist/ism/delayedFlow.js.map +1 -0
- package/dist/ism/types.d.ts +135 -4
- package/dist/ism/types.d.ts.map +1 -1
- package/dist/ism/types.js +263 -11
- package/dist/ism/types.js.map +1 -1
- package/dist/ism/types.test.js +433 -1
- package/dist/ism/types.test.js.map +1 -1
- package/dist/ism/utils.d.ts.map +1 -1
- package/dist/ism/utils.js +113 -3
- package/dist/ism/utils.js.map +1 -1
- package/dist/ism/utils.test.js +44 -0
- package/dist/ism/utils.test.js.map +1 -1
- package/dist/providers/MultiProviderAdapter.d.ts +3 -3
- package/dist/providers/MultiProviderAdapter.d.ts.map +1 -1
- package/dist/providers/MultiProviderAdapter.js +2 -1
- package/dist/providers/MultiProviderAdapter.js.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.d.ts.map +1 -1
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js +4 -0
- package/dist/providers/SmartProvider/HyperlaneJsonRpcProvider.js.map +1 -1
- package/dist/providers/transactionFeeEstimators.d.ts +16 -9
- package/dist/providers/transactionFeeEstimators.d.ts.map +1 -1
- package/dist/providers/transactionFeeEstimators.js +66 -17
- package/dist/providers/transactionFeeEstimators.js.map +1 -1
- package/dist/providers/transactionFeeEstimators.test.js +153 -1
- package/dist/providers/transactionFeeEstimators.test.js.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts +14 -1
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.d.ts.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js +46 -5
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.js.map +1 -1
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts +2 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.d.ts.map +1 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js +125 -0
- package/dist/providers/transactions/submitter/ethersV5/EV5JsonRpcTxSubmitter.test.js.map +1 -0
- package/dist/router/HyperlaneRouterDeployer.d.ts +3 -1
- package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
- package/dist/router/HyperlaneRouterDeployer.js +4 -2
- package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
- package/dist/router/types.d.ts +6 -1011
- package/dist/router/types.d.ts.map +1 -1
- package/dist/test/testUtils.d.ts +1 -1
- package/dist/test/testUtils.d.ts.map +1 -1
- package/dist/test/testUtils.js +17 -0
- package/dist/test/testUtils.js.map +1 -1
- package/dist/test/testUtils.test.d.ts +2 -0
- package/dist/test/testUtils.test.d.ts.map +1 -0
- package/dist/test/testUtils.test.js +28 -0
- package/dist/test/testUtils.test.js.map +1 -0
- package/dist/token/EvmWarpModule.d.ts +44 -8
- package/dist/token/EvmWarpModule.d.ts.map +1 -1
- package/dist/token/EvmWarpModule.hardhat-test.js +574 -4
- package/dist/token/EvmWarpModule.hardhat-test.js.map +1 -1
- package/dist/token/EvmWarpModule.js +237 -25
- package/dist/token/EvmWarpModule.js.map +1 -1
- package/dist/token/configUtils.d.ts +17 -7
- package/dist/token/configUtils.d.ts.map +1 -1
- package/dist/token/configUtils.js +108 -0
- package/dist/token/configUtils.js.map +1 -1
- package/dist/token/configUtils.test.js +155 -1
- package/dist/token/configUtils.test.js.map +1 -1
- package/dist/token/deploy.d.ts +3 -1
- package/dist/token/deploy.d.ts.map +1 -1
- package/dist/token/deploy.hardhat-test.js +454 -3
- package/dist/token/deploy.hardhat-test.js.map +1 -1
- package/dist/token/deploy.js +25 -6
- package/dist/token/deploy.js.map +1 -1
- package/dist/token/types.d.ts +169 -2931
- package/dist/token/types.d.ts.map +1 -1
- package/dist/token/types.test.js +48 -0
- package/dist/token/types.test.js.map +1 -1
- package/dist/token/warpCheck.d.ts.map +1 -1
- package/dist/token/warpCheck.js +36 -1
- package/dist/token/warpCheck.js.map +1 -1
- package/dist/utils/ism.d.ts +167 -1
- package/dist/utils/ism.d.ts.map +1 -1
- package/dist/utils/ism.js +412 -2
- package/dist/utils/ism.js.map +1 -1
- package/dist/utils/ism.test.d.ts +2 -0
- package/dist/utils/ism.test.d.ts.map +1 -0
- package/dist/utils/ism.test.js +372 -0
- package/dist/utils/ism.test.js.map +1 -0
- package/package.json +10 -10
package/dist/core/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAOtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAkF7C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI3B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQlC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,GAAG;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAErE;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,GAC5C,OAAO,CAET;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAC7C,UAAU,EACV,cAAc,GAAG,aAAa,CAC/B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,GAAG;IACxE,UAAU,EAAE,gBAAgB,CAAC;IAC7B,YAAY,EAAE,iBAAiB,CAAC;IAChC,WAAW,EAAE,iBAAiB,CAAC;CAChC,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;CACxC;AAED,oBAAY,oBAAoB;IAC9B,UAAU,eAAe;IACzB,UAAU,eAAe;CAC1B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,OAAO,EAAE,oBAAoB,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACnE,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAClE,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IAC1C,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,aAAa,CAAC;CACvB,CAAC"}
|
package/dist/core/types.js
CHANGED
|
@@ -5,7 +5,7 @@ import { hookTreeContainsLegacyIgp } from '../hook/utils.js';
|
|
|
5
5
|
import { DerivedIcaRouterConfigSchema, IcaRouterConfigSchema, } from '../ica/types.js';
|
|
6
6
|
import { IsmConfigSchema } from '../ism/types.js';
|
|
7
7
|
import { DeployedOwnableSchema, OwnableSchema } from '../types.js';
|
|
8
|
-
import { ismTreeContainsRateLimited } from '../utils/ism.js';
|
|
8
|
+
import { ismTreeContainsMailboxDefaultOrHybrid, ismTreeContainsRateLimited, } from '../utils/ism.js';
|
|
9
9
|
const CoreConfigBaseSchema = OwnableSchema.extend({
|
|
10
10
|
defaultIsm: IsmConfigSchema,
|
|
11
11
|
defaultHook: HookConfigSchema,
|
|
@@ -20,6 +20,22 @@ const CoreConfigBaseSchema = OwnableSchema.extend({
|
|
|
20
20
|
deployQuotedCalls: z.boolean().optional(),
|
|
21
21
|
contractVersion: z.string().optional(),
|
|
22
22
|
});
|
|
23
|
+
/**
|
|
24
|
+
* DefaultIsm routes to `mailbox.defaultIsm()`. Installed AS the mailbox's
|
|
25
|
+
* default ISM it routes to itself, so verification recurses until it runs out
|
|
26
|
+
* of gas and no inbound message can be delivered. The warp-route hybrid
|
|
27
|
+
* hook/ISMs are equally invalid here: they are bound to a specific warp router
|
|
28
|
+
* and meter its flow, which is meaningless for chain-wide default verification.
|
|
29
|
+
*/
|
|
30
|
+
const rejectWarpOnlyDefaultIsm = (val, ctx) => {
|
|
31
|
+
if (ismTreeContainsMailboxDefaultOrHybrid(val.defaultIsm)) {
|
|
32
|
+
ctx.addIssue({
|
|
33
|
+
code: z.ZodIssueCode.custom,
|
|
34
|
+
message: 'DefaultIsm, NetFlowRateLimitedHookIsm and DelayedFlowRouterHookIsm cannot be used as (or nested inside) a core default ISM',
|
|
35
|
+
path: ['defaultIsm'],
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
};
|
|
23
39
|
const rejectRateLimitedDefaultIsm = (val, ctx) => {
|
|
24
40
|
if (ismTreeContainsRateLimited(val.defaultIsm)) {
|
|
25
41
|
ctx.addIssue({
|
|
@@ -47,12 +63,14 @@ const rejectQuotedCallsWithLegacyIgp = (val, ctx) => {
|
|
|
47
63
|
};
|
|
48
64
|
export const CoreConfigSchema = CoreConfigBaseSchema.superRefine((val, ctx) => {
|
|
49
65
|
rejectRateLimitedDefaultIsm(val, ctx);
|
|
66
|
+
rejectWarpOnlyDefaultIsm(val, ctx);
|
|
50
67
|
rejectQuotedCallsWithLegacyIgp(val, ctx);
|
|
51
68
|
});
|
|
52
69
|
export const DerivedCoreConfigSchema = CoreConfigBaseSchema.merge(z.object({
|
|
53
70
|
interchainAccountRouter: DerivedIcaRouterConfigSchema.optional(),
|
|
54
71
|
})).superRefine((val, ctx) => {
|
|
55
72
|
rejectRateLimitedDefaultIsm(val, ctx);
|
|
73
|
+
rejectWarpOnlyDefaultIsm(val, ctx);
|
|
56
74
|
rejectQuotedCallsWithLegacyIgp(val, ctx);
|
|
57
75
|
});
|
|
58
76
|
export const DeployedCoreAddressesSchema = ProxyFactoryFactoriesSchema.extend({
|
package/dist/core/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
package/dist/core/types.test.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { expect } from 'chai';
|
|
2
2
|
import { HookType, IgpVersion } from '../hook/types.js';
|
|
3
|
+
import { IsmType } from '../ism/types.js';
|
|
3
4
|
import { CoreConfigSchema } from './types.js';
|
|
4
5
|
const ADDRESS = '0x0000000000000000000000000000000000000001';
|
|
5
6
|
const igpHook = (igpVersion) => ({
|
|
@@ -18,6 +19,63 @@ const baseConfig = (overrides) => ({
|
|
|
18
19
|
requiredHook: ADDRESS,
|
|
19
20
|
...overrides,
|
|
20
21
|
});
|
|
22
|
+
describe('CoreConfigSchema warp-only default ISM guard', () => {
|
|
23
|
+
const netFlow = {
|
|
24
|
+
type: IsmType.NET_FLOW_RATE_LIMITED,
|
|
25
|
+
warpRouter: ADDRESS,
|
|
26
|
+
thresholdBps: 500,
|
|
27
|
+
duration: 86400n,
|
|
28
|
+
owner: ADDRESS,
|
|
29
|
+
};
|
|
30
|
+
const delayedFlow = {
|
|
31
|
+
type: IsmType.DELAYED_FLOW_ROUTER,
|
|
32
|
+
warpRouter: ADDRESS,
|
|
33
|
+
thresholdBps: 500,
|
|
34
|
+
maxDelay: 3600,
|
|
35
|
+
duration: 86400n,
|
|
36
|
+
owner: ADDRESS,
|
|
37
|
+
};
|
|
38
|
+
// DefaultIsm.route() returns mailbox.defaultIsm(); as the default ISM it
|
|
39
|
+
// resolves to itself and recurses until out of gas.
|
|
40
|
+
it('rejects DefaultIsm as the core default ISM', () => {
|
|
41
|
+
const result = CoreConfigSchema.safeParse(baseConfig({ defaultIsm: { type: IsmType.MAILBOX_DEFAULT } }));
|
|
42
|
+
expect(result.success).to.be.false;
|
|
43
|
+
});
|
|
44
|
+
it('rejects DefaultIsm nested inside a core default ISM tree', () => {
|
|
45
|
+
const result = CoreConfigSchema.safeParse(baseConfig({
|
|
46
|
+
defaultIsm: {
|
|
47
|
+
type: IsmType.AGGREGATION,
|
|
48
|
+
threshold: 2,
|
|
49
|
+
modules: [
|
|
50
|
+
{ type: IsmType.TRUSTED_RELAYER, relayer: ADDRESS },
|
|
51
|
+
{ type: IsmType.MAILBOX_DEFAULT },
|
|
52
|
+
],
|
|
53
|
+
},
|
|
54
|
+
}));
|
|
55
|
+
expect(result.success).to.be.false;
|
|
56
|
+
});
|
|
57
|
+
for (const hybrid of [netFlow, delayedFlow]) {
|
|
58
|
+
it(`rejects ${hybrid.type} nested in a core default ISM tree`, () => {
|
|
59
|
+
const result = CoreConfigSchema.safeParse(baseConfig({
|
|
60
|
+
defaultIsm: {
|
|
61
|
+
type: IsmType.AGGREGATION,
|
|
62
|
+
threshold: 2,
|
|
63
|
+
modules: [
|
|
64
|
+
{ type: IsmType.TRUSTED_RELAYER, relayer: ADDRESS },
|
|
65
|
+
hybrid,
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
}));
|
|
69
|
+
expect(result.success).to.be.false;
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
it('still accepts an ordinary default ISM', () => {
|
|
73
|
+
const result = CoreConfigSchema.safeParse(baseConfig({
|
|
74
|
+
defaultIsm: { type: IsmType.TRUSTED_RELAYER, relayer: ADDRESS },
|
|
75
|
+
}));
|
|
76
|
+
expect(result.success).to.be.true;
|
|
77
|
+
});
|
|
78
|
+
});
|
|
21
79
|
describe('CoreConfigSchema legacy IGP / QuotedCalls guard', () => {
|
|
22
80
|
it('rejects a legacy IGP hook when deployQuotedCalls is not false', () => {
|
|
23
81
|
const result = CoreConfigSchema.safeParse(baseConfig({ defaultHook: igpHook(IgpVersion.Legacy) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/core/types.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/core/types.test.ts"],"names":[],"mappings":"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"}
|
package/dist/deploy/warp.d.ts
CHANGED
|
@@ -4,10 +4,11 @@ import { type FeeReadContext } from '@hyperlane-xyz/provider-sdk/fee';
|
|
|
4
4
|
import { AnnotatedTx, TxReceipt } from '@hyperlane-xyz/provider-sdk/module';
|
|
5
5
|
import { WarpConfig as ProviderWarpConfig } from '@hyperlane-xyz/provider-sdk/warp';
|
|
6
6
|
import { Address } from '@hyperlane-xyz/utils';
|
|
7
|
+
import { DelayedFlowRouterHookIsmConfig } from '../ism/types.js';
|
|
7
8
|
import { MultiProvider } from '../providers/MultiProvider.js';
|
|
8
|
-
import { TypedAnnotatedTransaction } from '../providers/ProviderType.js';
|
|
9
|
-
import { WarpRouteDeployConfigMailboxRequired } from '../token/types.js';
|
|
10
|
-
import { ChainMap } from '../types.js';
|
|
9
|
+
import { AnnotatedEV5Transaction, TypedAnnotatedTransaction } from '../providers/ProviderType.js';
|
|
10
|
+
import { WarpRouteDeployConfig, WarpRouteDeployConfigMailboxRequired } from '../token/types.js';
|
|
11
|
+
import { ChainMap, ChainName } from '../types.js';
|
|
11
12
|
type ChainAddresses = Record<string, string>;
|
|
12
13
|
/**
|
|
13
14
|
* Builds a `FeeReadContext` directly from a warp deploy config, bypassing
|
|
@@ -23,7 +24,122 @@ type ChainAddresses = Record<string, string>;
|
|
|
23
24
|
*/
|
|
24
25
|
export declare function buildFeeReadContextFromWarpDeployConfig(config: WarpRouteDeployConfigMailboxRequired[string], chainLookup: ChainLookup): FeeReadContext;
|
|
25
26
|
export declare function validateWarpConfigForAltVM(config: WarpRouteDeployConfigMailboxRequired[string], chain: string, protocol?: ProtocolType): ProviderWarpConfig;
|
|
27
|
+
export type WarpDeployArgs = {
|
|
28
|
+
warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
|
|
29
|
+
multiProvider: MultiProvider;
|
|
30
|
+
altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>;
|
|
31
|
+
registryAddresses: ChainMap<ChainAddresses>;
|
|
32
|
+
apiKeys: ChainMap<string>;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Deploys a WHOLE warp route: its routers, plus the ISM and hook trees they
|
|
36
|
+
* install.
|
|
37
|
+
*
|
|
38
|
+
* Everything decidable from the config is decided before any gas is spent —
|
|
39
|
+
* the full `IsmConfigSchema`/`HookConfigSchema` refinement over both trees, the
|
|
40
|
+
* hybrid hook/ISM pairing (planWarpRouteHybrids), and the route-scoped
|
|
41
|
+
* delayed-flow invariants. The route-scoped ones read the config's chain set as
|
|
42
|
+
* "the route", so they belong to this entry point alone: shrinking the config
|
|
43
|
+
* does not narrow them, it enlarges what counts as outside the route. Use
|
|
44
|
+
* `executeWarpRouteExtensionDeploy` for the chains an extension adds.
|
|
45
|
+
*/
|
|
26
46
|
export declare function executeWarpDeploy(warpDeployConfig: WarpRouteDeployConfigMailboxRequired, multiProvider: MultiProvider, altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>, registryAddresses: ChainMap<ChainAddresses>, apiKeys: ChainMap<string>): Promise<ChainMap<Address>>;
|
|
47
|
+
/**
|
|
48
|
+
* Deploys the chains an extension adds to an EXISTING route.
|
|
49
|
+
*
|
|
50
|
+
* Same engine as `executeWarpDeploy`, minus the invariants that measure the
|
|
51
|
+
* route by the config's own chain set — the caller holds the full route config
|
|
52
|
+
* and has already checked those (runWarpRouteApply). Everything per chain still
|
|
53
|
+
* runs here, so an extension cannot deploy a chain whose composition can never
|
|
54
|
+
* work.
|
|
55
|
+
*
|
|
56
|
+
* A separate entry point rather than a flag: which validation applies is a
|
|
57
|
+
* property of what the caller is deploying, not something to infer from the
|
|
58
|
+
* shape of the config it happens to pass.
|
|
59
|
+
*/
|
|
60
|
+
export declare function executeWarpRouteExtensionDeploy(warpDeployConfig: WarpRouteDeployConfigMailboxRequired, multiProvider: MultiProvider, altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>, registryAddresses: ChainMap<ChainAddresses>, apiKeys: ChainMap<string>): Promise<ChainMap<Address>>;
|
|
61
|
+
export type DelayedFlowEnrollmentTarget = {
|
|
62
|
+
ismAddress: Address;
|
|
63
|
+
userNode: DelayedFlowRouterHookIsmConfig;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* Whole-route coverage: every leg carries an instance
|
|
67
|
+
* (assertDelayedFlowLegCoverage), and a `remoteRouters` entry naming a chain
|
|
68
|
+
* outside the route has to enroll that counterpart explicitly
|
|
69
|
+
* (assertDelayedFlowRemoteRouterCoverage).
|
|
70
|
+
*
|
|
71
|
+
* Correct only against the FULL route config. Shrinking the config enlarges
|
|
72
|
+
* what counts as outside the route, so running this on a subset — the single
|
|
73
|
+
* chain `warp apply` deploys per extension, say — rejects `remoteRouters`
|
|
74
|
+
* entries naming the very legs that chain is joining.
|
|
75
|
+
*/
|
|
76
|
+
export declare function assertDelayedFlowRouteCoverage({ multiProvider, warpDeployConfig, }: {
|
|
77
|
+
multiProvider: MultiProvider;
|
|
78
|
+
warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
|
|
79
|
+
}): void;
|
|
80
|
+
/**
|
|
81
|
+
* The full delayed-flow preconditions for a whole route, checked before any
|
|
82
|
+
* on-chain work: assertDelayedFlowRouteCoverage — which adds the route-scoped
|
|
83
|
+
* external `remoteRouters` check to the leg coverage above — and the
|
|
84
|
+
* mailbox nonce guard.
|
|
85
|
+
*
|
|
86
|
+
* Call this with every chain of the route. The CLI entry points do
|
|
87
|
+
* (runWarpRouteDeploy, runWarpRouteApply); executeWarpDeploy cannot, because
|
|
88
|
+
* an extension reaches it one chain at a time.
|
|
89
|
+
*/
|
|
90
|
+
export declare function assertDelayedFlowRoutePreconditions({ multiProvider, warpDeployConfig, }: {
|
|
91
|
+
multiProvider: MultiProvider;
|
|
92
|
+
warpDeployConfig: WarpRouteDeployConfigMailboxRequired;
|
|
93
|
+
}): Promise<void>;
|
|
94
|
+
/**
|
|
95
|
+
* Resolves the shared hybrid instance behind each chain's ISM tree.
|
|
96
|
+
*
|
|
97
|
+
* Callers pass whichever tree is authoritative for them: the address a run has
|
|
98
|
+
* just deployed but not yet installed, or the tree already on the router.
|
|
99
|
+
* Nothing here guesses between the two — a caller that knows both states knows
|
|
100
|
+
* which one it means.
|
|
101
|
+
*/
|
|
102
|
+
export declare function resolveHybridIsmAddresses(multiProvider: MultiProvider, ismTreeAddresses: ChainMap<Address>): Promise<ChainMap<Address>>;
|
|
103
|
+
/**
|
|
104
|
+
* Resolves the hybrid instance installed on each router, by reading the ISM the
|
|
105
|
+
* router currently points at. Used by callers holding only routers, such as
|
|
106
|
+
* `warp apply` on chains it is not re-deploying.
|
|
107
|
+
*/
|
|
108
|
+
export declare function readInstalledHybridIsmAddresses(multiProvider: MultiProvider, routers: ChainMap<Address>): Promise<ChainMap<Address>>;
|
|
109
|
+
/**
|
|
110
|
+
* Pairs the route's DelayedFlowRouterHookIsm instances so each one's enrollment
|
|
111
|
+
* transactions can name every other one.
|
|
112
|
+
*
|
|
113
|
+
* `hybridIsmAddresses` is supplied by the caller (resolveHybridIsmAddresses /
|
|
114
|
+
* readInstalledHybridIsmAddresses) rather than re-derived here: which tree is
|
|
115
|
+
* authoritative differs per caller, and a chain whose instance the caller could
|
|
116
|
+
* not resolve is skipped rather than silently paired against a stale one. The
|
|
117
|
+
* config node is carried through as `userNode` so configured external
|
|
118
|
+
* `remoteIsms` are merged with the route-derived pairing.
|
|
119
|
+
*/
|
|
120
|
+
export declare function deriveDelayedFlowEnrollmentTargets(multiProvider: MultiProvider, warpDeployConfig: WarpRouteDeployConfig, deployedContracts: ChainMap<Address>, hybridIsmAddresses?: ChainMap<Address>): Promise<ChainMap<DelayedFlowEnrollmentTarget>>;
|
|
121
|
+
/**
|
|
122
|
+
* Builds the enrollment transactions for one chain's
|
|
123
|
+
* DelayedFlowRouterHookIsm: enrolls every other chain's instance as a remote
|
|
124
|
+
* counterpart, plus configured peers outside the route, and
|
|
125
|
+
* optionally transfers ownership to the configured owner LAST (the enrollment
|
|
126
|
+
* calls are owner-gated). Converges to zero transactions once the on-chain
|
|
127
|
+
* state already matches.
|
|
128
|
+
*
|
|
129
|
+
* Shared by the deploy flow (deployer-owned instances) and `warp apply`
|
|
130
|
+
* (instances that may be owned by a Safe/ICA — the returned transactions carry
|
|
131
|
+
* no signing assumptions and ride whichever submitter the caller uses).
|
|
132
|
+
*/
|
|
133
|
+
export declare function buildDelayedFlowEnrollmentTxs({ chain, multiProvider, registryAddresses, warpRouter, target, allTargets, reconcileOwnership, }: {
|
|
134
|
+
chain: ChainName;
|
|
135
|
+
multiProvider: MultiProvider;
|
|
136
|
+
registryAddresses: ChainMap<ChainAddresses>;
|
|
137
|
+
warpRouter: Address;
|
|
138
|
+
target: DelayedFlowEnrollmentTarget;
|
|
139
|
+
allTargets: ChainMap<DelayedFlowEnrollmentTarget>;
|
|
140
|
+
/** Preserve the current owner when ownership is handled by another phase. */
|
|
141
|
+
reconcileOwnership?: boolean;
|
|
142
|
+
}): Promise<AnnotatedEV5Transaction[]>;
|
|
27
143
|
export declare function enrollCrossChainRouters({ multiProvider, altVmSigners, registryAddresses, warpDeployConfig, }: {
|
|
28
144
|
multiProvider: MultiProvider;
|
|
29
145
|
altVmSigners: ChainMap<AltVM.ISigner<AnnotatedTx, TxReceipt>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../src/deploy/warp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"warp.d.ts","sourceRoot":"","sources":["../../src/deploy/warp.ts"],"names":[],"mappings":"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"}
|