@gzeoneth/gov-tracker 0.3.0 → 0.4.0-alpha.addr-feedback.e1dac80
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/README.md +1 -5
- package/dist/calldata/decoder.d.ts.map +1 -1
- package/dist/calldata/decoder.js +35 -76
- package/dist/calldata/decoder.js.map +1 -1
- package/dist/calldata/parameter-decoder.d.ts +21 -1
- package/dist/calldata/parameter-decoder.d.ts.map +1 -1
- package/dist/calldata/parameter-decoder.js +30 -0
- package/dist/calldata/parameter-decoder.js.map +1 -1
- package/dist/calldata/retryable-ticket.d.ts +2 -2
- package/dist/calldata/retryable-ticket.d.ts.map +1 -1
- package/dist/calldata/retryable-ticket.js +17 -12
- package/dist/calldata/retryable-ticket.js.map +1 -1
- package/dist/calldata/signature-lookup.js +5 -4
- package/dist/calldata/signature-lookup.js.map +1 -1
- package/dist/cli/cli.js +39 -19
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/lib/cli.d.ts +4 -2
- package/dist/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +61 -58
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/cli/lib/json-state.js +1 -1
- package/dist/cli/lib/json-state.js.map +1 -1
- package/dist/cli/tui/components/StageProgress.js +1 -1
- package/dist/cli/tui/components/StageProgress.js.map +1 -1
- package/dist/cli/tui/components/StageRow.d.ts.map +1 -1
- package/dist/cli/tui/components/StageRow.js +15 -20
- package/dist/cli/tui/components/StageRow.js.map +1 -1
- package/dist/cli/tui/hooks/useCache.d.ts.map +1 -1
- package/dist/cli/tui/hooks/useCache.js +2 -1
- package/dist/cli/tui/hooks/useCache.js.map +1 -1
- package/dist/cli/tui/hooks/useElectionData.d.ts.map +1 -1
- package/dist/cli/tui/hooks/useElectionData.js +3 -2
- package/dist/cli/tui/hooks/useElectionData.js.map +1 -1
- package/dist/cli/tui/hooks/useProposals.d.ts.map +1 -1
- package/dist/cli/tui/hooks/useProposals.js +24 -34
- package/dist/cli/tui/hooks/useProposals.js.map +1 -1
- package/dist/cli/tui/hooks/useStageCalldata.d.ts.map +1 -1
- package/dist/cli/tui/hooks/useStageCalldata.js +2 -1
- package/dist/cli/tui/hooks/useStageCalldata.js.map +1 -1
- package/dist/cli/tui/utils/index.d.ts +6 -6
- package/dist/cli/tui/utils/index.d.ts.map +1 -1
- package/dist/cli/tui/utils/index.js +14 -14
- package/dist/cli/tui/utils/index.js.map +1 -1
- package/dist/cli/tui/utils/markdown-parser.d.ts +5 -0
- package/dist/cli/tui/utils/markdown-parser.d.ts.map +1 -1
- package/dist/cli/tui/utils/markdown-parser.js +16 -0
- package/dist/cli/tui/utils/markdown-parser.js.map +1 -1
- package/dist/cli/tui/utils/navigation.d.ts.map +1 -1
- package/dist/cli/tui/utils/navigation.js +5 -1
- package/dist/cli/tui/utils/navigation.js.map +1 -1
- package/dist/cli/tui/utils/proposal-detail-helpers.js +6 -6
- package/dist/cli/tui/utils/proposal-detail-helpers.js.map +1 -1
- package/dist/cli/tui/utils/time.d.ts +4 -4
- package/dist/cli/tui/utils/time.d.ts.map +1 -1
- package/dist/cli/tui/utils/time.js +13 -11
- package/dist/cli/tui/utils/time.js.map +1 -1
- package/dist/cli/tui/views/DescriptionView.d.ts.map +1 -1
- package/dist/cli/tui/views/DescriptionView.js +4 -2
- package/dist/cli/tui/views/DescriptionView.js.map +1 -1
- package/dist/cli/tui/views/ElectionView.d.ts.map +1 -1
- package/dist/cli/tui/views/ElectionView.js +3 -3
- package/dist/cli/tui/views/ElectionView.js.map +1 -1
- package/dist/cli/tui/views/StageView.d.ts.map +1 -1
- package/dist/cli/tui/views/StageView.js +1 -1
- package/dist/cli/tui/views/StageView.js.map +1 -1
- package/dist/constants.d.ts +11 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +16 -4
- package/dist/constants.js.map +1 -1
- package/dist/data/bundled-cache.json +21513 -22619
- package/dist/deduplication.d.ts.map +1 -1
- package/dist/deduplication.js +36 -33
- package/dist/deduplication.js.map +1 -1
- package/dist/discovery/governor-discovery.d.ts.map +1 -1
- package/dist/discovery/governor-discovery.js +44 -49
- package/dist/discovery/governor-discovery.js.map +1 -1
- package/dist/discovery/security-council.d.ts +15 -0
- package/dist/discovery/security-council.d.ts.map +1 -1
- package/dist/discovery/security-council.js +42 -19
- package/dist/discovery/security-council.js.map +1 -1
- package/dist/discovery/timelock-discovery.d.ts.map +1 -1
- package/dist/discovery/timelock-discovery.js +62 -84
- package/dist/discovery/timelock-discovery.js.map +1 -1
- package/dist/election/contracts.d.ts.map +1 -1
- package/dist/election/contracts.js +4 -1
- package/dist/election/contracts.js.map +1 -1
- package/dist/election/details.d.ts.map +1 -1
- package/dist/election/details.js +35 -33
- package/dist/election/details.js.map +1 -1
- package/dist/election/index.d.ts +3 -6
- package/dist/election/index.d.ts.map +1 -1
- package/dist/election/index.js +7 -14
- package/dist/election/index.js.map +1 -1
- package/dist/election/params.d.ts +8 -1
- package/dist/election/params.d.ts.map +1 -1
- package/dist/election/params.js +48 -13
- package/dist/election/params.js.map +1 -1
- package/dist/election/participants.d.ts.map +1 -1
- package/dist/election/participants.js +19 -27
- package/dist/election/participants.js.map +1 -1
- package/dist/election/proposal-ids.d.ts +10 -0
- package/dist/election/proposal-ids.d.ts.map +1 -1
- package/dist/election/proposal-ids.js +42 -5
- package/dist/election/proposal-ids.js.map +1 -1
- package/dist/election/status.d.ts.map +1 -1
- package/dist/election/status.js +6 -0
- package/dist/election/status.js.map +1 -1
- package/dist/index.d.ts +9 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -10
- package/dist/index.js.map +1 -1
- package/dist/simulation/simulation-data.d.ts +2 -2
- package/dist/simulation/simulation-data.d.ts.map +1 -1
- package/dist/simulation/simulation-data.js +36 -26
- package/dist/simulation/simulation-data.js.map +1 -1
- package/dist/stages/builder.js +1 -1
- package/dist/stages/builder.js.map +1 -1
- package/dist/stages/l2-to-l1-message.d.ts.map +1 -1
- package/dist/stages/l2-to-l1-message.js +5 -11
- package/dist/stages/l2-to-l1-message.js.map +1 -1
- package/dist/stages/proposal-queued.d.ts.map +1 -1
- package/dist/stages/proposal-queued.js +4 -1
- package/dist/stages/proposal-queued.js.map +1 -1
- package/dist/stages/retryables.d.ts +4 -3
- package/dist/stages/retryables.d.ts.map +1 -1
- package/dist/stages/retryables.js +35 -57
- package/dist/stages/retryables.js.map +1 -1
- package/dist/stages/timelock.d.ts +4 -1
- package/dist/stages/timelock.d.ts.map +1 -1
- package/dist/stages/timelock.js +59 -67
- package/dist/stages/timelock.js.map +1 -1
- package/dist/stages/utils.d.ts +67 -5
- package/dist/stages/utils.d.ts.map +1 -1
- package/dist/stages/utils.js +183 -42
- package/dist/stages/utils.js.map +1 -1
- package/dist/tracker/checkpoint-helpers.d.ts +2 -1
- package/dist/tracker/checkpoint-helpers.d.ts.map +1 -1
- package/dist/tracker/checkpoint-helpers.js +4 -7
- package/dist/tracker/checkpoint-helpers.js.map +1 -1
- package/dist/tracker/discovery.d.ts.map +1 -1
- package/dist/tracker/discovery.js +60 -43
- package/dist/tracker/discovery.js.map +1 -1
- package/dist/tracker/pipeline.d.ts +25 -6
- package/dist/tracker/pipeline.d.ts.map +1 -1
- package/dist/tracker/pipeline.js +428 -211
- package/dist/tracker/pipeline.js.map +1 -1
- package/dist/tracker/query.d.ts +21 -0
- package/dist/tracker/query.d.ts.map +1 -1
- package/dist/tracker/query.js +86 -9
- package/dist/tracker/query.js.map +1 -1
- package/dist/tracker/stage-runner.d.ts +62 -0
- package/dist/tracker/stage-runner.d.ts.map +1 -0
- package/dist/tracker/stage-runner.js +80 -0
- package/dist/tracker/stage-runner.js.map +1 -0
- package/dist/tracker/state.d.ts +65 -0
- package/dist/tracker/state.d.ts.map +1 -1
- package/dist/tracker/state.js +194 -14
- package/dist/tracker/state.js.map +1 -1
- package/dist/tracker.d.ts +36 -8
- package/dist/tracker.d.ts.map +1 -1
- package/dist/tracker.js +246 -193
- package/dist/tracker.js.map +1 -1
- package/dist/types/core.d.ts +3 -2
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js +3 -2
- package/dist/types/core.js.map +1 -1
- package/dist/types/simulation.d.ts +2 -2
- package/dist/types/simulation.d.ts.map +1 -1
- package/dist/types/tracking.d.ts +11 -0
- package/dist/types/tracking.d.ts.map +1 -1
- package/dist/utils/log-filters.d.ts.map +1 -1
- package/dist/utils/log-filters.js +5 -9
- package/dist/utils/log-filters.js.map +1 -1
- package/dist/utils/multicall.d.ts +0 -1
- package/dist/utils/multicall.d.ts.map +1 -1
- package/dist/utils/rpc-utils.d.ts +11 -0
- package/dist/utils/rpc-utils.d.ts.map +1 -1
- package/dist/utils/rpc-utils.js +18 -1
- package/dist/utils/rpc-utils.js.map +1 -1
- package/dist/utils/timing.d.ts +11 -4
- package/dist/utils/timing.d.ts.map +1 -1
- package/dist/utils/timing.js +45 -15
- package/dist/utils/timing.js.map +1 -1
- package/package.json +7 -6
- package/dist/cli/tui/utils/calldata-formatter.d.ts +0 -7
- package/dist/cli/tui/utils/calldata-formatter.d.ts.map +0 -1
- package/dist/cli/tui/utils/calldata-formatter.js +0 -14
- package/dist/cli/tui/utils/calldata-formatter.js.map +0 -1
- package/dist/cli/tui/utils/stage-formatter.d.ts +0 -7
- package/dist/cli/tui/utils/stage-formatter.d.ts.map +0 -1
- package/dist/cli/tui/utils/stage-formatter.js +0 -14
- package/dist/cli/tui/utils/stage-formatter.js.map +0 -1
- package/dist/cli/tui/utils/text.d.ts +0 -7
- package/dist/cli/tui/utils/text.d.ts.map +0 -1
- package/dist/cli/tui/utils/text.js +0 -12
- package/dist/cli/tui/utils/text.js.map +0 -1
- package/dist/election/prepare.d.ts +0 -10
- package/dist/election/prepare.d.ts.map +0 -1
- package/dist/election/prepare.js +0 -52
- package/dist/election/prepare.js.map +0 -1
- package/dist/election/tracking.d.ts +0 -28
- package/dist/election/tracking.d.ts.map +0 -1
- package/dist/election/tracking.js +0 -412
- package/dist/election/tracking.js.map +0 -1
package/dist/stages/utils.js
CHANGED
|
@@ -6,19 +6,25 @@
|
|
|
6
6
|
* Previously split between stages/base.ts and utils/stage-helpers.ts.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.TIMELOCK_STAGE_TYPES = exports.deserializeCallScheduledDataArray = exports.serializeCallScheduledDataArray = exports.deserializeCallScheduledData = exports.serializeCallScheduledData = void 0;
|
|
9
|
+
exports.TIMELOCK_STAGE_TYPES = exports.getChainForStage = exports.deserializeCallScheduledDataArray = exports.serializeCallScheduledDataArray = exports.deserializeCallScheduledData = exports.serializeCallScheduledData = void 0;
|
|
10
10
|
exports.serialize = serialize;
|
|
11
11
|
exports.deserialize = deserialize;
|
|
12
|
-
exports.
|
|
13
|
-
exports.
|
|
12
|
+
exports.getStagesForTrackingPath = getStagesForTrackingPath;
|
|
13
|
+
exports.initializeStagesForTrackingPath = initializeStagesForTrackingPath;
|
|
14
|
+
exports.isTimelockPathStage = isTimelockPathStage;
|
|
15
|
+
exports.splitStages = splitStages;
|
|
16
|
+
exports.hasTimelockProgress = hasTimelockProgress;
|
|
14
17
|
exports.findStage = findStage;
|
|
15
18
|
exports.updateStageInList = updateStageInList;
|
|
19
|
+
exports.isStageTerminal = isStageTerminal;
|
|
20
|
+
exports.isStageSuccess = isStageSuccess;
|
|
16
21
|
exports.getCurrentStage = getCurrentStage;
|
|
17
22
|
exports.areAllStagesComplete = areAllStagesComplete;
|
|
18
23
|
exports.findExecutableStage = findExecutableStage;
|
|
19
24
|
exports.findAllExecutableStages = findAllExecutableStages;
|
|
20
25
|
exports.needsAction = needsAction;
|
|
21
26
|
exports.getTrackingStatusSummary = getTrackingStatusSummary;
|
|
27
|
+
exports.getLifecyclePhase = getLifecyclePhase;
|
|
22
28
|
exports.extractOperationId = extractOperationId;
|
|
23
29
|
exports.isConstitutional = isConstitutional;
|
|
24
30
|
exports.isTimelockStage = isTimelockStage;
|
|
@@ -92,7 +98,7 @@ exports.deserializeCallScheduledDataArray = deserializeCallScheduledDataArray;
|
|
|
92
98
|
* Used for initializing placeholder stages that will be filled in later.
|
|
93
99
|
*/
|
|
94
100
|
function createStage(type, chain, status = "NOT_STARTED") {
|
|
95
|
-
const chainId = (0, types_1.chainToChainId)(chain)
|
|
101
|
+
const chainId = (0, types_1.chainToChainId)(chain);
|
|
96
102
|
// Assertion needed: we create placeholder stages with empty data that get
|
|
97
103
|
// replaced by properly-built stages. TypeScript can't track this flow.
|
|
98
104
|
return {
|
|
@@ -105,41 +111,93 @@ function createStage(type, chain, status = "NOT_STARTED") {
|
|
|
105
111
|
executable: false,
|
|
106
112
|
};
|
|
107
113
|
}
|
|
114
|
+
/** Common timelock stages shared by all paths */
|
|
115
|
+
const COMMON_TIMELOCK_STAGES = [
|
|
116
|
+
"L2_TIMELOCK",
|
|
117
|
+
"L2_TO_L1_MESSAGE",
|
|
118
|
+
"L1_TIMELOCK",
|
|
119
|
+
"RETRYABLE_EXECUTED",
|
|
120
|
+
];
|
|
108
121
|
/** Full proposal stages (from governor proposal) */
|
|
109
122
|
const FULL_PROPOSAL_STAGES = [
|
|
110
123
|
"PROPOSAL_CREATED",
|
|
111
124
|
"VOTING_ACTIVE",
|
|
112
125
|
"PROPOSAL_QUEUED",
|
|
113
|
-
|
|
114
|
-
"L2_TO_L1_MESSAGE",
|
|
115
|
-
"L1_TIMELOCK",
|
|
116
|
-
"RETRYABLE_EXECUTED",
|
|
126
|
+
...COMMON_TIMELOCK_STAGES,
|
|
117
127
|
];
|
|
118
128
|
/** Timelock-only stages (direct timelock entry) */
|
|
119
|
-
const TIMELOCK_ONLY_STAGES =
|
|
129
|
+
const TIMELOCK_ONLY_STAGES = COMMON_TIMELOCK_STAGES;
|
|
130
|
+
/** Election stages (full election lifecycle) */
|
|
131
|
+
const ELECTION_STAGES = [
|
|
132
|
+
"CREATE_ELECTION",
|
|
133
|
+
"NOMINEE_ELECTION",
|
|
134
|
+
"NOMINEE_VETTING",
|
|
135
|
+
"MEMBER_ELECTION",
|
|
136
|
+
...COMMON_TIMELOCK_STAGES,
|
|
137
|
+
];
|
|
138
|
+
/**
|
|
139
|
+
* Get stage types for a tracking path.
|
|
140
|
+
* @param path - The tracking path type: "governor", "timelock", or "election"
|
|
141
|
+
*/
|
|
142
|
+
function getStagesForTrackingPath(path) {
|
|
143
|
+
switch (path) {
|
|
144
|
+
case "governor":
|
|
145
|
+
return FULL_PROPOSAL_STAGES;
|
|
146
|
+
case "timelock":
|
|
147
|
+
return TIMELOCK_ONLY_STAGES;
|
|
148
|
+
case "election":
|
|
149
|
+
return ELECTION_STAGES;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Initialize all stages for a tracking path
|
|
154
|
+
* @param path - The tracking path type: "governor", "timelock", or "election"
|
|
155
|
+
*/
|
|
156
|
+
/** L1 stages (execute on Ethereum mainnet) */
|
|
157
|
+
const L1_STAGES = new Set(["L1_TIMELOCK", "RETRYABLE_EXECUTED"]);
|
|
158
|
+
/** Get chain for a stage type (L1 stages run on ethereum, others on arb1) */
|
|
159
|
+
const getChainForStage = (type) => L1_STAGES.has(type) ? "ethereum" : "arb1";
|
|
160
|
+
exports.getChainForStage = getChainForStage;
|
|
161
|
+
function initializeStagesForTrackingPath(path) {
|
|
162
|
+
return getStagesForTrackingPath(path).map((type) => createStage(type, (0, exports.getChainForStage)(type), "NOT_STARTED"));
|
|
163
|
+
}
|
|
164
|
+
// ============================================================================
|
|
165
|
+
// Modular Caching: Stage Splitting
|
|
166
|
+
// ============================================================================
|
|
167
|
+
/** All timelock path stages for modular caching (full path, not just executable) */
|
|
168
|
+
const TIMELOCK_PATH_STAGES = new Set([
|
|
120
169
|
"L2_TIMELOCK",
|
|
121
170
|
"L2_TO_L1_MESSAGE",
|
|
122
171
|
"L1_TIMELOCK",
|
|
123
172
|
"RETRYABLE_EXECUTED",
|
|
124
|
-
];
|
|
173
|
+
]);
|
|
125
174
|
/**
|
|
126
|
-
*
|
|
127
|
-
*
|
|
175
|
+
* Check if a stage type is part of the timelock path (for modular caching).
|
|
176
|
+
* Includes all stages after proposal/election execution: L2_TIMELOCK → RETRYABLE_EXECUTED
|
|
128
177
|
*/
|
|
129
|
-
function
|
|
130
|
-
return
|
|
178
|
+
function isTimelockPathStage(type) {
|
|
179
|
+
return TIMELOCK_PATH_STAGES.has(type);
|
|
131
180
|
}
|
|
132
181
|
/**
|
|
133
|
-
*
|
|
182
|
+
* Split stages into parent and timelock stages for modular caching.
|
|
183
|
+
*
|
|
184
|
+
* Parent stages:
|
|
185
|
+
* - Governor: PROPOSAL_CREATED, VOTING_ACTIVE, PROPOSAL_QUEUED
|
|
186
|
+
* - Election: CREATE_ELECTION, NOMINEE_ELECTION, NOMINEE_VETTING, MEMBER_ELECTION
|
|
187
|
+
*
|
|
188
|
+
* Timelock stages: L2_TIMELOCK, L2_TO_L1_MESSAGE, L1_TIMELOCK, RETRYABLE_EXECUTED
|
|
134
189
|
*/
|
|
135
|
-
function
|
|
136
|
-
const
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
190
|
+
function splitStages(stages) {
|
|
191
|
+
const parentStages = stages.filter((s) => !isTimelockPathStage(s.type));
|
|
192
|
+
const timelockStages = stages.filter((s) => isTimelockPathStage(s.type));
|
|
193
|
+
return { parentStages, timelockStages };
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Check if stages have any timelock progress (for determining if we need linked checkpoint).
|
|
197
|
+
* Returns true if any timelock path stage has been started.
|
|
198
|
+
*/
|
|
199
|
+
function hasTimelockProgress(stages) {
|
|
200
|
+
return stages.some((s) => isTimelockPathStage(s.type) && s.status !== "NOT_STARTED");
|
|
143
201
|
}
|
|
144
202
|
/**
|
|
145
203
|
* Find a stage by type in a list of stages
|
|
@@ -156,12 +214,24 @@ function updateStageInList(stages, updatedStage) {
|
|
|
156
214
|
// ============================================================================
|
|
157
215
|
// Section 3: Stage Querying and Status
|
|
158
216
|
// ============================================================================
|
|
217
|
+
/**
|
|
218
|
+
* Check if status is terminal (COMPLETED, SKIPPED, or FAILED)
|
|
219
|
+
*/
|
|
220
|
+
function isStageTerminal(status) {
|
|
221
|
+
return status === "COMPLETED" || status === "SKIPPED" || status === "FAILED";
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Check if status represents successful completion (COMPLETED or SKIPPED)
|
|
225
|
+
*/
|
|
226
|
+
function isStageSuccess(status) {
|
|
227
|
+
return status === "COMPLETED" || status === "SKIPPED";
|
|
228
|
+
}
|
|
159
229
|
/**
|
|
160
230
|
* Get the current active stage (first non-completed stage)
|
|
161
231
|
*/
|
|
162
232
|
function getCurrentStage(stages) {
|
|
163
233
|
for (const stage of stages) {
|
|
164
|
-
if (stage.status
|
|
234
|
+
if (!isStageTerminal(stage.status)) {
|
|
165
235
|
return stage;
|
|
166
236
|
}
|
|
167
237
|
}
|
|
@@ -171,7 +241,7 @@ function getCurrentStage(stages) {
|
|
|
171
241
|
* Check if all stages are complete
|
|
172
242
|
*/
|
|
173
243
|
function areAllStagesComplete(stages) {
|
|
174
|
-
return stages.every((s) => s.status
|
|
244
|
+
return stages.every((s) => isStageTerminal(s.status));
|
|
175
245
|
}
|
|
176
246
|
/**
|
|
177
247
|
* Find first READY stage that's executable
|
|
@@ -223,6 +293,84 @@ function getTrackingStatusSummary(stages) {
|
|
|
223
293
|
}
|
|
224
294
|
return { total: stages.length, completed, pending, ready, failed, skipped };
|
|
225
295
|
}
|
|
296
|
+
/**
|
|
297
|
+
* Get the current lifecycle phase from tracked stages.
|
|
298
|
+
*
|
|
299
|
+
* Returns a human-readable phase that represents where a proposal or timelock
|
|
300
|
+
* operation is in its lifecycle. Useful for UI display and status filtering.
|
|
301
|
+
*
|
|
302
|
+
* @param stages - Array of tracked stages
|
|
303
|
+
* @returns The current lifecycle phase
|
|
304
|
+
*
|
|
305
|
+
* @example
|
|
306
|
+
* ```typescript
|
|
307
|
+
* const phase = getLifecyclePhase(result.stages);
|
|
308
|
+
* if (phase === "l1_timelock_pending") {
|
|
309
|
+
* console.log("Waiting for L1 timelock delay...");
|
|
310
|
+
* }
|
|
311
|
+
* ```
|
|
312
|
+
*/
|
|
313
|
+
function getLifecyclePhase(stages) {
|
|
314
|
+
if (stages.length === 0)
|
|
315
|
+
return "unknown";
|
|
316
|
+
// Check for failure first
|
|
317
|
+
if (stages.some((s) => s.status === "FAILED"))
|
|
318
|
+
return "failed";
|
|
319
|
+
// Check if all stages are complete
|
|
320
|
+
if (areAllStagesComplete(stages))
|
|
321
|
+
return "completed";
|
|
322
|
+
// Build a map for quick lookup
|
|
323
|
+
const stageMap = new Map(stages.map((s) => [s.type, s]));
|
|
324
|
+
// Helper to check stage status
|
|
325
|
+
const getStatus = (type) => stageMap.get(type)?.status;
|
|
326
|
+
const isComplete = (type) => isStageSuccess(getStatus(type));
|
|
327
|
+
const isPendingOrReady = (type) => {
|
|
328
|
+
const status = getStatus(type);
|
|
329
|
+
return status === "PENDING" || status === "READY" || status === "NOT_STARTED";
|
|
330
|
+
};
|
|
331
|
+
// Governor-specific stages (in order)
|
|
332
|
+
if (stageMap.has("PROPOSAL_CREATED")) {
|
|
333
|
+
if (!isComplete("PROPOSAL_CREATED"))
|
|
334
|
+
return "proposal_created";
|
|
335
|
+
if (isPendingOrReady("VOTING_ACTIVE"))
|
|
336
|
+
return "voting";
|
|
337
|
+
if (isPendingOrReady("PROPOSAL_QUEUED"))
|
|
338
|
+
return "queued";
|
|
339
|
+
}
|
|
340
|
+
// Timelock path stages (shared by governor and direct timelock entry)
|
|
341
|
+
if (stageMap.has("L2_TIMELOCK")) {
|
|
342
|
+
if (isPendingOrReady("L2_TIMELOCK"))
|
|
343
|
+
return "l2_timelock_pending";
|
|
344
|
+
if (isComplete("L2_TIMELOCK")) {
|
|
345
|
+
// Check if this is L2-only (non-constitutional) - remaining stages skipped
|
|
346
|
+
const l2ToL1 = stageMap.get("L2_TO_L1_MESSAGE");
|
|
347
|
+
if (l2ToL1?.status === "SKIPPED")
|
|
348
|
+
return "completed";
|
|
349
|
+
if (isPendingOrReady("L2_TO_L1_MESSAGE"))
|
|
350
|
+
return "l2_timelock_executed";
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
if (stageMap.has("L2_TO_L1_MESSAGE")) {
|
|
354
|
+
if (isPendingOrReady("L2_TO_L1_MESSAGE"))
|
|
355
|
+
return "l2_to_l1_pending";
|
|
356
|
+
if (isComplete("L2_TO_L1_MESSAGE") && isPendingOrReady("L1_TIMELOCK")) {
|
|
357
|
+
return "l1_timelock_pending";
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
if (stageMap.has("L1_TIMELOCK")) {
|
|
361
|
+
if (isPendingOrReady("L1_TIMELOCK"))
|
|
362
|
+
return "l1_timelock_pending";
|
|
363
|
+
if (isComplete("L1_TIMELOCK")) {
|
|
364
|
+
if (isPendingOrReady("RETRYABLE_EXECUTED"))
|
|
365
|
+
return "l1_timelock_executed";
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
if (stageMap.has("RETRYABLE_EXECUTED")) {
|
|
369
|
+
if (isPendingOrReady("RETRYABLE_EXECUTED"))
|
|
370
|
+
return "retryables_pending";
|
|
371
|
+
}
|
|
372
|
+
return "unknown";
|
|
373
|
+
}
|
|
226
374
|
/**
|
|
227
375
|
* Extract the operationId from tracked stages.
|
|
228
376
|
*
|
|
@@ -233,20 +381,13 @@ function getTrackingStatusSummary(stages) {
|
|
|
233
381
|
* @returns The operationId if found, undefined otherwise
|
|
234
382
|
*/
|
|
235
383
|
function extractOperationId(stages) {
|
|
236
|
-
// Check PROPOSAL_QUEUED
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
}
|
|
244
|
-
// Fallback to L2_TIMELOCK
|
|
245
|
-
const l2TimelockStage = stages.find((s) => s.type === "L2_TIMELOCK");
|
|
246
|
-
if (l2TimelockStage?.type === "L2_TIMELOCK") {
|
|
247
|
-
const opId = l2TimelockStage.data.operationId;
|
|
248
|
-
if (typeof opId === "string" && opId.length > 0) {
|
|
249
|
-
return opId;
|
|
384
|
+
// Check stages that contain operationId (PROPOSAL_QUEUED is most common)
|
|
385
|
+
for (const stage of stages) {
|
|
386
|
+
if (stage.type === "PROPOSAL_QUEUED" || stage.type === "L2_TIMELOCK") {
|
|
387
|
+
const opId = stage.data.operationId;
|
|
388
|
+
if (typeof opId === "string" && opId.length > 0) {
|
|
389
|
+
return opId;
|
|
390
|
+
}
|
|
250
391
|
}
|
|
251
392
|
}
|
|
252
393
|
return undefined;
|
|
@@ -338,8 +479,8 @@ async function checkOperationReady(timelockAddress, operationId, provider) {
|
|
|
338
479
|
(0, multicall_1.buildCallInput)(timelockAddress, abis_1.timelockInterface, "isOperationReady", [operationId]),
|
|
339
480
|
(0, multicall_1.buildCallInput)(timelockAddress, abis_1.timelockInterface, "isOperationDone", [operationId]),
|
|
340
481
|
]);
|
|
341
|
-
const isReady = results[0];
|
|
342
|
-
const isDone = results[1];
|
|
482
|
+
const isReady = results[0] ?? false;
|
|
483
|
+
const isDone = results[1] ?? false;
|
|
343
484
|
if (isReady)
|
|
344
485
|
return null; // Ready - no error
|
|
345
486
|
if (isDone) {
|
|
@@ -437,7 +578,7 @@ async function searchAndCompleteTimelockExecution(stage, timelockAddress, operat
|
|
|
437
578
|
builder.timing(stage.timing);
|
|
438
579
|
if (event) {
|
|
439
580
|
const execTimestamp = await getBlockTimestamp(event.blockNumber, provider);
|
|
440
|
-
const chainId = (0, types_1.chainToChainId)(chain)
|
|
581
|
+
const chainId = (0, types_1.chainToChainId)(chain);
|
|
441
582
|
builder
|
|
442
583
|
.status("COMPLETED")
|
|
443
584
|
.tx(event.txHash, event.blockNumber, chain, chainId, {
|
package/dist/stages/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/stages/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/stages/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,8 @@ export interface CheckpointMetadata {
|
|
|
19
19
|
export declare function createCheckpointMetadata(errorCount?: number): CheckpointMetadata;
|
|
20
20
|
/**
|
|
21
21
|
* Increment error count for retry logic
|
|
22
|
-
* Gas errors don't increment the count (transient)
|
|
22
|
+
* Gas estimation errors don't increment the count (transient)
|
|
23
|
+
* Uses centralized isGasEstimationError from rpc-utils for consistency
|
|
23
24
|
*/
|
|
24
25
|
export declare function incrementErrorCount(currentCount: number, error: Error | string): number;
|
|
25
26
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint-helpers.d.ts","sourceRoot":"","sources":["../../src/tracker/checkpoint-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"checkpoint-helpers.d.ts","sourceRoot":"","sources":["../../src/tracker/checkpoint-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAKjE,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,SAAI,GAAG,kBAAkB,CAK3E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAEvF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,kBAAkB,EAC9B,SAAS,SAA0B,GAClC,OAAO,CAGT;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,kBAAkB,GAAG,OAAO,CAc5E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,kBAAkB,GAAG,MAAM,CAE9E;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,aAAa,QAAQ,CAAC;AACnC,eAAO,MAAM,oBAAoB,eAAe,CAAC;AAEjD,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE5C;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI3D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAG9F;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,EAC5C,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,EAC1C,aAAa,GAAE,MAAgC,GAC9C,YAAY,CAiEd"}
|
|
@@ -24,6 +24,7 @@ exports.parseTimelockOpKey = parseTimelockOpKey;
|
|
|
24
24
|
exports.computeCacheStats = computeCacheStats;
|
|
25
25
|
const utils_1 = require("../stages/utils");
|
|
26
26
|
const constants_1 = require("../constants");
|
|
27
|
+
const rpc_utils_1 = require("../utils/rpc-utils");
|
|
27
28
|
exports.DEFAULT_ERROR_THRESHOLD = 5;
|
|
28
29
|
/**
|
|
29
30
|
* Create standard checkpoint metadata
|
|
@@ -36,15 +37,11 @@ function createCheckpointMetadata(errorCount = 0) {
|
|
|
36
37
|
}
|
|
37
38
|
/**
|
|
38
39
|
* Increment error count for retry logic
|
|
39
|
-
* Gas errors don't increment the count (transient)
|
|
40
|
+
* Gas estimation errors don't increment the count (transient)
|
|
41
|
+
* Uses centralized isGasEstimationError from rpc-utils for consistency
|
|
40
42
|
*/
|
|
41
43
|
function incrementErrorCount(currentCount, error) {
|
|
42
|
-
|
|
43
|
-
? error.message.includes("insufficient funds") ||
|
|
44
|
-
error.message.includes("gas required exceeds allowance")
|
|
45
|
-
: typeof error === "string" &&
|
|
46
|
-
(error.includes("insufficient funds") || error.includes("gas required exceeds allowance"));
|
|
47
|
-
return isGasError ? currentCount : currentCount + 1;
|
|
44
|
+
return (0, rpc_utils_1.isGasEstimationError)(error) ? currentCount : currentCount + 1;
|
|
48
45
|
}
|
|
49
46
|
/**
|
|
50
47
|
* Check if checkpoint has too many errors to continue tracking
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint-helpers.js","sourceRoot":"","sources":["../../src/tracker/checkpoint-helpers.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"checkpoint-helpers.js","sourceRoot":"","sources":["../../src/tracker/checkpoint-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/tracker/discovery.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAEL,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACb,MAAM,UAAU,CAAC;AAElB,OAAO,EAEL,kBAAkB,EAGnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAEL,oBAAoB,EACrB,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAO/F;AAQD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAClC,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/tracker/discovery.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAEL,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACb,MAAM,UAAU,CAAC;AAElB,OAAO,EAEL,kBAAkB,EAGnB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAEL,oBAAoB,EACrB,MAAM,iCAAiC,CAAC;AAMzC,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAO/F;AAQD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAClC,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA2DtE;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,mBAAmB,EAC/B,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,YAAY,GAAG,SAAS,GAC9B,OAAO,CAAC,IAAI,CAAC,CAiCf;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GACnC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAG/B;AAED;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CACvC,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GACnC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAGjC;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,kBAAkB,EAAE,EAC/B,WAAW,EAAE,oBAAoB,EAAE,EACnC,KAAK,EAAE,YAAY,GAAG,SAAS,GAC9B,OAAO,CAAC,IAAI,CAAC,CAuDf;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACrC,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,cAAc,EAAE,mBAAmB,EACnC,UAAU,GAAE,eAAoB,EAChC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7D,OAAO,CAAC;IACT,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,eAAe,CAAC;CACzB,CAAC,CA0MD"}
|
|
@@ -67,11 +67,16 @@ async function verifyWatermark(key, blockNumber, expectedHash, provider) {
|
|
|
67
67
|
logDiscovery("%s: no stored hash, establishing hash at block %d", key, blockNumber);
|
|
68
68
|
return { blockNumber, isValid: true, newHash: block.hash };
|
|
69
69
|
}
|
|
70
|
+
// Block not found - could indicate reorg or future block
|
|
71
|
+
logDiscovery("%s: block %d not found when establishing hash", key, blockNumber);
|
|
70
72
|
}
|
|
71
|
-
catch {
|
|
72
|
-
|
|
73
|
+
catch (error) {
|
|
74
|
+
logDiscovery("%s: provider error establishing hash at block %d: %s", key, blockNumber, error);
|
|
75
|
+
// Provider error during hash establishment - return invalid to trigger retry on next cycle
|
|
76
|
+
return { blockNumber, isValid: false };
|
|
73
77
|
}
|
|
74
|
-
|
|
78
|
+
// Block not found but no error - treat as invalid (may be future block or transient issue)
|
|
79
|
+
return { blockNumber, isValid: false };
|
|
75
80
|
}
|
|
76
81
|
// Verify stored hash against chain
|
|
77
82
|
try {
|
|
@@ -177,38 +182,43 @@ async function createPendingCheckpoints(proposals, timelockOps, cache) {
|
|
|
177
182
|
void timelockOps;
|
|
178
183
|
if (!cache)
|
|
179
184
|
return;
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
// Create pending checkpoints for proposals (if not already tracked)
|
|
183
|
-
// Use tx: key format to match trackByTxHash cache keys
|
|
184
|
-
// Skip election proposals - they use election:* checkpoints
|
|
185
|
-
for (const p of proposals) {
|
|
185
|
+
// Filter out election proposals first (they use election:* checkpoints)
|
|
186
|
+
const governorProposals = proposals.filter((p) => {
|
|
186
187
|
const proposalType = (0, governor_discovery_1.detectProposalType)(p.governorAddress);
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
188
|
+
return !(0, governor_discovery_1.isElectionProposal)(proposalType);
|
|
189
|
+
});
|
|
190
|
+
const skippedElections = proposals.length - governorProposals.length;
|
|
191
|
+
// Build cache keys and check existing checkpoints in parallel
|
|
192
|
+
const keys = governorProposals.map((p) => `tx:${p.creationTxHash.toLowerCase()}`);
|
|
193
|
+
const existingCheckpoints = await Promise.all(keys.map((key) => cache.get(key)));
|
|
194
|
+
// Create checkpoints only for proposals that don't exist yet
|
|
195
|
+
const now = Date.now();
|
|
196
|
+
const toCreate = [];
|
|
197
|
+
for (let i = 0; i < governorProposals.length; i++) {
|
|
198
|
+
if (existingCheckpoints[i])
|
|
194
199
|
continue; // Already has a checkpoint
|
|
195
|
-
const
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
200
|
+
const p = governorProposals[i];
|
|
201
|
+
toCreate.push({
|
|
202
|
+
key: keys[i],
|
|
203
|
+
checkpoint: {
|
|
204
|
+
version: 1,
|
|
205
|
+
createdAt: now,
|
|
206
|
+
input: {
|
|
207
|
+
type: "governor",
|
|
208
|
+
governorAddress: p.governorAddress,
|
|
209
|
+
proposalId: p.proposalId,
|
|
210
|
+
creationTxHash: p.creationTxHash,
|
|
211
|
+
},
|
|
212
|
+
lastProcessedStage: null,
|
|
213
|
+
lastProcessedBlock: { l1: 0, l2: p.creationBlock },
|
|
214
|
+
cachedData: {},
|
|
215
|
+
metadata: { errorCount: 0, lastTrackedAt: 0 },
|
|
203
216
|
},
|
|
204
|
-
|
|
205
|
-
lastProcessedBlock: { l1: 0, l2: p.creationBlock },
|
|
206
|
-
cachedData: {},
|
|
207
|
-
metadata: { errorCount: 0, lastTrackedAt: 0 }, // lastTrackedAt=0 means never tracked
|
|
208
|
-
};
|
|
209
|
-
await cache.set(key, checkpoint);
|
|
210
|
-
created++;
|
|
217
|
+
});
|
|
211
218
|
}
|
|
219
|
+
// Write all new checkpoints in parallel
|
|
220
|
+
await Promise.all(toCreate.map(({ key, checkpoint }) => cache.set(key, checkpoint)));
|
|
221
|
+
const created = toCreate.length;
|
|
212
222
|
if (created > 0 || skippedElections > 0) {
|
|
213
223
|
logDiscovery("created pending checkpoints: %d proposals (skipped %d elections)", created, skippedElections);
|
|
214
224
|
}
|
|
@@ -262,9 +272,21 @@ async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks,
|
|
|
262
272
|
}
|
|
263
273
|
return { key, blockNumber: result.blockNumber };
|
|
264
274
|
});
|
|
265
|
-
const verificationResults = await Promise.
|
|
266
|
-
for (const
|
|
267
|
-
|
|
275
|
+
const verificationResults = await Promise.allSettled(verificationPromises);
|
|
276
|
+
for (const result of verificationResults) {
|
|
277
|
+
if (result.status === "fulfilled") {
|
|
278
|
+
const { key, blockNumber } = result.value;
|
|
279
|
+
verifiedWatermarks[key] = blockNumber;
|
|
280
|
+
}
|
|
281
|
+
else {
|
|
282
|
+
logDiscovery("Watermark verification failed, using fallback: %s", (0, rpc_utils_1.getErrorMessage)(result.reason));
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
// Ensure all active keys have a watermark (fallback for rejected verifications)
|
|
286
|
+
for (const key of activeKeys) {
|
|
287
|
+
if (verifiedWatermarks[key] === undefined) {
|
|
288
|
+
verifiedWatermarks[key] = defaultStartBlock;
|
|
289
|
+
}
|
|
268
290
|
}
|
|
269
291
|
}
|
|
270
292
|
else {
|
|
@@ -334,16 +356,11 @@ async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks,
|
|
|
334
356
|
// Only need to fetch once since all keys use the same toBlock
|
|
335
357
|
let toBlockHash;
|
|
336
358
|
if (activeKeys.length > 0) {
|
|
337
|
-
|
|
338
|
-
const block = await (0, rpc_utils_1.queryWithRetry)(() => l2Provider.getBlock(toBlock));
|
|
339
|
-
if (block) {
|
|
340
|
-
toBlockHash = block.hash;
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
catch {
|
|
344
|
-
// Failed to get block hash - continue without it
|
|
359
|
+
const block = await (0, rpc_utils_1.queryWithRetry)(() => l2Provider.getBlock(toBlock)).catch(() => {
|
|
345
360
|
logDiscovery("failed to fetch toBlock hash for reorg detection");
|
|
346
|
-
|
|
361
|
+
return null;
|
|
362
|
+
});
|
|
363
|
+
toBlockHash = block?.hash;
|
|
347
364
|
}
|
|
348
365
|
// Update hashes for all active keys with toBlock hash
|
|
349
366
|
const newHashes = { ...updatedHashes };
|