@gzeoneth/gov-tracker 0.2.0-0 → 0.2.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/README.md +3 -0
- package/dist/calldata/decoder.d.ts.map +1 -1
- package/dist/calldata/decoder.js +14 -8
- package/dist/calldata/decoder.js.map +1 -1
- package/dist/calldata/parameter-decoder.js +8 -8
- package/dist/calldata/parameter-decoder.js.map +1 -1
- package/dist/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +5 -6
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/cli/lib/json-state.d.ts.map +1 -1
- package/dist/cli/lib/json-state.js +12 -11
- package/dist/cli/lib/json-state.js.map +1 -1
- package/dist/cli/monitor.js +2 -2
- package/dist/cli/monitor.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -20
- package/dist/index.js.map +1 -1
- package/dist/simulation/simulation-data.js +2 -2
- package/dist/simulation/simulation-data.js.map +1 -1
- package/dist/stages/{stage-builder.d.ts → builder.d.ts} +11 -7
- package/dist/stages/builder.d.ts.map +1 -0
- package/dist/stages/{stage-builder.js → builder.js} +12 -3
- package/dist/stages/builder.js.map +1 -0
- package/dist/stages/l2-to-l1-message.d.ts +3 -3
- package/dist/stages/l2-to-l1-message.d.ts.map +1 -1
- package/dist/stages/l2-to-l1-message.js +11 -12
- package/dist/stages/l2-to-l1-message.js.map +1 -1
- package/dist/stages/proposal-created.d.ts +2 -2
- package/dist/stages/proposal-created.d.ts.map +1 -1
- package/dist/stages/proposal-created.js +4 -4
- package/dist/stages/proposal-created.js.map +1 -1
- package/dist/stages/proposal-queued.d.ts +2 -2
- package/dist/stages/proposal-queued.d.ts.map +1 -1
- package/dist/stages/proposal-queued.js +8 -9
- package/dist/stages/proposal-queued.js.map +1 -1
- package/dist/stages/retryables.d.ts +3 -3
- package/dist/stages/retryables.d.ts.map +1 -1
- package/dist/stages/retryables.js +14 -15
- package/dist/stages/retryables.js.map +1 -1
- package/dist/stages/timelock.d.ts +3 -3
- package/dist/stages/timelock.d.ts.map +1 -1
- package/dist/stages/timelock.js +32 -32
- package/dist/stages/timelock.js.map +1 -1
- package/dist/stages/{base.d.ts → utils.d.ts} +78 -35
- package/dist/stages/utils.d.ts.map +1 -0
- package/dist/stages/{base.js → utils.js} +208 -63
- package/dist/stages/utils.js.map +1 -0
- package/dist/stages/voting.d.ts +2 -2
- package/dist/stages/voting.d.ts.map +1 -1
- package/dist/stages/voting.js +2 -2
- package/dist/stages/voting.js.map +1 -1
- package/dist/tracker/cache.d.ts +104 -0
- package/dist/tracker/cache.d.ts.map +1 -0
- package/dist/tracker/cache.js +287 -0
- package/dist/tracker/cache.js.map +1 -0
- package/dist/tracker/execute.js +8 -8
- package/dist/tracker/execute.js.map +1 -1
- package/dist/tracker/pipeline.d.ts +3 -3
- package/dist/tracker/pipeline.d.ts.map +1 -1
- package/dist/tracker/pipeline.js +38 -35
- package/dist/tracker/pipeline.js.map +1 -1
- package/dist/tracker/query.js +3 -3
- package/dist/tracker/query.js.map +1 -1
- package/dist/tracker/state.d.ts +88 -81
- package/dist/tracker/state.d.ts.map +1 -1
- package/dist/tracker/state.js +241 -264
- package/dist/tracker/state.js.map +1 -1
- package/dist/tracker.d.ts +4 -4
- package/dist/tracker.d.ts.map +1 -1
- package/dist/tracker.js +22 -20
- package/dist/tracker.js.map +1 -1
- package/dist/types/calldata.d.ts +15 -3
- package/dist/types/calldata.d.ts.map +1 -1
- package/dist/types/calldata.js +7 -0
- package/dist/types/calldata.js.map +1 -1
- package/dist/types/core.d.ts +12 -0
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js +30 -0
- package/dist/types/core.js.map +1 -1
- package/dist/types/index.d.ts +3 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +7 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/stages.d.ts +32 -17
- package/dist/types/stages.d.ts.map +1 -1
- package/dist/types/stages.js +2 -0
- package/dist/types/stages.js.map +1 -1
- package/package.json +2 -1
- package/dist/stages/base.d.ts.map +0 -1
- package/dist/stages/base.js.map +0 -1
- package/dist/stages/stage-builder.d.ts.map +0 -1
- package/dist/stages/stage-builder.js.map +0 -1
- package/dist/tracker/context.d.ts +0 -111
- package/dist/tracker/context.d.ts.map +0 -1
- package/dist/tracker/context.js +0 -264
- package/dist/tracker/context.js.map +0 -1
- package/dist/utils/stage-helpers.d.ts +0 -50
- package/dist/utils/stage-helpers.d.ts.map +0 -1
- package/dist/utils/stage-helpers.js +0 -135
- package/dist/utils/stage-helpers.js.map +0 -1
package/dist/tracker/pipeline.js
CHANGED
|
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
9
9
|
exports.trackGovernorPipeline = trackGovernorPipeline;
|
|
10
10
|
exports.trackTimelockPipeline = trackTimelockPipeline;
|
|
11
11
|
const logger_1 = require("../utils/logger");
|
|
12
|
-
const
|
|
13
|
-
const
|
|
12
|
+
const state_1 = require("./state");
|
|
13
|
+
const utils_1 = require("../stages/utils");
|
|
14
14
|
const proposal_created_1 = require("../stages/proposal-created");
|
|
15
15
|
const voting_1 = require("../stages/voting");
|
|
16
16
|
const proposal_queued_1 = require("../stages/proposal-queued");
|
|
@@ -26,7 +26,9 @@ const { pipeline: log, tracker: logTracker } = logger_1.loggers;
|
|
|
26
26
|
// L1_TIMELOCK is the only L1 stage; RETRYABLE_EXECUTED runs on L2 (Arb1/Nova)
|
|
27
27
|
const L1_STAGES = new Set(["L1_TIMELOCK"]);
|
|
28
28
|
// Helper: create placeholder stage
|
|
29
|
-
const placeholder = (type, status, reason) =>
|
|
29
|
+
const placeholder = (type, status, reason) =>
|
|
30
|
+
// Assertion needed: placeholder stages have partial data that gets filled later
|
|
31
|
+
({
|
|
30
32
|
type,
|
|
31
33
|
status,
|
|
32
34
|
chain: L1_STAGES.has(type) ? "ethereum" : "arb1",
|
|
@@ -36,10 +38,10 @@ const placeholder = (type, status, reason) => ({
|
|
|
36
38
|
});
|
|
37
39
|
// Helper: track with cache check
|
|
38
40
|
async function withCache(state, stageType, key, onCached, onTrack) {
|
|
39
|
-
const cached = (0,
|
|
41
|
+
const cached = (0, state_1.getCompletedStage)(state, stageType);
|
|
40
42
|
if (cached) {
|
|
41
43
|
log("%s: using cached stage", stageType);
|
|
42
|
-
return { state: await (0,
|
|
44
|
+
return { state: await (0, state_1.addStage)(state, cached), [key]: onCached(cached) };
|
|
43
45
|
}
|
|
44
46
|
return onTrack();
|
|
45
47
|
}
|
|
@@ -47,7 +49,7 @@ async function withCache(state, stageType, key, onCached, onTrack) {
|
|
|
47
49
|
async function track(state, stageType, key, tracker) {
|
|
48
50
|
try {
|
|
49
51
|
const { stage, result } = await tracker();
|
|
50
|
-
return { state: await (0,
|
|
52
|
+
return { state: await (0, state_1.addStage)(state, stage), [key]: result };
|
|
51
53
|
}
|
|
52
54
|
catch (error) {
|
|
53
55
|
throw new Error(`Failed to track ${stageType}: ${error instanceof Error ? error.message : String(error)}`);
|
|
@@ -55,11 +57,11 @@ async function track(state, stageType, key, tracker) {
|
|
|
55
57
|
}
|
|
56
58
|
// Governor Stages (1-3)
|
|
57
59
|
async function pipelineTrackProposalCreated(state) {
|
|
58
|
-
const governorAddress = (0,
|
|
59
|
-
const proposalId = (0,
|
|
60
|
+
const governorAddress = (0, state_1.getGovernorAddress)(state);
|
|
61
|
+
const proposalId = (0, state_1.getProposalId)(state);
|
|
60
62
|
if (!governorAddress || !proposalId)
|
|
61
63
|
return { state, found: false };
|
|
62
|
-
if ((0,
|
|
64
|
+
if ((0, state_1.getIsElection)(state))
|
|
63
65
|
return { state, found: false };
|
|
64
66
|
return withCache(state, "PROPOSAL_CREATED", "found", () => true, async () => {
|
|
65
67
|
log("PROPOSAL_CREATED: tracking");
|
|
@@ -73,9 +75,9 @@ async function pipelineTrackProposalCreated(state) {
|
|
|
73
75
|
});
|
|
74
76
|
}
|
|
75
77
|
async function pipelineTrackVoting(state) {
|
|
76
|
-
const governorAddress = (0,
|
|
77
|
-
const proposalId = (0,
|
|
78
|
-
const proposalData = (0,
|
|
78
|
+
const governorAddress = (0, state_1.getGovernorAddress)(state);
|
|
79
|
+
const proposalId = (0, state_1.getProposalId)(state);
|
|
80
|
+
const proposalData = (0, state_1.getProposalData)(state);
|
|
79
81
|
if (!governorAddress || !proposalId || !proposalData)
|
|
80
82
|
return { state, complete: false };
|
|
81
83
|
return withCache(state, "VOTING_ACTIVE", "complete", (c) => c.status === "COMPLETED", async () => {
|
|
@@ -87,9 +89,9 @@ async function pipelineTrackVoting(state) {
|
|
|
87
89
|
});
|
|
88
90
|
}
|
|
89
91
|
async function pipelineTrackProposalQueued(state) {
|
|
90
|
-
const governorAddress = (0,
|
|
91
|
-
const proposalId = (0,
|
|
92
|
-
const proposalData = (0,
|
|
92
|
+
const governorAddress = (0, state_1.getGovernorAddress)(state);
|
|
93
|
+
const proposalId = (0, state_1.getProposalId)(state);
|
|
94
|
+
const proposalData = (0, state_1.getProposalData)(state);
|
|
93
95
|
if (!governorAddress || !proposalId)
|
|
94
96
|
return { state, queued: false };
|
|
95
97
|
return withCache(state, "PROPOSAL_QUEUED", "queued", () => true, async () => {
|
|
@@ -97,7 +99,7 @@ async function pipelineTrackProposalQueued(state) {
|
|
|
97
99
|
return track(state, "PROPOSAL_QUEUED", "queued", async () => {
|
|
98
100
|
// Voting deadline is L1 block number - convert to L2 for searching
|
|
99
101
|
// Use bounds to speed up binary search: min=creation block, max=creation+7M (~20 days)
|
|
100
|
-
const votingDeadlineL1 = (0,
|
|
102
|
+
const votingDeadlineL1 = (0, state_1.getVotingEndBlock)(state);
|
|
101
103
|
let votingEndBlock;
|
|
102
104
|
if (votingDeadlineL1) {
|
|
103
105
|
const creationBlock = proposalData?.creationBlock ?? 0;
|
|
@@ -110,7 +112,8 @@ async function pipelineTrackProposalQueued(state) {
|
|
|
110
112
|
}
|
|
111
113
|
const r = await (0, proposal_queued_1.trackProposalQueued)(governorAddress, proposalId, state.providers.l2, proposalData?.creationBlock ?? 0, { votingEndBlock });
|
|
112
114
|
let stage = r.stage;
|
|
113
|
-
if (stage.status === "READY" && proposalData) {
|
|
115
|
+
if (stage.type === "PROPOSAL_QUEUED" && stage.status === "READY" && proposalData) {
|
|
116
|
+
// Enrich stage data with proposal info for READY state
|
|
114
117
|
stage = {
|
|
115
118
|
...stage,
|
|
116
119
|
data: {
|
|
@@ -128,16 +131,16 @@ async function pipelineTrackProposalQueued(state) {
|
|
|
128
131
|
}
|
|
129
132
|
// Timelock Stage (4)
|
|
130
133
|
async function pipelineTrackL2Timelock(state) {
|
|
131
|
-
const timelockAddress = (0,
|
|
132
|
-
const operationId = (0,
|
|
133
|
-
const firstCallScheduledData = (0,
|
|
134
|
+
const timelockAddress = (0, state_1.getTimelockAddress)(state);
|
|
135
|
+
const operationId = (0, state_1.getOperationId)(state);
|
|
136
|
+
const firstCallScheduledData = (0, state_1.getFirstCallScheduledData)(state);
|
|
134
137
|
if (!timelockAddress || !operationId || !firstCallScheduledData)
|
|
135
138
|
return { state, executed: false };
|
|
136
139
|
return withCache(state, "L2_TIMELOCK", "executed", (c) => c.status === "COMPLETED", async () => {
|
|
137
140
|
log("L2_TIMELOCK: tracking");
|
|
138
141
|
return track(state, "L2_TIMELOCK", "executed", async () => {
|
|
139
|
-
const r = await (0, timelock_1.trackL2Timelock)(timelockAddress, operationId, state.providers.l2, (0,
|
|
140
|
-
cachedExecutionTxHash: (0,
|
|
142
|
+
const r = await (0, timelock_1.trackL2Timelock)(timelockAddress, operationId, state.providers.l2, (0, state_1.getQueueBlockNumber)(state) ?? 0, firstCallScheduledData, {
|
|
143
|
+
cachedExecutionTxHash: (0, state_1.getL2ExecutionTxHash)(state),
|
|
141
144
|
allStages: state.stages,
|
|
142
145
|
});
|
|
143
146
|
return { stage: r.stage, result: r.executionTxHash !== null };
|
|
@@ -149,13 +152,13 @@ const L1_ROUNDTRIP_STAGES = ["L2_TO_L1_MESSAGE", "L1_TIMELOCK", "RETRYABLE_EXECU
|
|
|
149
152
|
async function addSkippedL1Stages(state) {
|
|
150
153
|
let s = state;
|
|
151
154
|
for (const type of L1_ROUNDTRIP_STAGES)
|
|
152
|
-
s = await (0,
|
|
155
|
+
s = await (0, state_1.addStage)(s, placeholder(type, "SKIPPED", "L2-only path"));
|
|
153
156
|
return s;
|
|
154
157
|
}
|
|
155
158
|
async function pipelineTrackL2ToL1Message(state) {
|
|
156
|
-
const l2ExecutionTxHash = (0,
|
|
157
|
-
const addressForPath = (0,
|
|
158
|
-
const needsL1 = addressForPath ? (0,
|
|
159
|
+
const l2ExecutionTxHash = (0, state_1.getL2ExecutionTxHash)(state);
|
|
160
|
+
const addressForPath = (0, state_1.getGovernorAddress)(state) ?? (0, state_1.getTimelockAddress)(state);
|
|
161
|
+
const needsL1 = addressForPath ? (0, utils_1.isConstitutional)(addressForPath) : true;
|
|
159
162
|
if (!needsL1) {
|
|
160
163
|
log("L2_TO_L1_MESSAGE: L2-only path, skipping L1 stages");
|
|
161
164
|
return { state: await addSkippedL1Stages(state), executed: false, needsL1: false };
|
|
@@ -163,14 +166,14 @@ async function pipelineTrackL2ToL1Message(state) {
|
|
|
163
166
|
if (!l2ExecutionTxHash)
|
|
164
167
|
return { state, executed: false, needsL1: true };
|
|
165
168
|
// Check completed cache
|
|
166
|
-
const cached = (0,
|
|
169
|
+
const cached = (0, state_1.getCompletedStage)(state, "L2_TO_L1_MESSAGE");
|
|
167
170
|
if (cached) {
|
|
168
171
|
log("L2_TO_L1_MESSAGE: using cached stage");
|
|
169
|
-
return { state: await (0,
|
|
172
|
+
return { state: await (0, state_1.addStage)(state, cached), executed: true, needsL1: true };
|
|
170
173
|
}
|
|
171
174
|
// Fast-path for pending (still in challenge period)
|
|
172
|
-
const pending = (0,
|
|
173
|
-
if (pending?.status === "PENDING") {
|
|
175
|
+
const pending = (0, state_1.getCachedStage)(state, "L2_TO_L1_MESSAGE");
|
|
176
|
+
if (pending?.type === "L2_TO_L1_MESSAGE" && pending.status === "PENDING") {
|
|
174
177
|
const firstExec = pending.data.firstExecutableBlock;
|
|
175
178
|
if (firstExec) {
|
|
176
179
|
const { blockNumber: currentL1Block, timestamp } = await (0, timing_2.getCurrentBlockInfo)(state.providers.l1);
|
|
@@ -185,7 +188,7 @@ async function pipelineTrackL2ToL1Message(state) {
|
|
|
185
188
|
delaySeconds: remainingSeconds,
|
|
186
189
|
},
|
|
187
190
|
};
|
|
188
|
-
return { state: await (0,
|
|
191
|
+
return { state: await (0, state_1.addStage)(state, updated), executed: false, needsL1: true };
|
|
189
192
|
}
|
|
190
193
|
}
|
|
191
194
|
}
|
|
@@ -203,8 +206,8 @@ async function pipelineTrackL1Timelock(state) {
|
|
|
203
206
|
log("L1_TIMELOCK: tracking");
|
|
204
207
|
return track(state, "L1_TIMELOCK", "executed", async () => {
|
|
205
208
|
const r = await (0, timelock_1.trackL1Timelock)(state.providers.l1, {
|
|
206
|
-
outboxExecutionTx: (0,
|
|
207
|
-
fromBlock: (0,
|
|
209
|
+
outboxExecutionTx: (0, state_1.getOutboxExecutionTx)(state),
|
|
210
|
+
fromBlock: (0, state_1.getFirstExecutableBlock)(state),
|
|
208
211
|
allStages: state.stages,
|
|
209
212
|
});
|
|
210
213
|
return { stage: r.stage, result: r.executionTxHash !== null };
|
|
@@ -213,7 +216,7 @@ async function pipelineTrackL1Timelock(state) {
|
|
|
213
216
|
}
|
|
214
217
|
// Retryable Stage (7)
|
|
215
218
|
async function pipelineTrackRetryables(state) {
|
|
216
|
-
const l1ExecutionTxHash = (0,
|
|
219
|
+
const l1ExecutionTxHash = (0, state_1.getL1ExecutionTxHash)(state);
|
|
217
220
|
if (!l1ExecutionTxHash)
|
|
218
221
|
return { state, redeemed: false };
|
|
219
222
|
return withCache(state, "RETRYABLE_EXECUTED", "redeemed", (c) => c.status === "COMPLETED", async () => {
|
|
@@ -231,7 +234,7 @@ async function pipelineTrackRetryables(state) {
|
|
|
231
234
|
async function addPlaceholders(state, types, reason) {
|
|
232
235
|
let s = state;
|
|
233
236
|
for (const type of types)
|
|
234
|
-
s = await (0,
|
|
237
|
+
s = await (0, state_1.addStage)(s, placeholder(type, "NOT_STARTED", reason));
|
|
235
238
|
return s;
|
|
236
239
|
}
|
|
237
240
|
const RETRYABLE_STAGES = ["RETRYABLE_EXECUTED"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/tracker/pipeline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/tracker/pipeline.ts"],"names":[],"mappings":"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"}
|
package/dist/tracker/query.js
CHANGED
|
@@ -11,7 +11,7 @@ exports.getCheckpoint = getCheckpoint;
|
|
|
11
11
|
exports.getAllCheckpoints = getAllCheckpoints;
|
|
12
12
|
exports.queryIncompleteCheckpoints = queryIncompleteCheckpoints;
|
|
13
13
|
exports.getStats = getStats;
|
|
14
|
-
const
|
|
14
|
+
const utils_1 = require("../stages/utils");
|
|
15
15
|
const constants_1 = require("../constants");
|
|
16
16
|
/**
|
|
17
17
|
* List all checkpoint keys in the cache.
|
|
@@ -68,7 +68,7 @@ async function queryIncompleteCheckpoints(cache, options = {}) {
|
|
|
68
68
|
const errorCount = checkpoint.metadata?.errorCount ?? 0;
|
|
69
69
|
const completedStages = checkpoint.cachedData.completedStages ?? [];
|
|
70
70
|
// Skip if already complete
|
|
71
|
-
if (completedStages.length > 0 && (0,
|
|
71
|
+
if (completedStages.length > 0 && (0, utils_1.areAllStagesComplete)(completedStages)) {
|
|
72
72
|
continue;
|
|
73
73
|
}
|
|
74
74
|
// Skip if voting failed (terminal state)
|
|
@@ -105,7 +105,7 @@ async function getStats(cache, maxErrorCount = 5) {
|
|
|
105
105
|
let electionTotal = 0, electionComplete = 0;
|
|
106
106
|
for (const [, checkpoint] of checkpoints) {
|
|
107
107
|
const completedStages = checkpoint.cachedData?.completedStages ?? [];
|
|
108
|
-
const isComplete = completedStages.length > 0 && (0,
|
|
108
|
+
const isComplete = completedStages.length > 0 && (0, utils_1.areAllStagesComplete)(completedStages);
|
|
109
109
|
const errorCount = checkpoint.metadata?.errorCount ?? 0;
|
|
110
110
|
const isErrored = errorCount >= maxErrorCount;
|
|
111
111
|
const inputType = checkpoint.input.type;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/tracker/query.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAUH,gDAMC;AAKD,sCAMC;AAKD,8CAYC;AASD,gEAgDC;AAWD,4BAgEC;AA7KD,
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/tracker/query.ts"],"names":[],"mappings":"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"}
|
package/dist/tracker/state.d.ts
CHANGED
|
@@ -1,104 +1,111 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* TrackingState - Functional state management for pipeline tracking
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* This module provides a purely functional approach to tracking context:
|
|
5
|
+
* - TrackingState interface defines the immutable state shape
|
|
6
|
+
* - Pure functions transform state and derive values
|
|
7
|
+
* - No classes, no mutation, no hidden state
|
|
6
8
|
*
|
|
7
|
-
*
|
|
8
|
-
* -
|
|
9
|
-
* -
|
|
10
|
-
* -
|
|
9
|
+
* Benefits:
|
|
10
|
+
* - Easy testing: just create plain objects
|
|
11
|
+
* - Transparent: can log/inspect full state anytime
|
|
12
|
+
* - Predictable: same input → same output
|
|
13
|
+
* - Composable: mix and match functions freely
|
|
14
|
+
* - Debuggable: save/restore state snapshots
|
|
11
15
|
*/
|
|
12
|
-
import {
|
|
16
|
+
import { ethers } from "ethers";
|
|
17
|
+
import { TrackedStage, TrackingCheckpoint, TrackingInput, StageType, CallScheduledData, ProposalData, ProposalType, ProposalState, OnProgressCallback, ChunkingConfig } from "../types";
|
|
13
18
|
/**
|
|
14
|
-
*
|
|
15
|
-
* Synchronously loads on construction, persists on every write.
|
|
16
|
-
* Uses a write queue to prevent race conditions from concurrent writes.
|
|
19
|
+
* Providers for multi-chain operations
|
|
17
20
|
*/
|
|
18
|
-
export
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
constructor(path: string);
|
|
23
|
-
private load;
|
|
24
|
-
private persistSync;
|
|
25
|
-
private persist;
|
|
26
|
-
get<T>(key: string): Promise<T | null>;
|
|
27
|
-
set<T>(key: string, value: T): Promise<void>;
|
|
28
|
-
delete(key: string): Promise<void>;
|
|
29
|
-
clear(): Promise<void>;
|
|
30
|
-
has(key: string): Promise<boolean>;
|
|
31
|
-
keys(): IterableIterator<string>;
|
|
21
|
+
export interface Providers {
|
|
22
|
+
readonly l2: ethers.providers.Provider;
|
|
23
|
+
readonly l1: ethers.providers.Provider;
|
|
24
|
+
readonly nova: ethers.providers.Provider;
|
|
32
25
|
}
|
|
33
26
|
/**
|
|
34
|
-
*
|
|
35
|
-
* Persists to localStorage with a configurable key prefix.
|
|
36
|
-
*
|
|
37
|
-
* Limitations:
|
|
38
|
-
* - 5MB storage limit (varies by browser)
|
|
39
|
-
* - Synchronous API (blocks main thread, usually negligible)
|
|
40
|
-
* - String-only storage (JSON serialization handled internally)
|
|
41
|
-
*
|
|
42
|
-
* @example
|
|
43
|
-
* ```typescript
|
|
44
|
-
* import { createTracker, LocalStorageCache } from "@gzeoneth/gov-tracker";
|
|
45
|
-
*
|
|
46
|
-
* const tracker = createTracker({
|
|
47
|
-
* l2Provider,
|
|
48
|
-
* l1Provider,
|
|
49
|
-
* cache: new LocalStorageCache("arb-gov:"),
|
|
50
|
-
* });
|
|
51
|
-
* ```
|
|
27
|
+
* Options for creating a TrackingState
|
|
52
28
|
*/
|
|
53
|
-
export
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
keys(prefix?: string): Promise<string[]>;
|
|
29
|
+
export interface CreateTrackingStateOptions {
|
|
30
|
+
providers: Providers;
|
|
31
|
+
input: TrackingInput;
|
|
32
|
+
onProgress?: OnProgressCallback;
|
|
33
|
+
chunkingConfig?: ChunkingConfig;
|
|
34
|
+
checkpoint?: TrackingCheckpoint;
|
|
35
|
+
cacheKey?: string;
|
|
36
|
+
/** Bootstrap data for timelock-only tracking */
|
|
37
|
+
callScheduledData?: CallScheduledData[];
|
|
63
38
|
}
|
|
64
39
|
/**
|
|
65
|
-
*
|
|
66
|
-
* Useful for testing, short-lived sessions, or as a fallback.
|
|
40
|
+
* TrackingState - Immutable state for pipeline tracking
|
|
67
41
|
*
|
|
68
|
-
*
|
|
42
|
+
* All values are derived from stages. This interface represents
|
|
43
|
+
* a snapshot of the pipeline at a point in time.
|
|
69
44
|
*
|
|
70
45
|
* @example
|
|
71
46
|
* ```typescript
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
* const
|
|
75
|
-
* l2Provider,
|
|
76
|
-
* l1Provider,
|
|
77
|
-
* cache: new MemoryCache(),
|
|
78
|
-
* });
|
|
47
|
+
* let ctx = createTrackingState({ providers, input });
|
|
48
|
+
* ctx = await addStage(ctx, proposalCreatedStage);
|
|
49
|
+
* const opId = getOperationId(ctx);
|
|
79
50
|
* ```
|
|
80
51
|
*/
|
|
81
|
-
export
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
52
|
+
export interface TrackingState {
|
|
53
|
+
readonly providers: Providers;
|
|
54
|
+
readonly chunkingConfig: ChunkingConfig;
|
|
55
|
+
readonly onProgress?: OnProgressCallback;
|
|
56
|
+
readonly cacheKey?: string;
|
|
57
|
+
readonly input: TrackingInput;
|
|
58
|
+
readonly callScheduledData?: CallScheduledData[];
|
|
59
|
+
readonly stages: TrackedStage[];
|
|
60
|
+
readonly stageIndex: number;
|
|
89
61
|
}
|
|
90
62
|
/**
|
|
91
|
-
*
|
|
63
|
+
* Create a new TrackingState.
|
|
92
64
|
*/
|
|
93
|
-
export declare function
|
|
65
|
+
export declare function createTrackingState(options: CreateTrackingStateOptions): TrackingState;
|
|
94
66
|
/**
|
|
95
|
-
*
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
67
|
+
* Add or update a stage. Returns new context.
|
|
68
|
+
*/
|
|
69
|
+
export declare function addStage(ctx: TrackingState, stage: TrackedStage): Promise<TrackingState>;
|
|
70
|
+
/** Check if a stage is completed (COMPLETED or SKIPPED). */
|
|
71
|
+
export declare function isStageCompleted(ctx: TrackingState, type: StageType): boolean;
|
|
72
|
+
/** Get a completed stage for zero-RPC resume. */
|
|
73
|
+
export declare function getCompletedStage(ctx: TrackingState, type: StageType): TrackedStage | undefined;
|
|
74
|
+
/** Get a cached stage (any status). */
|
|
75
|
+
export declare function getCachedStage(ctx: TrackingState, type: StageType): TrackedStage | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* Check if all stages are complete.
|
|
99
78
|
*/
|
|
100
|
-
export declare function
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
79
|
+
export declare function isComplete(ctx: TrackingState): boolean;
|
|
80
|
+
export declare const getGovernorAddress: (ctx: TrackingState) => string | undefined;
|
|
81
|
+
export declare const getProposalId: (ctx: TrackingState) => string | undefined;
|
|
82
|
+
export declare function getTimelockAddress(ctx: TrackingState): string | undefined;
|
|
83
|
+
export declare function getOperationId(ctx: TrackingState): string | undefined;
|
|
84
|
+
export declare function getCallScheduledData(ctx: TrackingState): CallScheduledData[] | undefined;
|
|
85
|
+
export declare const getFirstCallScheduledData: (ctx: TrackingState) => CallScheduledData | undefined;
|
|
86
|
+
export declare const getQueueBlockNumber: (ctx: TrackingState) => number | undefined;
|
|
87
|
+
/** Proposal data from PROPOSAL_CREATED stage */
|
|
88
|
+
export declare function getProposalData(ctx: TrackingState): ProposalData | undefined;
|
|
89
|
+
export declare function getProposalType(ctx: TrackingState): ProposalType | undefined;
|
|
90
|
+
export declare const getIsElection: (ctx: TrackingState) => boolean;
|
|
91
|
+
export declare const getProposalState: (ctx: TrackingState) => ProposalState | undefined;
|
|
92
|
+
export declare function getVotingEndBlock(ctx: TrackingState): number | undefined;
|
|
93
|
+
export declare function getL2ExecutionTxHash(ctx: TrackingState): string | undefined;
|
|
94
|
+
export declare const getFirstExecutableBlock: (ctx: TrackingState) => number | undefined;
|
|
95
|
+
export declare function getOutboxExecutionTx(ctx: TrackingState): {
|
|
96
|
+
hash: string;
|
|
97
|
+
blockNumber: number;
|
|
98
|
+
} | undefined;
|
|
99
|
+
export declare function getL1ExecutionTxHash(ctx: TrackingState): string | undefined;
|
|
100
|
+
export declare function createCheckpoint(ctx: TrackingState): TrackingCheckpoint;
|
|
101
|
+
export declare function toResult(ctx: TrackingState): {
|
|
102
|
+
input: TrackingInput;
|
|
103
|
+
stages: TrackedStage[];
|
|
104
|
+
checkpoint: TrackingCheckpoint;
|
|
105
|
+
isComplete: boolean;
|
|
106
|
+
proposalType: ProposalType | undefined;
|
|
107
|
+
proposalData: ProposalData | undefined;
|
|
108
|
+
currentState: ProposalState | undefined;
|
|
109
|
+
isElection: boolean;
|
|
110
|
+
};
|
|
104
111
|
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/tracker/state.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/tracker/state.ts"],"names":[],"mappings":"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"}
|