@gzeoneth/gov-tracker 0.1.2 → 0.2.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/abis.d.ts +0 -32
- package/dist/abis.d.ts.map +1 -1
- package/dist/abis.js +17 -17
- package/dist/abis.js.map +1 -1
- package/dist/calldata/decoder.d.ts +12 -3
- package/dist/calldata/decoder.d.ts.map +1 -1
- package/dist/calldata/decoder.js +50 -9
- package/dist/calldata/decoder.js.map +1 -1
- package/dist/calldata/index.d.ts +4 -7
- package/dist/calldata/index.d.ts.map +1 -1
- package/dist/calldata/index.js +5 -19
- package/dist/calldata/index.js.map +1 -1
- package/dist/calldata/parameter-decoder.d.ts +11 -2
- package/dist/calldata/parameter-decoder.d.ts.map +1 -1
- package/dist/calldata/parameter-decoder.js +61 -2
- package/dist/calldata/parameter-decoder.js.map +1 -1
- package/dist/calldata/retryable-ticket.d.ts +1 -17
- package/dist/calldata/retryable-ticket.d.ts.map +1 -1
- package/dist/calldata/retryable-ticket.js +10 -17
- package/dist/calldata/retryable-ticket.js.map +1 -1
- package/dist/calldata/signature-lookup.d.ts +0 -11
- package/dist/calldata/signature-lookup.d.ts.map +1 -1
- package/dist/calldata/signature-lookup.js +0 -8
- package/dist/calldata/signature-lookup.js.map +1 -1
- package/dist/cli/lib/cli.d.ts +1 -3
- package/dist/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +7 -21
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/cli/lib/election-check.d.ts +2 -2
- package/dist/cli/lib/election-check.d.ts.map +1 -1
- package/dist/cli/lib/election-check.js.map +1 -1
- package/dist/cli/lib/json-state.d.ts +2 -29
- package/dist/cli/lib/json-state.d.ts.map +1 -1
- package/dist/cli/lib/json-state.js +0 -45
- package/dist/cli/lib/json-state.js.map +1 -1
- package/dist/cli/monitor.js +1 -2
- package/dist/cli/monitor.js.map +1 -1
- package/dist/constants.d.ts +41 -7
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +64 -4
- package/dist/constants.js.map +1 -1
- package/dist/discovery/timelock-discovery.js +1 -1
- package/dist/discovery/timelock-discovery.js.map +1 -1
- package/dist/election.d.ts.map +1 -1
- package/dist/election.js +7 -4
- package/dist/election.js.map +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -13
- package/dist/index.js.map +1 -1
- package/dist/simulation/index.d.ts +3 -4
- package/dist/simulation/index.d.ts.map +1 -1
- package/dist/simulation/index.js +3 -9
- package/dist/simulation/index.js.map +1 -1
- package/dist/simulation/simulation-data.d.ts +6 -31
- package/dist/simulation/simulation-data.d.ts.map +1 -1
- package/dist/simulation/simulation-data.js +25 -58
- package/dist/simulation/simulation-data.js.map +1 -1
- package/dist/stages/base.d.ts.map +1 -1
- package/dist/stages/base.js +4 -1
- package/dist/stages/base.js.map +1 -1
- package/dist/stages/l2-to-l1-message.d.ts.map +1 -1
- package/dist/stages/l2-to-l1-message.js +7 -6
- package/dist/stages/l2-to-l1-message.js.map +1 -1
- package/dist/stages/proposal-created.js +2 -2
- package/dist/stages/proposal-created.js.map +1 -1
- package/dist/stages/proposal-queued.d.ts.map +1 -1
- package/dist/stages/proposal-queued.js +11 -10
- package/dist/stages/proposal-queued.js.map +1 -1
- package/dist/stages/retryables.d.ts +5 -5
- package/dist/stages/retryables.d.ts.map +1 -1
- package/dist/stages/retryables.js +68 -53
- package/dist/stages/retryables.js.map +1 -1
- package/dist/stages/stage-builder.d.ts +5 -4
- package/dist/stages/stage-builder.d.ts.map +1 -1
- package/dist/stages/stage-builder.js +7 -2
- package/dist/stages/stage-builder.js.map +1 -1
- package/dist/stages/timelock.d.ts +1 -22
- package/dist/stages/timelock.d.ts.map +1 -1
- package/dist/stages/timelock.js +18 -10
- package/dist/stages/timelock.js.map +1 -1
- package/dist/stages/voting.js +1 -1
- package/dist/stages/voting.js.map +1 -1
- package/dist/tracker/context.js +1 -1
- package/dist/tracker/context.js.map +1 -1
- package/dist/tracker/execute.js +1 -1
- package/dist/tracker/pipeline.d.ts +0 -29
- package/dist/tracker/pipeline.d.ts.map +1 -1
- package/dist/tracker/pipeline.js +2 -8
- package/dist/tracker/pipeline.js.map +1 -1
- package/dist/tracker/query.js +1 -1
- package/dist/tracker/query.js.map +1 -1
- package/dist/tracker.js +2 -2
- package/dist/tracker.js.map +1 -1
- package/dist/types/calldata.d.ts +4 -6
- package/dist/types/calldata.d.ts.map +1 -1
- package/dist/types/core.d.ts +36 -34
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js +33 -0
- package/dist/types/core.js.map +1 -1
- package/dist/types/cross-chain.d.ts +5 -61
- package/dist/types/cross-chain.d.ts.map +1 -1
- package/dist/types/election.d.ts +3 -6
- package/dist/types/election.d.ts.map +1 -1
- package/dist/types/index.d.ts +7 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +6 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/simulation.d.ts +5 -7
- package/dist/types/simulation.d.ts.map +1 -1
- package/dist/types/stages.d.ts +19 -16
- package/dist/types/stages.d.ts.map +1 -1
- package/dist/types/stages.js +8 -1
- package/dist/types/stages.js.map +1 -1
- package/dist/types/tracking.d.ts +3 -30
- package/dist/types/tracking.d.ts.map +1 -1
- package/dist/utils/chain.d.ts +7 -3
- package/dist/utils/chain.d.ts.map +1 -1
- package/dist/utils/chain.js +13 -9
- package/dist/utils/chain.js.map +1 -1
- package/dist/utils/logger.d.ts +9 -3
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +53 -19
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/rpc-utils.d.ts +7 -8
- package/dist/utils/rpc-utils.d.ts.map +1 -1
- package/dist/utils/rpc-utils.js +20 -2
- package/dist/utils/rpc-utils.js.map +1 -1
- package/dist/utils/salt-computation.d.ts.map +1 -1
- package/dist/utils/salt-computation.js +2 -3
- package/dist/utils/salt-computation.js.map +1 -1
- package/dist/utils/stage-helpers.d.ts +5 -6
- package/dist/utils/stage-helpers.d.ts.map +1 -1
- package/dist/utils/stage-helpers.js +2 -10
- package/dist/utils/stage-helpers.js.map +1 -1
- package/dist/utils/stage-metadata.d.ts +2 -2
- package/dist/utils/stage-metadata.d.ts.map +1 -1
- package/dist/utils/stage-metadata.js +5 -5
- package/dist/utils/stage-metadata.js.map +1 -1
- package/package.json +8 -5
- package/dist/calldata/address-utils.d.ts +0 -23
- package/dist/calldata/address-utils.d.ts.map +0 -1
- package/dist/calldata/address-utils.js +0 -84
- package/dist/calldata/address-utils.js.map +0 -1
- package/dist/calldata/extraction.d.ts +0 -17
- package/dist/calldata/extraction.d.ts.map +0 -1
- package/dist/calldata/extraction.js +0 -56
- package/dist/calldata/extraction.js.map +0 -1
- package/dist/tracker/index.d.ts +0 -18
- package/dist/tracker/index.d.ts.map +0 -1
- package/dist/tracker/index.js +0 -70
- package/dist/tracker/index.js.map +0 -1
- package/dist/types.d.ts +0 -6
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -22
- package/dist/types.js.map +0 -1
- package/dist/utils/error-classification.d.ts +0 -13
- package/dist/utils/error-classification.d.ts.map +0 -1
- package/dist/utils/error-classification.js +0 -28
- package/dist/utils/error-classification.js.map +0 -1
- package/dist/utils/scoped-logger.d.ts +0 -43
- package/dist/utils/scoped-logger.d.ts.map +0 -1
- package/dist/utils/scoped-logger.js +0 -72
- package/dist/utils/scoped-logger.js.map +0 -1
- package/dist/utils/urls.d.ts +0 -28
- package/dist/utils/urls.d.ts.map +0 -1
- package/dist/utils/urls.js +0 -71
- package/dist/utils/urls.js.map +0 -1
|
@@ -17,8 +17,8 @@ const logStage = logger_1.loggers.stage.proposalQueued;
|
|
|
17
17
|
const logExecution = logger_1.loggers.execution;
|
|
18
18
|
const governor_discovery_1 = require("../discovery/governor-discovery");
|
|
19
19
|
const timelock_discovery_1 = require("../discovery/timelock-discovery");
|
|
20
|
-
const
|
|
21
|
-
const
|
|
20
|
+
const base_1 = require("../stages/base");
|
|
21
|
+
const base_2 = require("./base");
|
|
22
22
|
const stage_builder_1 = require("./stage-builder");
|
|
23
23
|
/**
|
|
24
24
|
* Track proposal queued stage
|
|
@@ -28,7 +28,7 @@ const stage_builder_1 = require("./stage-builder");
|
|
|
28
28
|
async function trackProposalQueued(governorAddress, proposalId, provider,
|
|
29
29
|
/** Block where proposal was created (from Stage 1) */
|
|
30
30
|
fromBlock, options = {}) {
|
|
31
|
-
const builder = new stage_builder_1.StageBuilder("PROPOSAL_QUEUED", "
|
|
31
|
+
const builder = new stage_builder_1.StageBuilder("PROPOSAL_QUEUED", "arb1");
|
|
32
32
|
// Check proposal state
|
|
33
33
|
const proposalState = await (0, governor_discovery_1.getProposalState)(governorAddress, proposalId, provider);
|
|
34
34
|
// If not yet queued, check state
|
|
@@ -66,11 +66,11 @@ fromBlock, options = {}) {
|
|
|
66
66
|
const callScheduledData = await (0, timelock_discovery_1.findCallScheduledByTxHash)(queueEvent.txHash, provider);
|
|
67
67
|
const operationId = callScheduledData?.[0]?.operationId;
|
|
68
68
|
const eta = queueEvent.eta.toNumber();
|
|
69
|
-
const timestamp = await (0,
|
|
69
|
+
const timestamp = await (0, base_2.getBlockTimestamp)(queueEvent.blockNumber, provider);
|
|
70
70
|
// Stage is complete - proposal is queued
|
|
71
71
|
builder
|
|
72
72
|
.status("COMPLETED")
|
|
73
|
-
.tx(queueEvent.txHash, queueEvent.blockNumber, "
|
|
73
|
+
.tx(queueEvent.txHash, queueEvent.blockNumber, "arb1", 42161, { timestamp })
|
|
74
74
|
.timing({ startedAt: timestamp, eta })
|
|
75
75
|
.data({
|
|
76
76
|
proposalState,
|
|
@@ -79,7 +79,7 @@ fromBlock, options = {}) {
|
|
|
79
79
|
eta,
|
|
80
80
|
callCount: callScheduledData?.length ?? 0,
|
|
81
81
|
callScheduledData: callScheduledData
|
|
82
|
-
? (0,
|
|
82
|
+
? (0, base_1.serializeCallScheduledDataArray)(callScheduledData)
|
|
83
83
|
: undefined,
|
|
84
84
|
});
|
|
85
85
|
return { stage: builder.build(), timelockAddress, operationId, callScheduledData };
|
|
@@ -98,16 +98,16 @@ async function prepareGovernorQueue(governorAddress, proposalId, params, provide
|
|
|
98
98
|
logExecution("Proposal state: %s", stateName);
|
|
99
99
|
// Already queued
|
|
100
100
|
if (state === constants_1.PROPOSAL_STATE.QUEUED) {
|
|
101
|
-
return (0,
|
|
101
|
+
return (0, base_2.failPrepare)("Proposal already queued");
|
|
102
102
|
}
|
|
103
103
|
// Must be in Succeeded state
|
|
104
104
|
if (state !== constants_1.PROPOSAL_STATE.SUCCEEDED) {
|
|
105
|
-
return (0,
|
|
105
|
+
return (0, base_2.failPrepare)(`Cannot queue: proposal not in Succeeded state (current: ${stateName})`);
|
|
106
106
|
}
|
|
107
107
|
// Check vetting period for governors that have it
|
|
108
108
|
const vettingInfo = await (0, security_council_1.checkVettingPeriod)(governorAddress, proposalId, provider);
|
|
109
109
|
if (vettingInfo.hasVettingPeriod && vettingInfo.isVettingActive) {
|
|
110
|
-
return (0,
|
|
110
|
+
return (0, base_2.failPrepare)(`Cannot queue: proposal is still in vetting period (deadline: block ${vettingInfo.vettingDeadline?.toString()})`);
|
|
111
111
|
}
|
|
112
112
|
// Build calldata
|
|
113
113
|
const calldata = abis_1.governorInterface.encodeFunctionData("queue", [
|
|
@@ -122,7 +122,8 @@ async function prepareGovernorQueue(governorAddress, proposalId, params, provide
|
|
|
122
122
|
to: governorAddress,
|
|
123
123
|
data: calldata,
|
|
124
124
|
value: "0",
|
|
125
|
-
chain: "
|
|
125
|
+
chain: "arb1",
|
|
126
|
+
chainId: 42161,
|
|
126
127
|
description: `queue() on Governor (proposal ${proposalId})`,
|
|
127
128
|
operationId: proposalId,
|
|
128
129
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proposal-queued.js","sourceRoot":"","sources":["../../src/stages/proposal-queued.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AA6BH,kDAsFC;AAiBD,
|
|
1
|
+
{"version":3,"file":"proposal-queued.js","sourceRoot":"","sources":["../../src/stages/proposal-queued.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,13 +9,13 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { ethers } from "ethers";
|
|
11
11
|
import { ParentToChildMessageReader } from "@arbitrum/sdk";
|
|
12
|
-
import { TrackedStage,
|
|
12
|
+
import { TrackedStage, L2Chain, PrepareResult } from "../types";
|
|
13
13
|
import { BulkPrepareResult } from "../utils/stage-helpers";
|
|
14
14
|
/**
|
|
15
15
|
* Result of detecting retryable target chains, including message counts
|
|
16
16
|
*/
|
|
17
17
|
export interface RetryableTargetInfo {
|
|
18
|
-
chain:
|
|
18
|
+
chain: L2Chain;
|
|
19
19
|
inboxAddress: string;
|
|
20
20
|
messageCount: number;
|
|
21
21
|
}
|
|
@@ -54,8 +54,8 @@ export declare function trackRetryables(l1ExecutionTxHash: string, l1Provider: e
|
|
|
54
54
|
stage: TrackedStage;
|
|
55
55
|
messages: ParentToChildMessageReader[];
|
|
56
56
|
isComplete: boolean;
|
|
57
|
-
/** All target chains for retryables (can be both
|
|
58
|
-
targetChains:
|
|
57
|
+
/** All target chains for retryables (can be both arb1 and nova) */
|
|
58
|
+
targetChains: L2Chain[];
|
|
59
59
|
}>;
|
|
60
60
|
/**
|
|
61
61
|
* Options for preparing retryable tickets
|
|
@@ -67,7 +67,7 @@ export interface RetryablePrepareOptions {
|
|
|
67
67
|
/**
|
|
68
68
|
* Prepare a retryable ticket for redemption.
|
|
69
69
|
*/
|
|
70
|
-
export declare function prepareRetryableRedemption(message: ParentToChildMessageReader,
|
|
70
|
+
export declare function prepareRetryableRedemption(message: ParentToChildMessageReader, l2Provider: ethers.providers.Provider, options?: RetryablePrepareOptions): Promise<PrepareResult>;
|
|
71
71
|
/**
|
|
72
72
|
* Prepare all retryable tickets from an L1 transaction
|
|
73
73
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retryables.d.ts","sourceRoot":"","sources":["../../src/stages/retryables.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAGL,0BAA0B,EAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,
|
|
1
|
+
{"version":3,"file":"retryables.d.ts","sourceRoot":"","sources":["../../src/stages/retryables.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAGL,0BAA0B,EAC3B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,OAAO,EACP,aAAa,EAId,MAAM,UAAU,CAAC;AAWlB,OAAO,EAGL,iBAAiB,EAClB,MAAM,wBAAwB,CAAC;AAEhC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,wBAAsB,8BAA8B,CAClD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GACpC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAgChC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,sFAAsF;IACtF,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;IACtC,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;CAC1C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,iBAAiB,EAAE,MAAM,EACzB,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC;IACT,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,0BAA0B,EAAE,CAAC;IACvC,UAAU,EAAE,OAAO,CAAC;IACpB,mEAAmE;IACnE,YAAY,EAAE,OAAO,EAAE,CAAC;CACzB,CAAC,CAmND;AAID;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,2DAA2D;IAC3D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,0BAA0B,EACnC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,aAAa,CAAC,CAuCxB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAgB5B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,iBAAiB,CAAC,CAU5B"}
|
|
@@ -15,9 +15,10 @@ exports.prepareRetryableRedemption = prepareRetryableRedemption;
|
|
|
15
15
|
exports.prepareAllRetryables = prepareAllRetryables;
|
|
16
16
|
exports.prepareRetryableStage = prepareRetryableStage;
|
|
17
17
|
const sdk_1 = require("@arbitrum/sdk");
|
|
18
|
+
const types_1 = require("../types");
|
|
19
|
+
const chain_1 = require("../utils/chain");
|
|
18
20
|
const logger_1 = require("../utils/logger");
|
|
19
21
|
const log = logger_1.loggers.retryables;
|
|
20
|
-
const chain_1 = require("../utils/chain");
|
|
21
22
|
const abis_1 = require("../abis");
|
|
22
23
|
const constants_1 = require("../constants");
|
|
23
24
|
const base_1 = require("./base");
|
|
@@ -47,14 +48,14 @@ async function detectAllRetryableTargetChains(l1TxHash, l1Provider) {
|
|
|
47
48
|
const targets = [];
|
|
48
49
|
if (arb1Count > 0) {
|
|
49
50
|
targets.push({
|
|
50
|
-
chain: "
|
|
51
|
+
chain: "arb1",
|
|
51
52
|
inboxAddress: constants_1.ADDRESSES.ARB1_DELAYED_INBOX,
|
|
52
53
|
messageCount: arb1Count,
|
|
53
54
|
});
|
|
54
55
|
}
|
|
55
56
|
if (novaCount > 0) {
|
|
56
57
|
targets.push({
|
|
57
|
-
chain: "
|
|
58
|
+
chain: "nova",
|
|
58
59
|
inboxAddress: constants_1.ADDRESSES.NOVA_DELAYED_INBOX,
|
|
59
60
|
messageCount: novaCount,
|
|
60
61
|
});
|
|
@@ -79,7 +80,7 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
79
80
|
// No retryables found
|
|
80
81
|
if (targetInfos.length === 0) {
|
|
81
82
|
return {
|
|
82
|
-
stage: new stage_builder_1.StageBuilder("RETRYABLE_EXECUTED", "
|
|
83
|
+
stage: new stage_builder_1.StageBuilder("RETRYABLE_EXECUTED", "arb1")
|
|
83
84
|
.skip("No retryable tickets in transaction")
|
|
84
85
|
.build(),
|
|
85
86
|
messages: [],
|
|
@@ -91,7 +92,7 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
91
92
|
const l1Receipt = await (0, rpc_utils_1.queryWithRetry)(() => l1Provider.getTransactionReceipt(l1ExecutionTxHash));
|
|
92
93
|
if (!l1Receipt) {
|
|
93
94
|
return {
|
|
94
|
-
stage: new stage_builder_1.StageBuilder("RETRYABLE_EXECUTED", "
|
|
95
|
+
stage: new stage_builder_1.StageBuilder("RETRYABLE_EXECUTED", "arb1")
|
|
95
96
|
.skip("L1 transaction receipt not found")
|
|
96
97
|
.build(),
|
|
97
98
|
messages: [],
|
|
@@ -102,13 +103,14 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
102
103
|
const l1Timestamp = await (0, base_1.getBlockTimestamp)(l1Receipt.blockNumber, l1Provider);
|
|
103
104
|
// Collect results from all target chains
|
|
104
105
|
const allMessages = [];
|
|
105
|
-
const
|
|
106
|
-
const
|
|
106
|
+
const allRetryableCreationDetails = [];
|
|
107
|
+
const allRetryableRedemptionDetails = [];
|
|
107
108
|
const allTransactions = [
|
|
108
109
|
{
|
|
109
110
|
hash: l1ExecutionTxHash,
|
|
110
111
|
blockNumber: l1Receipt.blockNumber,
|
|
111
|
-
chain: "
|
|
112
|
+
chain: "ethereum",
|
|
113
|
+
chainId: 1,
|
|
112
114
|
timestamp: l1Timestamp,
|
|
113
115
|
logIndex: 0,
|
|
114
116
|
description: "L1 executed",
|
|
@@ -117,20 +119,23 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
117
119
|
let allRedeemed = true;
|
|
118
120
|
let anyFailed = false;
|
|
119
121
|
for (const { chain: targetChain, messageCount } of targetInfos) {
|
|
120
|
-
const provider = targetChain === "
|
|
121
|
-
const
|
|
122
|
+
const provider = targetChain === "nova" ? novaProvider : l2Provider;
|
|
123
|
+
const chainName = targetChain;
|
|
124
|
+
const chainId = (0, types_1.chainToChainId)(targetChain) ?? 42161;
|
|
122
125
|
// Handle missing provider
|
|
123
126
|
if (!provider) {
|
|
124
|
-
log("No provider for %s, marking %d tickets as PROVIDER_NOT_AVAILABLE",
|
|
127
|
+
log("No provider for %s, marking %d tickets as PROVIDER_NOT_AVAILABLE", chainName, messageCount);
|
|
125
128
|
for (let i = 0; i < messageCount; i++) {
|
|
126
|
-
|
|
127
|
-
index:
|
|
128
|
-
targetChain:
|
|
129
|
+
allRetryableCreationDetails.push({
|
|
130
|
+
index: allRetryableCreationDetails.length,
|
|
131
|
+
targetChain: chainName,
|
|
132
|
+
targetChainId: chainId,
|
|
129
133
|
l2TxHash: "unknown",
|
|
130
134
|
});
|
|
131
|
-
|
|
132
|
-
index:
|
|
133
|
-
targetChain:
|
|
135
|
+
allRetryableRedemptionDetails.push({
|
|
136
|
+
index: allRetryableRedemptionDetails.length,
|
|
137
|
+
targetChain: chainName,
|
|
138
|
+
targetChainId: chainId,
|
|
134
139
|
status: "PROVIDER_NOT_AVAILABLE",
|
|
135
140
|
l2TxHash: null,
|
|
136
141
|
});
|
|
@@ -144,19 +149,22 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
144
149
|
allMessages.push(...messages);
|
|
145
150
|
// Add creation details and transactions
|
|
146
151
|
for (const msg of messages) {
|
|
147
|
-
|
|
148
|
-
index:
|
|
149
|
-
targetChain:
|
|
152
|
+
allRetryableCreationDetails.push({
|
|
153
|
+
index: allRetryableCreationDetails.length,
|
|
154
|
+
targetChain: chainName,
|
|
155
|
+
targetChainId: chainId,
|
|
150
156
|
l2TxHash: msg.retryableCreationId,
|
|
151
157
|
});
|
|
152
158
|
allTransactions.push({
|
|
153
159
|
hash: msg.retryableCreationId,
|
|
154
160
|
blockNumber: 0,
|
|
155
|
-
chain:
|
|
161
|
+
chain: chainName,
|
|
162
|
+
chainId,
|
|
156
163
|
timestamp: l1Timestamp,
|
|
157
164
|
logIndex: allTransactions.length,
|
|
158
|
-
targetChain:
|
|
159
|
-
|
|
165
|
+
targetChain: chainName,
|
|
166
|
+
targetChainId: chainId,
|
|
167
|
+
description: `${chainName} created`,
|
|
160
168
|
});
|
|
161
169
|
}
|
|
162
170
|
const redeemResults = await Promise.all(messages.map((message, idx) => (0, rpc_utils_1.queryWithRetry)(() => message.getSuccessfulRedeem()).catch((err) => {
|
|
@@ -170,9 +178,10 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
170
178
|
if (isFetchError) {
|
|
171
179
|
// Fetch error - treat as inconclusive, don't mark as redeemed
|
|
172
180
|
allRedeemed = false;
|
|
173
|
-
|
|
174
|
-
index:
|
|
175
|
-
targetChain:
|
|
181
|
+
allRetryableRedemptionDetails.push({
|
|
182
|
+
index: allRetryableRedemptionDetails.length,
|
|
183
|
+
targetChain: chainName,
|
|
184
|
+
targetChainId: chainId,
|
|
176
185
|
status: "FETCH_ERROR",
|
|
177
186
|
l2TxHash: null,
|
|
178
187
|
});
|
|
@@ -191,11 +200,13 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
191
200
|
allTransactions.push({
|
|
192
201
|
hash: transactionHash,
|
|
193
202
|
blockNumber,
|
|
194
|
-
chain:
|
|
203
|
+
chain: chainName,
|
|
204
|
+
chainId,
|
|
195
205
|
timestamp,
|
|
196
206
|
logIndex: allTransactions.length,
|
|
197
|
-
targetChain:
|
|
198
|
-
|
|
207
|
+
targetChain: chainName,
|
|
208
|
+
targetChainId: chainId,
|
|
209
|
+
description: `${chainName} redeemed`,
|
|
199
210
|
});
|
|
200
211
|
}
|
|
201
212
|
else if (status === sdk_1.ParentToChildMessageStatus.EXPIRED) {
|
|
@@ -205,34 +216,34 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
205
216
|
else if (status !== sdk_1.ParentToChildMessageStatus.REDEEMED) {
|
|
206
217
|
allRedeemed = false;
|
|
207
218
|
}
|
|
208
|
-
|
|
209
|
-
index:
|
|
210
|
-
targetChain:
|
|
219
|
+
allRetryableRedemptionDetails.push({
|
|
220
|
+
index: allRetryableRedemptionDetails.length,
|
|
221
|
+
targetChain: chainName,
|
|
222
|
+
targetChainId: chainId,
|
|
211
223
|
status: statusName,
|
|
212
224
|
l2TxHash,
|
|
213
225
|
});
|
|
214
226
|
}
|
|
215
227
|
}
|
|
216
|
-
// Collect unique target chains
|
|
217
|
-
|
|
218
|
-
const
|
|
219
|
-
...new Set(targetInfos.map((t) => (t.chain === "L2" ? "Arb1" : "Nova"))),
|
|
220
|
-
];
|
|
228
|
+
// Collect unique target chains
|
|
229
|
+
const targetChains = [...new Set(targetInfos.map((t) => t.chain))];
|
|
230
|
+
const targetChainIds = [...new Set(targetInfos.map((t) => (0, types_1.chainToChainId)(t.chain) ?? 42161))];
|
|
221
231
|
// Determine overall status and build stage using StageBuilder
|
|
222
|
-
// Note: chain is "
|
|
232
|
+
// Note: chain is "arb1" because retryable redemption executes on L2 chains (Arb1/Nova)
|
|
223
233
|
const status = anyFailed ? "FAILED" : allRedeemed ? "COMPLETED" : "READY";
|
|
224
|
-
const builder = new stage_builder_1.StageBuilder("RETRYABLE_EXECUTED", "
|
|
234
|
+
const builder = new stage_builder_1.StageBuilder("RETRYABLE_EXECUTED", "arb1")
|
|
225
235
|
.status(status)
|
|
226
236
|
.transactions(allTransactions)
|
|
227
237
|
.timing({ startedAt: l1Timestamp })
|
|
228
238
|
.data({
|
|
229
|
-
ticketCount:
|
|
239
|
+
ticketCount: allRetryableCreationDetails.length,
|
|
230
240
|
targetChains,
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
241
|
+
targetChainIds,
|
|
242
|
+
creationDetails: allRetryableCreationDetails,
|
|
243
|
+
redemptionDetails: allRetryableRedemptionDetails,
|
|
244
|
+
redeemedCount: allRetryableRedemptionDetails.filter((d) => d.status === "REDEEMED").length,
|
|
245
|
+
pendingCount: allRetryableRedemptionDetails.filter((d) => d.status === "FUNDS_DEPOSITED_ON_CHILD" || d.status === "NOT_YET_CREATED").length,
|
|
246
|
+
statuses: allRetryableRedemptionDetails.map((d) => d.status),
|
|
236
247
|
});
|
|
237
248
|
if (status === "READY") {
|
|
238
249
|
builder.executable(true).timing({ delaySeconds: constants_1.TIMING.RETRYABLE_LIFETIME_SECONDS });
|
|
@@ -247,7 +258,7 @@ async function trackRetryables(l1ExecutionTxHash, l1Provider, options) {
|
|
|
247
258
|
/**
|
|
248
259
|
* Prepare a retryable ticket for redemption.
|
|
249
260
|
*/
|
|
250
|
-
async function prepareRetryableRedemption(message,
|
|
261
|
+
async function prepareRetryableRedemption(message, l2Provider, options = {}) {
|
|
251
262
|
const ticketId = message.retryableCreationId;
|
|
252
263
|
log("Preparing retryable redemption for %s", ticketId);
|
|
253
264
|
const status = await (0, rpc_utils_1.queryWithRetry)(() => message.status());
|
|
@@ -264,6 +275,9 @@ async function prepareRetryableRedemption(message, targetChain = "L2", options =
|
|
|
264
275
|
return (0, base_1.failPrepare)(`Retryable not ready. Status: ${sdk_1.ParentToChildMessageStatus[status]}`);
|
|
265
276
|
}
|
|
266
277
|
}
|
|
278
|
+
// Get chain info from provider
|
|
279
|
+
const targetChain = await (0, chain_1.getChain)(l2Provider);
|
|
280
|
+
const targetChainId = await (0, chain_1.getChainId)(l2Provider);
|
|
267
281
|
const calldata = abis_1.arbRetryableInterface.encodeFunctionData("redeem", [ticketId]);
|
|
268
282
|
return {
|
|
269
283
|
success: true,
|
|
@@ -272,6 +286,7 @@ async function prepareRetryableRedemption(message, targetChain = "L2", options =
|
|
|
272
286
|
data: calldata,
|
|
273
287
|
value: "0",
|
|
274
288
|
chain: targetChain,
|
|
289
|
+
chainId: targetChainId,
|
|
275
290
|
description: `Redeem retryable ticket ${ticketId}`,
|
|
276
291
|
},
|
|
277
292
|
};
|
|
@@ -282,28 +297,28 @@ async function prepareRetryableRedemption(message, targetChain = "L2", options =
|
|
|
282
297
|
async function prepareAllRetryables(l1TxHash, l1Provider, l2Provider, options = {}) {
|
|
283
298
|
const receipt = await (0, rpc_utils_1.queryWithRetry)(() => l1Provider.getTransactionReceipt(l1TxHash));
|
|
284
299
|
if (!receipt)
|
|
285
|
-
return (0, stage_helpers_1.bulkPrepareError)("L1 transaction receipt not found", "
|
|
300
|
+
return (0, stage_helpers_1.bulkPrepareError)("L1 transaction receipt not found", "arb1");
|
|
286
301
|
const parentReceipt = new sdk_1.ParentTransactionReceipt(receipt);
|
|
287
302
|
const messages = await parentReceipt.getParentToChildMessages(l2Provider);
|
|
288
303
|
if (messages.length === 0)
|
|
289
|
-
return (0, stage_helpers_1.bulkPrepareError)("No retryable tickets found", "
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
const
|
|
304
|
+
return (0, stage_helpers_1.bulkPrepareError)("No retryable tickets found", "arb1");
|
|
305
|
+
log("Preparing %d retryable tickets", messages.length);
|
|
306
|
+
const results = await Promise.all(messages.map((message) => prepareRetryableRedemption(message, l2Provider, options)));
|
|
307
|
+
const targetChain = await (0, chain_1.getChain)(l2Provider);
|
|
293
308
|
return { total: messages.length, results, targetChain };
|
|
294
309
|
}
|
|
295
310
|
/**
|
|
296
311
|
* Prepare retryable stage for execution
|
|
297
312
|
*/
|
|
298
313
|
async function prepareRetryableStage(stage, l1Provider, l2Provider, options = {}) {
|
|
299
|
-
const validationError = (0, stage_helpers_1.validateStageForBulkPrepare)(stage, "
|
|
314
|
+
const validationError = (0, stage_helpers_1.validateStageForBulkPrepare)(stage, "arb1", {
|
|
300
315
|
prepareCompleted: options.prepareCompleted,
|
|
301
316
|
});
|
|
302
317
|
if (validationError)
|
|
303
318
|
return validationError;
|
|
304
319
|
const l1TxHash = stage.transactions[0]?.hash;
|
|
305
320
|
if (!l1TxHash)
|
|
306
|
-
return (0, stage_helpers_1.bulkPrepareError)("L1 transaction hash not found", "
|
|
321
|
+
return (0, stage_helpers_1.bulkPrepareError)("L1 transaction hash not found", "arb1");
|
|
307
322
|
return prepareAllRetryables(l1TxHash, l1Provider, l2Provider, options);
|
|
308
323
|
}
|
|
309
324
|
//# sourceMappingURL=retryables.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retryables.js","sourceRoot":"","sources":["../../src/stages/retryables.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;
|
|
1
|
+
{"version":3,"file":"retryables.js","sourceRoot":"","sources":["../../src/stages/retryables.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Fluent API for constructing TrackedStage objects
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { Chain, ChainId, StageStatus, StageType, StageTransaction, StageTiming, TrackedStage, TrackedStageData } from "../types";
|
|
5
5
|
export declare class StageBuilder {
|
|
6
6
|
private _stage;
|
|
7
|
-
constructor(type: StageType, chain:
|
|
7
|
+
constructor(type: StageType, chain: Chain, status?: StageStatus);
|
|
8
8
|
/**
|
|
9
9
|
* Set stage status
|
|
10
10
|
*/
|
|
@@ -20,10 +20,11 @@ export declare class StageBuilder {
|
|
|
20
20
|
/**
|
|
21
21
|
* Add a transaction to the stage
|
|
22
22
|
*/
|
|
23
|
-
tx(hash: string, blockNumber: number, chain:
|
|
23
|
+
tx(hash: string, blockNumber: number, chain: Chain, chainId: ChainId, options?: {
|
|
24
24
|
timestamp?: number;
|
|
25
25
|
logIndex?: number;
|
|
26
|
-
targetChain?:
|
|
26
|
+
targetChain?: Chain;
|
|
27
|
+
targetChainId?: ChainId;
|
|
27
28
|
description?: string;
|
|
28
29
|
}): this;
|
|
29
30
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stage-builder.d.ts","sourceRoot":"","sources":["../../src/stages/stage-builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"stage-builder.d.ts","sourceRoot":"","sources":["../../src/stages/stage-builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,KAAK,EACL,OAAO,EAEP,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAe;gBAEjB,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAE,WAA2B;IAa9E;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMjC;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAKlC;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;IAK1C;;OAEG;IACH,EAAE,CACA,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,CAAC;KACjB,GACL,IAAI;IAWP;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO1B;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAK3C;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAKhC;;OAEG;IACH,KAAK,IAAI,YAAY;CAGtB"}
|
|
@@ -4,12 +4,15 @@
|
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.StageBuilder = void 0;
|
|
7
|
+
const types_1 = require("../types");
|
|
7
8
|
class StageBuilder {
|
|
8
9
|
constructor(type, chain, status = "NOT_STARTED") {
|
|
10
|
+
const chainId = (0, types_1.chainToChainId)(chain) ?? 0;
|
|
9
11
|
this._stage = {
|
|
10
12
|
type,
|
|
11
13
|
status,
|
|
12
14
|
chain,
|
|
15
|
+
chainId,
|
|
13
16
|
transactions: [],
|
|
14
17
|
data: {},
|
|
15
18
|
executable: false,
|
|
@@ -40,14 +43,16 @@ class StageBuilder {
|
|
|
40
43
|
/**
|
|
41
44
|
* Add a transaction to the stage
|
|
42
45
|
*/
|
|
43
|
-
tx(hash, blockNumber, chain, options = {}) {
|
|
44
|
-
const tx = { hash, blockNumber, chain };
|
|
46
|
+
tx(hash, blockNumber, chain, chainId, options = {}) {
|
|
47
|
+
const tx = { hash, blockNumber, chain, chainId };
|
|
45
48
|
if (options.timestamp !== undefined)
|
|
46
49
|
tx.timestamp = options.timestamp;
|
|
47
50
|
if (options.logIndex !== undefined)
|
|
48
51
|
tx.logIndex = options.logIndex;
|
|
49
52
|
if (options.targetChain !== undefined)
|
|
50
53
|
tx.targetChain = options.targetChain;
|
|
54
|
+
if (options.targetChainId !== undefined)
|
|
55
|
+
tx.targetChainId = options.targetChainId;
|
|
51
56
|
if (options.description !== undefined)
|
|
52
57
|
tx.description = options.description;
|
|
53
58
|
this._stage.transactions = [...this._stage.transactions, tx];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stage-builder.js","sourceRoot":"","sources":["../../src/stages/stage-builder.ts"],"names":[],"mappings":";AAAA;;GAEG;;;
|
|
1
|
+
{"version":3,"file":"stage-builder.js","sourceRoot":"","sources":["../../src/stages/stage-builder.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,oCAUkB;AAElB,MAAa,YAAY;IAGvB,YAAY,IAAe,EAAE,KAAY,EAAE,SAAsB,aAAa;QAC5E,MAAM,OAAO,GAAG,IAAA,sBAAc,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI;YACJ,MAAM;YACN,KAAK;YACL,OAAO;YACP,YAAY,EAAE,EAAE;YAChB,IAAI,EAAE,EAAE;YACR,UAAU,EAAE,KAAK;SAClB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAmB;QACxB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,KAAK,OAAO,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,IAAsB;QACzB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAA4B;QACjC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,EAAE,CACA,IAAY,EACZ,WAAmB,EACnB,KAAY,EACZ,OAAgB,EAChB,UAMI,EAAE;QAEN,MAAM,EAAE,GAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACnE,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;YAAE,EAAE,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACtE,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,EAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACnE,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;YAAE,EAAE,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QAC5E,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS;YAAE,EAAE,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAClF,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;YAAE,EAAE,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QAC5E,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,MAAc;QACjB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,GAAuB;QAClC,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,KAAc;QACvB,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;CACF;AAnGD,oCAmGC"}
|
|
@@ -6,28 +6,7 @@
|
|
|
6
6
|
* L1-specific: Operation ID discovery from OutBox execution
|
|
7
7
|
*/
|
|
8
8
|
import { ethers, BigNumber } from "ethers";
|
|
9
|
-
import { TrackedStage, TrackedStageData, TimelockState, CallScheduledData, OperationState,
|
|
10
|
-
/**
|
|
11
|
-
* Configuration for timelock tracking that differs between L1 and L2.
|
|
12
|
-
*/
|
|
13
|
-
export interface TimelockTrackingConfig {
|
|
14
|
-
chain: ChainType;
|
|
15
|
-
stageType: StageType;
|
|
16
|
-
blockTimeSeconds: number;
|
|
17
|
-
logPrefix: string;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Options for timelock stage tracking.
|
|
21
|
-
*/
|
|
22
|
-
export interface TrackTimelockOptions {
|
|
23
|
-
callScheduledData?: CallScheduledData;
|
|
24
|
-
cachedExecutionTxHash?: string;
|
|
25
|
-
/** Whether to check for Security Council enrichment (L2 only) */
|
|
26
|
-
checkSecurityCouncil?: boolean;
|
|
27
|
-
additionalPayload?: Record<string, unknown>;
|
|
28
|
-
/** All tracked stages (used for salt computation from other stages) */
|
|
29
|
-
allStages?: TrackedStage[];
|
|
30
|
-
}
|
|
9
|
+
import { TrackedStage, TrackedStageData, TimelockState, CallScheduledData, OperationState, PrepareResult, PrepareOptions, TimelockParams, TimelockBatchParams } from "../types";
|
|
31
10
|
/**
|
|
32
11
|
* Result from timelock stage tracking.
|
|
33
12
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timelock.d.ts","sourceRoot":"","sources":["../../src/stages/timelock.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,
|
|
1
|
+
{"version":3,"file":"timelock.d.ts","sourceRoot":"","sources":["../../src/stages/timelock.ts"],"names":[],"mappings":"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"}
|