@hyperlane-xyz/rebalancer 1.0.0 → 1.0.2
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/factories/RebalancerContextFactory.d.ts +2 -0
- package/dist/factories/RebalancerContextFactory.d.ts.map +1 -1
- package/dist/factories/RebalancerContextFactory.js +21 -9
- package/dist/factories/RebalancerContextFactory.js.map +1 -1
- package/dist/monitor/Monitor.d.ts +0 -1
- package/dist/monitor/Monitor.d.ts.map +1 -1
- package/dist/monitor/Monitor.js +2 -17
- package/dist/monitor/Monitor.js.map +1 -1
- package/dist/tracking/ActionTracker.d.ts +6 -2
- package/dist/tracking/ActionTracker.d.ts.map +1 -1
- package/dist/tracking/ActionTracker.js +19 -23
- package/dist/tracking/ActionTracker.js.map +1 -1
- package/dist/tracking/ActionTracker.test.js +105 -35
- package/dist/tracking/ActionTracker.test.js.map +1 -1
- package/dist/utils/blockTag.d.ts +14 -0
- package/dist/utils/blockTag.d.ts.map +1 -0
- package/dist/utils/blockTag.js +26 -0
- package/dist/utils/blockTag.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/package.json +7 -7
- package/src/factories/RebalancerContextFactory.ts +29 -9
- package/src/monitor/Monitor.ts +7 -30
- package/src/tracking/ActionTracker.test.ts +120 -37
- package/src/tracking/ActionTracker.ts +32 -38
- package/src/utils/blockTag.ts +42 -0
- package/src/utils/index.ts +1 -0
|
@@ -12,6 +12,7 @@ export declare class RebalancerContextFactory {
|
|
|
12
12
|
private readonly warpCore;
|
|
13
13
|
private readonly tokensByChainName;
|
|
14
14
|
private readonly multiProvider;
|
|
15
|
+
private readonly multiProtocolProvider;
|
|
15
16
|
private readonly registry;
|
|
16
17
|
private readonly logger;
|
|
17
18
|
/**
|
|
@@ -19,6 +20,7 @@ export declare class RebalancerContextFactory {
|
|
|
19
20
|
* @param warpCore - An instance of `WarpCore` configured for the specified `warpRouteId`.
|
|
20
21
|
* @param tokensByChainName - A map of chain->token to ease the lookup of token by chain
|
|
21
22
|
* @param multiProvider - MultiProvider instance
|
|
23
|
+
* @param multiProtocolProvider - MultiProtocolProvider instance (with mailbox metadata)
|
|
22
24
|
* @param registry - IRegistry instance
|
|
23
25
|
* @param logger - Logger instance
|
|
24
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RebalancerContextFactory.d.ts","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,
|
|
1
|
+
{"version":3,"file":"RebalancerContextFactory.d.ts","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAIL,qBAAqB,EACrB,aAAa,EACb,KAAK,KAAK,EACV,QAAQ,EACT,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEhD,OAAO,EAGL,KAAK,cAAc,EAEnB,sBAAsB,EAOvB,MAAM,sBAAsB,CAAC;AAO9B,qBAAa,wBAAwB;IAWjC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAhBzB;;;;;;;;OAQG;IACH,OAAO;IAUP;;;;;;OAMG;WACiB,MAAM,CACxB,MAAM,EAAE,gBAAgB,EACxB,aAAa,EAAE,aAAa,EAC5B,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,EACxD,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,wBAAwB,CAAC;IAkD7B,WAAW,IAAI,QAAQ;IAIvB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAIhD,aAAa,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuB/D,aAAa,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAWxC,cAAc,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC;IAqB3D,gBAAgB,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW;IAkBvD;;;;;OAKG;IACU,mBAAmB,CAC9B,WAAW,GAAE,MAA6B,GACzC,OAAO,CAAC;QACT,OAAO,EAAE,cAAc,CAAC;QACxB,OAAO,EAAE,sBAAsB,CAAC;KACjC,CAAC;YA2FY,yBAAyB;CAsBxC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MultiProtocolCore, MultiProtocolProvider, WarpCore, } from '@hyperlane-xyz/sdk';
|
|
2
2
|
import { objMap } from '@hyperlane-xyz/utils';
|
|
3
3
|
import { getAllBridges, getStrategyChainNames } from '../config/types.js';
|
|
4
4
|
import { Rebalancer } from '../core/Rebalancer.js';
|
|
@@ -15,6 +15,7 @@ export class RebalancerContextFactory {
|
|
|
15
15
|
warpCore;
|
|
16
16
|
tokensByChainName;
|
|
17
17
|
multiProvider;
|
|
18
|
+
multiProtocolProvider;
|
|
18
19
|
registry;
|
|
19
20
|
logger;
|
|
20
21
|
/**
|
|
@@ -22,14 +23,16 @@ export class RebalancerContextFactory {
|
|
|
22
23
|
* @param warpCore - An instance of `WarpCore` configured for the specified `warpRouteId`.
|
|
23
24
|
* @param tokensByChainName - A map of chain->token to ease the lookup of token by chain
|
|
24
25
|
* @param multiProvider - MultiProvider instance
|
|
26
|
+
* @param multiProtocolProvider - MultiProtocolProvider instance (with mailbox metadata)
|
|
25
27
|
* @param registry - IRegistry instance
|
|
26
28
|
* @param logger - Logger instance
|
|
27
29
|
*/
|
|
28
|
-
constructor(config, warpCore, tokensByChainName, multiProvider, registry, logger) {
|
|
30
|
+
constructor(config, warpCore, tokensByChainName, multiProvider, multiProtocolProvider, registry, logger) {
|
|
29
31
|
this.config = config;
|
|
30
32
|
this.warpCore = warpCore;
|
|
31
33
|
this.tokensByChainName = tokensByChainName;
|
|
32
34
|
this.multiProvider = multiProvider;
|
|
35
|
+
this.multiProtocolProvider = multiProtocolProvider;
|
|
33
36
|
this.registry = registry;
|
|
34
37
|
this.logger = logger;
|
|
35
38
|
}
|
|
@@ -51,17 +54,17 @@ export class RebalancerContextFactory {
|
|
|
51
54
|
// Create MultiProtocolProvider (convert from MultiProvider if not provided)
|
|
52
55
|
const mpp = multiProtocolProvider ??
|
|
53
56
|
MultiProtocolProvider.fromMultiProvider(multiProvider);
|
|
54
|
-
const
|
|
57
|
+
const extendedMultiProtocolProvider = mpp.extendChainMetadata(mailboxes);
|
|
55
58
|
const warpCoreConfig = await registry.getWarpRoute(config.warpRouteId);
|
|
56
59
|
if (!warpCoreConfig) {
|
|
57
60
|
throw new Error(`Warp route config for ${config.warpRouteId} not found in registry`);
|
|
58
61
|
}
|
|
59
|
-
const warpCore = WarpCore.FromConfig(
|
|
62
|
+
const warpCore = WarpCore.FromConfig(extendedMultiProtocolProvider, warpCoreConfig);
|
|
60
63
|
const tokensByChainName = Object.fromEntries(warpCore.tokens.map((t) => [t.chainName, t]));
|
|
61
64
|
logger.debug({
|
|
62
65
|
warpRouteId: config.warpRouteId,
|
|
63
66
|
}, 'RebalancerContextFactory created successfully');
|
|
64
|
-
return new RebalancerContextFactory(config, warpCore, tokensByChainName, multiProvider, registry, logger);
|
|
67
|
+
return new RebalancerContextFactory(config, warpCore, tokensByChainName, multiProvider, extendedMultiProtocolProvider, registry, logger);
|
|
65
68
|
}
|
|
66
69
|
getWarpCore() {
|
|
67
70
|
return this.warpCore;
|
|
@@ -110,9 +113,18 @@ export class RebalancerContextFactory {
|
|
|
110
113
|
const actionStore = new InMemoryStore();
|
|
111
114
|
// 2. Create ExplorerClient
|
|
112
115
|
const explorerClient = new ExplorerClient(explorerUrl);
|
|
113
|
-
// 3. Get
|
|
114
|
-
|
|
115
|
-
const
|
|
116
|
+
// 3. Get MultiProtocolCore from registry (supports all VM types)
|
|
117
|
+
// Only fetch/validate addresses for warp route chains (not all registry chains)
|
|
118
|
+
const warpRouteChains = new Set(this.warpCore.tokens.map((t) => t.chainName));
|
|
119
|
+
const coreAddresses = {};
|
|
120
|
+
for (const chain of warpRouteChains) {
|
|
121
|
+
const addrs = await this.registry.getChainAddresses(chain);
|
|
122
|
+
if (!addrs?.mailbox) {
|
|
123
|
+
throw new Error(`Missing mailbox address for chain ${chain} in registry`);
|
|
124
|
+
}
|
|
125
|
+
coreAddresses[chain] = addrs;
|
|
126
|
+
}
|
|
127
|
+
const multiProtocolCore = MultiProtocolCore.fromAddressesMap(coreAddresses, this.multiProtocolProvider);
|
|
116
128
|
// 4. Get rebalancer address from signer
|
|
117
129
|
// Use the first chain in the strategy to get the signer address
|
|
118
130
|
const chainNames = getStrategyChainNames(this.config.strategyConfig);
|
|
@@ -134,7 +146,7 @@ export class RebalancerContextFactory {
|
|
|
134
146
|
rebalancerAddress,
|
|
135
147
|
};
|
|
136
148
|
// 6. Create ActionTracker
|
|
137
|
-
const tracker = new ActionTracker(transferStore, intentStore, actionStore, explorerClient,
|
|
149
|
+
const tracker = new ActionTracker(transferStore, intentStore, actionStore, explorerClient, multiProtocolCore, trackerConfig, this.logger);
|
|
138
150
|
// 7. Create InflightContextAdapter
|
|
139
151
|
const adapter = new InflightContextAdapter(tracker, this.multiProvider);
|
|
140
152
|
this.logger.debug({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RebalancerContextFactory.js","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"RebalancerContextFactory.js","sourceRoot":"","sources":["../../src/factories/RebalancerContextFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,6 @@ export declare class Monitor implements IMonitor {
|
|
|
19
19
|
* @param checkFrequency - The frequency to poll balances in ms.
|
|
20
20
|
*/
|
|
21
21
|
constructor(checkFrequency: number, warpCore: WarpCore, logger: Logger);
|
|
22
|
-
private getConfirmedBlockTag;
|
|
23
22
|
private computeConfirmedBlockTags;
|
|
24
23
|
on(eventName: MonitorEventType.TokenInfo, fn: (event: MonitorEvent) => void | Promise<void>): this;
|
|
25
24
|
on(eventName: MonitorEventType.Error, fn: (event: Error) => void): this;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,
|
|
1
|
+
{"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG/D,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,YAAY,EACjB,gBAAgB,EAGjB,MAAM,2BAA2B,CAAC;AAGnC;;;GAGG;AACH,qBAAa,OAAQ,YAAW,QAAQ;IAYpC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAbzB,OAAO,CAAC,gBAAgB,CAAC,CAAgD;IACzE,OAAO,CAAC,YAAY,CAAC,CAAyB;IAC9C,OAAO,CAAC,YAAY,CAAC,CAAa;IAClC,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,WAAW,CAA8B;IAEjD;;OAEG;gBAEgB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM;YAGnB,yBAAyB;IAgBvC,EAAE,CACA,SAAS,EAAE,gBAAgB,CAAC,SAAS,EACrC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAChD,IAAI;IACP,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI;IACvE,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IAkBrD,KAAK;YA6FG,qBAAqB;IAmDnC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAiBtB"}
|
package/dist/monitor/Monitor.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { sleep } from '@hyperlane-xyz/utils';
|
|
2
2
|
import { MonitorEventType, MonitorPollingError, MonitorStartError, } from '../interfaces/IMonitor.js';
|
|
3
|
+
import { getConfirmedBlockTag } from '../utils/blockTag.js';
|
|
3
4
|
/**
|
|
4
5
|
* Simple monitor implementation that polls warp route collateral balances and emits them as MonitorEvent.
|
|
5
6
|
* Awaits the TokenInfo handler before starting the next cycle to prevent race conditions.
|
|
@@ -22,27 +23,11 @@ export class Monitor {
|
|
|
22
23
|
this.warpCore = warpCore;
|
|
23
24
|
this.logger = logger;
|
|
24
25
|
}
|
|
25
|
-
async getConfirmedBlockTag(chainName) {
|
|
26
|
-
try {
|
|
27
|
-
const metadata = this.warpCore.multiProvider.getChainMetadata(chainName);
|
|
28
|
-
const reorgPeriod = metadata.blocks?.reorgPeriod ?? 32;
|
|
29
|
-
if (typeof reorgPeriod === 'string') {
|
|
30
|
-
return reorgPeriod;
|
|
31
|
-
}
|
|
32
|
-
const provider = this.warpCore.multiProvider.getEthersV5Provider(chainName);
|
|
33
|
-
const latestBlock = await provider.getBlockNumber();
|
|
34
|
-
return Math.max(0, latestBlock - reorgPeriod);
|
|
35
|
-
}
|
|
36
|
-
catch (error) {
|
|
37
|
-
this.logger.warn({ chain: chainName, error: error.message }, 'Failed to get confirmed block, using latest');
|
|
38
|
-
return undefined;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
26
|
async computeConfirmedBlockTags() {
|
|
42
27
|
const blockTags = {};
|
|
43
28
|
const chains = new Set(this.warpCore.tokens.map((t) => t.chainName));
|
|
44
29
|
for (const chain of chains) {
|
|
45
|
-
blockTags[chain] = await this.
|
|
30
|
+
blockTags[chain] = await getConfirmedBlockTag(this.warpCore.multiProvider, chain, this.logger);
|
|
46
31
|
}
|
|
47
32
|
return blockTags;
|
|
48
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Monitor.js","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Monitor.js","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Logger } from 'pino';
|
|
2
|
-
import type {
|
|
2
|
+
import type { MultiProtocolCore } from '@hyperlane-xyz/sdk';
|
|
3
3
|
import type { Address, Domain } from '@hyperlane-xyz/utils';
|
|
4
4
|
import type { ConfirmedBlockTags } from '../interfaces/IMonitor.js';
|
|
5
5
|
import type { ExplorerClient } from '../utils/ExplorerClient.js';
|
|
@@ -21,7 +21,7 @@ export declare class ActionTracker implements IActionTracker {
|
|
|
21
21
|
private readonly core;
|
|
22
22
|
private readonly config;
|
|
23
23
|
private readonly logger;
|
|
24
|
-
constructor(transferStore: ITransferStore, rebalanceIntentStore: IRebalanceIntentStore, rebalanceActionStore: IRebalanceActionStore, explorerClient: ExplorerClient, core:
|
|
24
|
+
constructor(transferStore: ITransferStore, rebalanceIntentStore: IRebalanceIntentStore, rebalanceActionStore: IRebalanceActionStore, explorerClient: ExplorerClient, core: MultiProtocolCore, config: ActionTrackerConfig, logger: Logger);
|
|
25
25
|
initialize(): Promise<void>;
|
|
26
26
|
syncTransfers(confirmedBlockTags?: ConfirmedBlockTags): Promise<void>;
|
|
27
27
|
syncRebalanceIntents(): Promise<void>;
|
|
@@ -42,6 +42,10 @@ export declare class ActionTracker implements IActionTracker {
|
|
|
42
42
|
* Logs each item separately for full visibility (avoids [Object] truncation).
|
|
43
43
|
*/
|
|
44
44
|
logStoreContents(): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Get the confirmed block tag for delivery checks.
|
|
47
|
+
* Uses cached value from Monitor event if available, otherwise computes on-demand.
|
|
48
|
+
*/
|
|
45
49
|
private getConfirmedBlockTag;
|
|
46
50
|
private isMessageDelivered;
|
|
47
51
|
private recoverAction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionTracker.d.ts","sourceRoot":"","sources":["../../src/tracking/ActionTracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ActionTracker.d.ts","sourceRoot":"","sources":["../../src/tracking/ActionTracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC3B,cAAc,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EACV,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,eAAe,EACf,eAAe,EACf,QAAQ,EACT,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,aAAc,YAAW,cAAc;IAEhD,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBANN,aAAa,EAAE,cAAc,EAC7B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,qBAAqB,EAC3C,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,iBAAiB,EACvB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,MAAM;IAK3B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C3B,aAAa,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsGrE,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBrC,oBAAoB,CACxB,kBAAkB,CAAC,EAAE,kBAAkB,GACtC,OAAO,CAAC,IAAI,CAAC;IA2EV,sBAAsB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAI7C,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAMnE,yBAAyB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAMvD,gCAAgC,CACpC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC;IAMvB,qBAAqB,CACzB,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,eAAe,CAAC;IAwBrB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlD,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9C,qBAAqB,CACzB,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,eAAe,CAAC;IAoCrB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BlD,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOpD;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwEvC;;;OAGG;YACW,oBAAoB;YAmBpB,kBAAkB;YA0BlB,aAAa;CA8E5B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { v4 as uuidv4 } from 'uuid';
|
|
2
2
|
import { parseWarpRouteMessage } from '@hyperlane-xyz/utils';
|
|
3
|
+
import { getConfirmedBlockTag } from '../utils/blockTag.js';
|
|
3
4
|
/**
|
|
4
5
|
* ActionTracker implementation managing the lifecycle of tracked entities.
|
|
5
6
|
*/
|
|
@@ -102,8 +103,7 @@ export class ActionTracker {
|
|
|
102
103
|
}
|
|
103
104
|
const existingTransfers = await this.getInProgressTransfers();
|
|
104
105
|
for (const transfer of existingTransfers) {
|
|
105
|
-
const
|
|
106
|
-
const blockTag = confirmedBlockTags?.[chainName];
|
|
106
|
+
const blockTag = await this.getConfirmedBlockTag(transfer.destination, confirmedBlockTags);
|
|
107
107
|
const delivered = await this.isMessageDelivered(transfer.messageId, transfer.destination, blockTag);
|
|
108
108
|
if (delivered) {
|
|
109
109
|
await this.transferStore.update(transfer.id, { status: 'complete' });
|
|
@@ -157,8 +157,7 @@ export class ActionTracker {
|
|
|
157
157
|
}
|
|
158
158
|
const inProgressActions = await this.rebalanceActionStore.getByStatus('in_progress');
|
|
159
159
|
for (const action of inProgressActions) {
|
|
160
|
-
const
|
|
161
|
-
const blockTag = confirmedBlockTags?.[chainName];
|
|
160
|
+
const blockTag = await this.getConfirmedBlockTag(action.destination, confirmedBlockTags);
|
|
162
161
|
const delivered = await this.isMessageDelivered(action.messageId, action.destination, blockTag);
|
|
163
162
|
if (delivered) {
|
|
164
163
|
await this.completeRebalanceAction(action.id);
|
|
@@ -326,29 +325,26 @@ export class ActionTracker {
|
|
|
326
325
|
}
|
|
327
326
|
}
|
|
328
327
|
// === Private Helpers ===
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
return Math.max(0, latestBlock - reorgPeriod);
|
|
339
|
-
}
|
|
340
|
-
catch (error) {
|
|
341
|
-
this.logger.warn({ chain: chainName, error: error.message }, 'Failed to get confirmed block, using latest');
|
|
342
|
-
return undefined;
|
|
328
|
+
/**
|
|
329
|
+
* Get the confirmed block tag for delivery checks.
|
|
330
|
+
* Uses cached value from Monitor event if available, otherwise computes on-demand.
|
|
331
|
+
*/
|
|
332
|
+
async getConfirmedBlockTag(destination, confirmedBlockTags) {
|
|
333
|
+
const chainName = this.core.multiProvider.getChainName(destination);
|
|
334
|
+
// If tags provided (from Monitor event), use cached value
|
|
335
|
+
if (confirmedBlockTags) {
|
|
336
|
+
return confirmedBlockTags[chainName];
|
|
343
337
|
}
|
|
338
|
+
// Otherwise compute on-demand (e.g., during initialize())
|
|
339
|
+
return getConfirmedBlockTag(this.core.multiProvider, chainName, this.logger);
|
|
344
340
|
}
|
|
345
|
-
async isMessageDelivered(messageId, destination,
|
|
341
|
+
async isMessageDelivered(messageId, destination, blockTag) {
|
|
346
342
|
try {
|
|
347
343
|
const chainName = this.core.multiProvider.getChainName(destination);
|
|
348
|
-
const
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
this.logger.debug({ messageId, destination: chainName,
|
|
344
|
+
const delivered = await this.core
|
|
345
|
+
.adapter(chainName)
|
|
346
|
+
.isDelivered(messageId, blockTag);
|
|
347
|
+
this.logger.debug({ messageId, destination: chainName, delivered, blockTag }, 'Checked message delivery');
|
|
352
348
|
return delivered;
|
|
353
349
|
}
|
|
354
350
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionTracker.js","sourceRoot":"","sources":["../../src/tracking/ActionTracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ActionTracker.js","sourceRoot":"","sources":["../../src/tracking/ActionTracker.ts"],"names":[],"mappings":"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"}
|