@gzeoneth/gov-tracker 0.2.1-beta.b2eeb41 → 0.2.1-beta.c266765
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 +41 -2
- package/dist/abis.d.ts.map +1 -1
- package/dist/abis.js +22 -1
- package/dist/abis.js.map +1 -1
- package/dist/cli/cli.js +206 -12
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/lib/cli.d.ts +9 -1
- package/dist/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +80 -4
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/data/bundled-cache.json +1155 -962
- package/dist/deduplication.d.ts +132 -0
- package/dist/deduplication.d.ts.map +1 -0
- package/dist/deduplication.js +270 -0
- package/dist/deduplication.js.map +1 -0
- package/dist/election.d.ts +141 -1
- package/dist/election.d.ts.map +1 -1
- package/dist/election.js +505 -88
- package/dist/election.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +27 -3
- package/dist/index.js.map +1 -1
- package/dist/stages/builder.d.ts +4 -0
- package/dist/stages/builder.d.ts.map +1 -1
- package/dist/stages/builder.js +7 -0
- package/dist/stages/builder.js.map +1 -1
- package/dist/stages/voting.d.ts.map +1 -1
- package/dist/stages/voting.js +5 -4
- package/dist/stages/voting.js.map +1 -1
- package/dist/tracker/discovery.d.ts +39 -8
- package/dist/tracker/discovery.d.ts.map +1 -1
- package/dist/tracker/discovery.js +141 -12
- package/dist/tracker/discovery.js.map +1 -1
- package/dist/tracker.d.ts +24 -4
- package/dist/tracker.d.ts.map +1 -1
- package/dist/tracker.js +57 -8
- package/dist/tracker.js.map +1 -1
- package/dist/types/core.d.ts +1 -1
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/election.d.ts +88 -0
- package/dist/types/election.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/stages.d.ts +6 -0
- package/dist/types/stages.d.ts.map +1 -1
- package/dist/types/stages.js.map +1 -1
- package/dist/types/tracking.d.ts +27 -1
- package/dist/types/tracking.d.ts.map +1 -1
- package/dist/utils/timing.d.ts +13 -0
- package/dist/utils/timing.d.ts.map +1 -1
- package/dist/utils/timing.js +35 -0
- package/dist/utils/timing.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.WATERMARKS_KEY = void 0;
|
|
10
10
|
exports.loadWatermarks = loadWatermarks;
|
|
11
|
+
exports.verifyWatermark = verifyWatermark;
|
|
11
12
|
exports.saveWatermarks = saveWatermarks;
|
|
12
13
|
exports.discoverProposals = discoverProposals;
|
|
13
14
|
exports.discoverTimelockOps = discoverTimelockOps;
|
|
@@ -17,6 +18,7 @@ const constants_1 = require("../constants");
|
|
|
17
18
|
const governor_discovery_1 = require("../discovery/governor-discovery");
|
|
18
19
|
const timelock_discovery_1 = require("../discovery/timelock-discovery");
|
|
19
20
|
const logger_1 = require("../utils/logger");
|
|
21
|
+
const rpc_utils_1 = require("../utils/rpc-utils");
|
|
20
22
|
const { tracker: logTracker, discovery: logDiscovery } = logger_1.loggers;
|
|
21
23
|
/**
|
|
22
24
|
* Cache key for discovery watermarks checkpoint.
|
|
@@ -26,20 +28,83 @@ exports.WATERMARKS_KEY = "discovery:watermarks";
|
|
|
26
28
|
/**
|
|
27
29
|
* Load discovery watermarks from cache.
|
|
28
30
|
* Watermarks are stored as a TrackingCheckpoint for unified cache format.
|
|
29
|
-
* Returns empty
|
|
31
|
+
* Returns empty objects if no watermarks are cached.
|
|
30
32
|
*/
|
|
31
33
|
async function loadWatermarks(cache) {
|
|
32
34
|
if (!cache)
|
|
33
|
-
return {};
|
|
35
|
+
return { watermarks: {}, hashes: {} };
|
|
34
36
|
const checkpoint = await cache.get(exports.WATERMARKS_KEY);
|
|
35
|
-
return
|
|
37
|
+
return {
|
|
38
|
+
watermarks: checkpoint?.cachedData.discoveryWatermarks ?? {},
|
|
39
|
+
hashes: checkpoint?.cachedData.watermarkHashes ?? {},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Number of blocks to roll back when a reorg is detected.
|
|
44
|
+
* 1000 blocks on L2 Arbitrum ≈ ~4 minutes, provides safety margin.
|
|
45
|
+
*/
|
|
46
|
+
const REORG_ROLLBACK_BLOCKS = 1000;
|
|
47
|
+
/**
|
|
48
|
+
* Verify a watermark's block hash against the chain.
|
|
49
|
+
* If the hash doesn't match (reorg detected), returns a rolled-back block number.
|
|
50
|
+
*
|
|
51
|
+
* @param key - Watermark key for logging
|
|
52
|
+
* @param blockNumber - The watermark block number to verify
|
|
53
|
+
* @param expectedHash - The stored block hash (undefined if not stored)
|
|
54
|
+
* @param provider - Provider to fetch current block hash
|
|
55
|
+
* @returns The verified block number (original if valid, rolled back if reorg detected)
|
|
56
|
+
*/
|
|
57
|
+
async function verifyWatermark(key, blockNumber, expectedHash, provider) {
|
|
58
|
+
const rollback = () => ({
|
|
59
|
+
blockNumber: Math.max(0, blockNumber - REORG_ROLLBACK_BLOCKS),
|
|
60
|
+
isValid: false,
|
|
61
|
+
});
|
|
62
|
+
// No stored hash - can't verify, but fetch current hash for future verification
|
|
63
|
+
if (!expectedHash) {
|
|
64
|
+
try {
|
|
65
|
+
const block = await (0, rpc_utils_1.queryWithRetry)(() => provider.getBlock(blockNumber));
|
|
66
|
+
if (block) {
|
|
67
|
+
logDiscovery("%s: no stored hash, establishing hash at block %d", key, blockNumber);
|
|
68
|
+
return { blockNumber, isValid: true, newHash: block.hash };
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
// Block might not exist yet or provider error - continue without hash
|
|
73
|
+
}
|
|
74
|
+
return { blockNumber, isValid: true };
|
|
75
|
+
}
|
|
76
|
+
// Verify stored hash against chain
|
|
77
|
+
try {
|
|
78
|
+
const block = await (0, rpc_utils_1.queryWithRetry)(() => provider.getBlock(blockNumber));
|
|
79
|
+
if (!block) {
|
|
80
|
+
const result = rollback();
|
|
81
|
+
logDiscovery("%s: block %d not found, rolling back to %d", key, blockNumber, result.blockNumber);
|
|
82
|
+
return result;
|
|
83
|
+
}
|
|
84
|
+
if (block.hash.toLowerCase() === expectedHash.toLowerCase()) {
|
|
85
|
+
return { blockNumber, isValid: true, newHash: block.hash };
|
|
86
|
+
}
|
|
87
|
+
// Hash mismatch - reorg detected
|
|
88
|
+
const result = rollback();
|
|
89
|
+
logDiscovery("%s: REORG DETECTED at block %d (expected %s, got %s), rolling back to %d", key, blockNumber, expectedHash.slice(0, 10), block.hash.slice(0, 10), result.blockNumber);
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
// Provider error - be conservative and continue with stored watermark
|
|
94
|
+
logDiscovery("%s: failed to verify block %d, continuing with stored value", key, blockNumber);
|
|
95
|
+
return { blockNumber, isValid: true };
|
|
96
|
+
}
|
|
36
97
|
}
|
|
37
98
|
/**
|
|
38
99
|
* Save discovery watermarks to cache.
|
|
39
100
|
* Watermarks are stored as TrackingCheckpoint with proper metadata,
|
|
40
101
|
* following the same pattern as proposal/timelock checkpoints.
|
|
102
|
+
*
|
|
103
|
+
* @param watermarks - Block numbers per discovery key
|
|
104
|
+
* @param hashes - Block hashes per discovery key (for reorg detection)
|
|
105
|
+
* @param cache - Cache adapter
|
|
41
106
|
*/
|
|
42
|
-
async function saveWatermarks(watermarks, cache) {
|
|
107
|
+
async function saveWatermarks(watermarks, hashes, cache) {
|
|
43
108
|
if (!cache)
|
|
44
109
|
return;
|
|
45
110
|
// Calculate the max L2 block from watermarks for lastProcessedBlock
|
|
@@ -61,6 +126,7 @@ async function saveWatermarks(watermarks, cache) {
|
|
|
61
126
|
lastProcessedBlock: { l1: 0, l2: maxL2Block },
|
|
62
127
|
cachedData: {
|
|
63
128
|
discoveryWatermarks: watermarks,
|
|
129
|
+
watermarkHashes: hashes,
|
|
64
130
|
},
|
|
65
131
|
metadata: {
|
|
66
132
|
errorCount: 0,
|
|
@@ -143,25 +209,65 @@ async function createPendingCheckpoints(proposals, _timelockOps, cache) {
|
|
|
143
209
|
* Discover all proposals and timelock operations with auto-watermark management.
|
|
144
210
|
*
|
|
145
211
|
* This is the unified discovery API that handles everything internally:
|
|
212
|
+
* - Verifies watermark hashes to detect chain reorgs (rolls back if mismatch)
|
|
146
213
|
* - Loads watermarks from provided watermarks or starts from governance deployment
|
|
147
214
|
* - Discovers from all enabled targets in parallel (with scoped logging)
|
|
148
215
|
* - Creates pending checkpoints for discovered items
|
|
149
|
-
* - Returns updated watermarks for saving
|
|
216
|
+
* - Returns updated watermarks and hashes for saving
|
|
150
217
|
*
|
|
151
218
|
* @param targets - Which governors/timelocks to scan
|
|
152
219
|
* @param toBlock - End block for discovery
|
|
153
220
|
* @param l2Provider - L2 provider
|
|
154
221
|
* @param cache - Cache adapter for pending checkpoint creation
|
|
155
|
-
* @param fromWatermarks - Starting watermarks
|
|
222
|
+
* @param fromWatermarks - Starting watermarks (block numbers)
|
|
223
|
+
* @param fromHashes - Starting hashes for reorg detection
|
|
156
224
|
* @param options.chunkSize - Optional chunk size for log searches
|
|
157
|
-
* @
|
|
225
|
+
* @param options.skipReorgCheck - Skip reorg verification (for testing)
|
|
226
|
+
* @returns Discovered proposals, timelock ops, updated watermarks and hashes
|
|
158
227
|
*/
|
|
159
|
-
async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks, options = {}) {
|
|
160
|
-
const watermarks = fromWatermarks;
|
|
228
|
+
async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks, fromHashes = {}, options = {}) {
|
|
161
229
|
const defaultStartBlock = constants_1.GOVERNANCE_START_BLOCKS.L2;
|
|
230
|
+
// Determine which keys we'll be discovering
|
|
231
|
+
const allKeys = [
|
|
232
|
+
"constitutionalGovernor",
|
|
233
|
+
"nonConstitutionalGovernor",
|
|
234
|
+
"electionNomineeGovernor",
|
|
235
|
+
"electionMemberGovernor",
|
|
236
|
+
"l2ConstitutionalTimelock",
|
|
237
|
+
"l2NonConstitutionalTimelock",
|
|
238
|
+
];
|
|
239
|
+
const activeKeys = allKeys.filter((key) => targets[key]);
|
|
240
|
+
// Verify watermarks and get effective start blocks (with reorg detection)
|
|
241
|
+
const verifiedWatermarks = {};
|
|
242
|
+
const updatedHashes = { ...fromHashes };
|
|
243
|
+
if (!options.skipReorgCheck) {
|
|
244
|
+
// Verify all active watermarks in parallel
|
|
245
|
+
const verificationPromises = activeKeys.map(async (key) => {
|
|
246
|
+
const storedBlock = fromWatermarks[key];
|
|
247
|
+
if (storedBlock === undefined) {
|
|
248
|
+
return { key, blockNumber: defaultStartBlock };
|
|
249
|
+
}
|
|
250
|
+
const result = await verifyWatermark(key, storedBlock, fromHashes[key], l2Provider);
|
|
251
|
+
// Update hash if we got a new one
|
|
252
|
+
if (result.newHash) {
|
|
253
|
+
updatedHashes[key] = result.newHash;
|
|
254
|
+
}
|
|
255
|
+
return { key, blockNumber: result.blockNumber };
|
|
256
|
+
});
|
|
257
|
+
const verificationResults = await Promise.all(verificationPromises);
|
|
258
|
+
for (const { key, blockNumber } of verificationResults) {
|
|
259
|
+
verifiedWatermarks[key] = blockNumber;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
// Skip verification - use provided watermarks directly
|
|
264
|
+
for (const key of activeKeys) {
|
|
265
|
+
verifiedWatermarks[key] = fromWatermarks[key] ?? defaultStartBlock;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
162
268
|
// Helper to create scoped discovery task
|
|
163
269
|
const scopedProposalTask = (key, scopeName, governorAddress) => {
|
|
164
|
-
const fromBlock =
|
|
270
|
+
const fromBlock = verifiedWatermarks[key] ?? defaultStartBlock;
|
|
165
271
|
return (0, logger_1.withScope)(scopeName, async () => {
|
|
166
272
|
const proposals = await discoverProposals(governorAddress, fromBlock, toBlock, l2Provider, {
|
|
167
273
|
chunkSize: options.chunkSize,
|
|
@@ -170,7 +276,7 @@ async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks,
|
|
|
170
276
|
});
|
|
171
277
|
};
|
|
172
278
|
const scopedTimelockTask = (key, scopeName, timelockAddress) => {
|
|
173
|
-
const fromBlock =
|
|
279
|
+
const fromBlock = verifiedWatermarks[key] ?? defaultStartBlock;
|
|
174
280
|
return (0, logger_1.withScope)(scopeName, async () => {
|
|
175
281
|
const ops = await discoverTimelockOps(timelockAddress, fromBlock, toBlock, l2Provider, {
|
|
176
282
|
chunkSize: options.chunkSize,
|
|
@@ -207,7 +313,7 @@ async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks,
|
|
|
207
313
|
// Collect results and update watermarks
|
|
208
314
|
const allProposals = [];
|
|
209
315
|
const allTimelockOps = [];
|
|
210
|
-
const newWatermarks = { ...
|
|
316
|
+
const newWatermarks = { ...verifiedWatermarks };
|
|
211
317
|
for (const { key, proposals } of proposalResults) {
|
|
212
318
|
allProposals.push(...proposals);
|
|
213
319
|
newWatermarks[key] = toBlock;
|
|
@@ -216,6 +322,28 @@ async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks,
|
|
|
216
322
|
allTimelockOps.push(...ops);
|
|
217
323
|
newWatermarks[key] = toBlock;
|
|
218
324
|
}
|
|
325
|
+
// Fetch toBlock hash for reorg detection on next run
|
|
326
|
+
// Only need to fetch once since all keys use the same toBlock
|
|
327
|
+
let toBlockHash;
|
|
328
|
+
if (activeKeys.length > 0) {
|
|
329
|
+
try {
|
|
330
|
+
const block = await (0, rpc_utils_1.queryWithRetry)(() => l2Provider.getBlock(toBlock));
|
|
331
|
+
if (block) {
|
|
332
|
+
toBlockHash = block.hash;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
catch {
|
|
336
|
+
// Failed to get block hash - continue without it
|
|
337
|
+
logDiscovery("failed to fetch toBlock hash for reorg detection");
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
// Update hashes for all active keys with toBlock hash
|
|
341
|
+
const newHashes = { ...updatedHashes };
|
|
342
|
+
if (toBlockHash) {
|
|
343
|
+
for (const key of activeKeys) {
|
|
344
|
+
newHashes[key] = toBlockHash;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
219
347
|
// Create pending checkpoints for discovered items
|
|
220
348
|
await createPendingCheckpoints(allProposals, allTimelockOps, cache);
|
|
221
349
|
logDiscovery("complete: %d proposals, %d timelockOps", allProposals.length, allTimelockOps.length);
|
|
@@ -223,6 +351,7 @@ async function discoverAll(targets, toBlock, l2Provider, cache, fromWatermarks,
|
|
|
223
351
|
proposals: allProposals,
|
|
224
352
|
timelockOps: allTimelockOps,
|
|
225
353
|
watermarks: newWatermarks,
|
|
354
|
+
hashes: newHashes,
|
|
226
355
|
};
|
|
227
356
|
}
|
|
228
357
|
//# sourceMappingURL=discovery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/tracker/discovery.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/tracker/discovery.ts"],"names":[],"mappings":"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"}
|
package/dist/tracker.d.ts
CHANGED
|
@@ -12,7 +12,9 @@
|
|
|
12
12
|
* - tracker/execute.ts: Transaction preparation
|
|
13
13
|
*/
|
|
14
14
|
import { ethers } from "ethers";
|
|
15
|
-
import { TrackerOptions, TrackingResult, TrackedStage, TrackingCheckpoint, TrackerStats, ChunkingConfig, DiscoveryWatermarks, DiscoveryTargets, PrepareResult, PrepareOptions, ElectionCheckResult, TimelockLink } from "./types";
|
|
15
|
+
import { TrackerOptions, TrackingResult, TrackedStage, TrackingCheckpoint, TrackerStats, ChunkingConfig, DiscoveryWatermarks, DiscoveryTargets, PrepareResult, PrepareOptions, ElectionCheckResult, ElectionProposalStatus, TimelockLink } from "./types";
|
|
16
|
+
import { LoadedWatermarks } from "./tracker/discovery";
|
|
17
|
+
import { WatermarkHashes } from "./types";
|
|
16
18
|
import { DiscoveredProposal, DiscoveredTimelockOp } from "./tracker/discovery";
|
|
17
19
|
/**
|
|
18
20
|
* Extract TimelockLink from stages if PROPOSAL_QUEUED is completed
|
|
@@ -72,13 +74,30 @@ export declare class ProposalStageTracker {
|
|
|
72
74
|
* Watermarks are stored as a TrackingCheckpoint for unified cache format.
|
|
73
75
|
* Returns empty object if no watermarks are cached.
|
|
74
76
|
*/
|
|
75
|
-
loadWatermarks(): Promise<
|
|
77
|
+
loadWatermarks(): Promise<LoadedWatermarks>;
|
|
76
78
|
/**
|
|
77
79
|
* Save discovery watermarks to cache.
|
|
78
80
|
* Watermarks are stored as TrackingCheckpoint with proper metadata,
|
|
79
81
|
* following the same pattern as proposal/timelock checkpoints.
|
|
82
|
+
*
|
|
83
|
+
* @param watermarks - Block numbers per discovery key
|
|
84
|
+
* @param hashes - Block hashes per discovery key (for reorg detection)
|
|
85
|
+
*/
|
|
86
|
+
saveWatermarks(watermarks: DiscoveryWatermarks, hashes?: WatermarkHashes): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Save an election checkpoint to cache.
|
|
89
|
+
* Elections are stored with key format: `election:{electionIndex}`
|
|
90
|
+
*
|
|
91
|
+
* @param electionStatus - Election status from trackElectionProposal
|
|
92
|
+
*/
|
|
93
|
+
saveElectionCheckpoint(electionStatus: ElectionProposalStatus): Promise<void>;
|
|
94
|
+
/**
|
|
95
|
+
* Get an election checkpoint from cache.
|
|
96
|
+
*
|
|
97
|
+
* @param electionIndex - Election index
|
|
98
|
+
* @returns Election status or null if not cached
|
|
80
99
|
*/
|
|
81
|
-
|
|
100
|
+
getElectionCheckpoint(electionIndex: number): Promise<ElectionProposalStatus | null>;
|
|
82
101
|
/**
|
|
83
102
|
* Discover proposals from a governor in a block range.
|
|
84
103
|
*
|
|
@@ -101,9 +120,10 @@ export declare class ProposalStageTracker {
|
|
|
101
120
|
* Discover all proposals and timelock operations with auto-watermark management.
|
|
102
121
|
*
|
|
103
122
|
* This is the unified discovery API that handles everything internally:
|
|
123
|
+
* - Verifies watermark hashes to detect chain reorgs (rolls back if mismatch)
|
|
104
124
|
* - Loads watermarks from cache (or uses provided fromWatermarks)
|
|
105
125
|
* - Discovers from all enabled targets in parallel
|
|
106
|
-
* - Auto-saves updated watermarks to cache
|
|
126
|
+
* - Auto-saves updated watermarks and hashes to cache
|
|
107
127
|
*
|
|
108
128
|
* @param targets - Which governors/timelocks to scan
|
|
109
129
|
* @param toBlock - End block for discovery
|
package/dist/tracker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EACL,cAAc,EACd,cAAc,EAGd,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,cAAc,EAEd,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,YAAY,EACb,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
|
package/dist/tracker.js
CHANGED
|
@@ -131,9 +131,47 @@ class ProposalStageTracker {
|
|
|
131
131
|
* Save discovery watermarks to cache.
|
|
132
132
|
* Watermarks are stored as TrackingCheckpoint with proper metadata,
|
|
133
133
|
* following the same pattern as proposal/timelock checkpoints.
|
|
134
|
+
*
|
|
135
|
+
* @param watermarks - Block numbers per discovery key
|
|
136
|
+
* @param hashes - Block hashes per discovery key (for reorg detection)
|
|
137
|
+
*/
|
|
138
|
+
async saveWatermarks(watermarks, hashes = {}) {
|
|
139
|
+
return (0, discovery_1.saveWatermarks)(watermarks, hashes, this.cache);
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Save an election checkpoint to cache.
|
|
143
|
+
* Elections are stored with key format: `election:{electionIndex}`
|
|
144
|
+
*
|
|
145
|
+
* @param electionStatus - Election status from trackElectionProposal
|
|
146
|
+
*/
|
|
147
|
+
async saveElectionCheckpoint(electionStatus) {
|
|
148
|
+
if (!this.cache)
|
|
149
|
+
return;
|
|
150
|
+
const key = `election:${electionStatus.electionIndex}`;
|
|
151
|
+
const checkpoint = {
|
|
152
|
+
version: 1,
|
|
153
|
+
createdAt: Date.now(),
|
|
154
|
+
input: { type: "election", electionIndex: electionStatus.electionIndex },
|
|
155
|
+
lastProcessedStage: null,
|
|
156
|
+
lastProcessedBlock: { l1: 0, l2: 0 },
|
|
157
|
+
cachedData: { electionStatus },
|
|
158
|
+
metadata: { errorCount: 0, lastTrackedAt: Date.now() },
|
|
159
|
+
};
|
|
160
|
+
await this.cache.set(key, checkpoint);
|
|
161
|
+
logTracker("saved election checkpoint: %s (phase: %s)", key, electionStatus.phase);
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Get an election checkpoint from cache.
|
|
165
|
+
*
|
|
166
|
+
* @param electionIndex - Election index
|
|
167
|
+
* @returns Election status or null if not cached
|
|
134
168
|
*/
|
|
135
|
-
async
|
|
136
|
-
|
|
169
|
+
async getElectionCheckpoint(electionIndex) {
|
|
170
|
+
if (!this.cache)
|
|
171
|
+
return null;
|
|
172
|
+
const key = `election:${electionIndex}`;
|
|
173
|
+
const checkpoint = await this.cache.get(key);
|
|
174
|
+
return checkpoint?.cachedData?.electionStatus ?? null;
|
|
137
175
|
}
|
|
138
176
|
// Discovery API
|
|
139
177
|
/**
|
|
@@ -162,9 +200,10 @@ class ProposalStageTracker {
|
|
|
162
200
|
* Discover all proposals and timelock operations with auto-watermark management.
|
|
163
201
|
*
|
|
164
202
|
* This is the unified discovery API that handles everything internally:
|
|
203
|
+
* - Verifies watermark hashes to detect chain reorgs (rolls back if mismatch)
|
|
165
204
|
* - Loads watermarks from cache (or uses provided fromWatermarks)
|
|
166
205
|
* - Discovers from all enabled targets in parallel
|
|
167
|
-
* - Auto-saves updated watermarks to cache
|
|
206
|
+
* - Auto-saves updated watermarks and hashes to cache
|
|
168
207
|
*
|
|
169
208
|
* @param targets - Which governors/timelocks to scan
|
|
170
209
|
* @param toBlock - End block for discovery
|
|
@@ -172,11 +211,13 @@ class ProposalStageTracker {
|
|
|
172
211
|
* @returns Discovered proposals, timelock ops, and updated watermarks
|
|
173
212
|
*/
|
|
174
213
|
async discoverAll(targets, toBlock, fromWatermarks) {
|
|
175
|
-
// Load watermarks from cache (or use provided override)
|
|
176
|
-
const
|
|
177
|
-
const
|
|
178
|
-
//
|
|
179
|
-
await
|
|
214
|
+
// Load watermarks and hashes from cache (or use provided override)
|
|
215
|
+
const loaded = await this.loadWatermarks();
|
|
216
|
+
const watermarks = fromWatermarks ?? loaded.watermarks;
|
|
217
|
+
const hashes = fromWatermarks ? {} : loaded.hashes; // Only use cached hashes if using cached watermarks
|
|
218
|
+
const result = await (0, discovery_2.discoverAll)(targets, toBlock, this.l2Provider, this.cache, watermarks, hashes, { chunkSize: this.chunkingConfig.l2ChunkSize });
|
|
219
|
+
// Auto-save updated watermarks and hashes
|
|
220
|
+
await this.saveWatermarks(result.watermarks, result.hashes);
|
|
180
221
|
return result;
|
|
181
222
|
}
|
|
182
223
|
// Checkpoint Query API
|
|
@@ -532,6 +573,7 @@ class ProposalStageTracker {
|
|
|
532
573
|
status,
|
|
533
574
|
canCreate: status.canCreateElection,
|
|
534
575
|
canTriggerMember: false,
|
|
576
|
+
canExecuteMember: false,
|
|
535
577
|
prepared: {},
|
|
536
578
|
};
|
|
537
579
|
if (status.canCreateElection) {
|
|
@@ -543,12 +585,19 @@ class ProposalStageTracker {
|
|
|
543
585
|
const electionStatus = await (0, election_1.trackElectionProposal)(currentElectionIndex, this.l2Provider, this.l1Provider);
|
|
544
586
|
result.currentElection = electionStatus;
|
|
545
587
|
result.canTriggerMember = electionStatus.canProceedToMemberPhase;
|
|
588
|
+
result.canExecuteMember = electionStatus.canExecuteMember;
|
|
546
589
|
if (electionStatus.canProceedToMemberPhase) {
|
|
547
590
|
const memberTx = await (0, election_1.prepareMemberElectionTrigger)(electionStatus, this.l2Provider);
|
|
548
591
|
if (memberTx) {
|
|
549
592
|
result.prepared.triggerMember = memberTx;
|
|
550
593
|
}
|
|
551
594
|
}
|
|
595
|
+
if (electionStatus.canExecuteMember) {
|
|
596
|
+
const executeTx = await (0, election_1.prepareMemberElectionExecution)(electionStatus, this.l2Provider);
|
|
597
|
+
if (executeTx) {
|
|
598
|
+
result.prepared.executeMember = executeTx;
|
|
599
|
+
}
|
|
600
|
+
}
|
|
552
601
|
}
|
|
553
602
|
return result;
|
|
554
603
|
}
|
package/dist/tracker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
|
package/dist/types/core.d.ts
CHANGED
|
@@ -48,7 +48,7 @@ export declare function isL2Chain(chain: Chain): chain is L2Chain;
|
|
|
48
48
|
*/
|
|
49
49
|
export declare function getChainDisplayName(chain: Chain): string;
|
|
50
50
|
export type StageType = "PROPOSAL_CREATED" | "VOTING_ACTIVE" | "PROPOSAL_QUEUED" | "L2_TIMELOCK" | "L2_TO_L1_MESSAGE" | "L1_TIMELOCK" | "RETRYABLE_EXECUTED";
|
|
51
|
-
export type StageStatus = "NOT_STARTED" | "PENDING" | "READY" | "COMPLETED" | "FAILED" | "SKIPPED";
|
|
51
|
+
export type StageStatus = "NOT_STARTED" | "PENDING" | "READY" | "COMPLETED" | "FAILED" | "SKIPPED" | "CANCELED";
|
|
52
52
|
export interface StageTransaction {
|
|
53
53
|
hash: string;
|
|
54
54
|
blockNumber: number;
|
package/dist/types/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;GAOG;AACH,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAEnD;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;AAE7D;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,GAAG,MAAM,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAI1C,CAAC;AAWX;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAEtD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAGhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,UAAU,CAE9D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,OAAO,CAExD;AAYD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAExD;AAID,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,eAAe,GACf,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,aAAa,GACb,oBAAoB,CAAC;AAEzB,MAAM,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;GAOG;AACH,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAEnD;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;AAE7D;;;GAGG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,GAAG,MAAM,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAI1C,CAAC;AAWX;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAEtD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAGhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,UAAU,CAE9D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,OAAO,CAExD;AAYD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAExD;AAID,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,eAAe,GACf,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,aAAa,GACb,oBAAoB,CAAC;AAEzB,MAAM,MAAM,WAAW,GACnB,aAAa,GACb,SAAS,GACT,OAAO,GACP,WAAW,GACX,QAAQ,GACR,SAAS,GACT,UAAU,CAAC;AAEf,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CACpC"}
|
package/dist/types/election.d.ts
CHANGED
|
@@ -1,8 +1,92 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Election-related types for Security Council elections
|
|
3
3
|
*/
|
|
4
|
+
import { BigNumber } from "ethers";
|
|
4
5
|
import { ProposalState } from "./governor";
|
|
5
6
|
import { PreparedTransaction } from "./tracking";
|
|
7
|
+
/**
|
|
8
|
+
* A contender who has registered for the nominee election
|
|
9
|
+
*/
|
|
10
|
+
export interface ElectionContender {
|
|
11
|
+
address: string;
|
|
12
|
+
/** Block number when they registered as contender */
|
|
13
|
+
registeredAtBlock: number;
|
|
14
|
+
/** Transaction hash of ContenderAdded event */
|
|
15
|
+
registrationTxHash: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A nominee who received enough votes to qualify
|
|
19
|
+
*/
|
|
20
|
+
export interface ElectionNominee {
|
|
21
|
+
address: string;
|
|
22
|
+
/** Total votes received from all voters */
|
|
23
|
+
votesReceived: BigNumber;
|
|
24
|
+
/** Whether excluded by the nominee vetter */
|
|
25
|
+
isExcluded: boolean;
|
|
26
|
+
/** Block when became nominee (crossed vote threshold) */
|
|
27
|
+
nominatedAtBlock?: number;
|
|
28
|
+
/** Block when excluded (if applicable) */
|
|
29
|
+
excludedAtBlock?: number;
|
|
30
|
+
/** Transaction hash of exclusion (if applicable) */
|
|
31
|
+
exclusionTxHash?: string;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Vote cast in the member election (with decreasing weight over time)
|
|
35
|
+
*/
|
|
36
|
+
export interface MemberElectionVote {
|
|
37
|
+
voter: string;
|
|
38
|
+
nominee: string;
|
|
39
|
+
votes: BigNumber;
|
|
40
|
+
weight: BigNumber;
|
|
41
|
+
blockNumber: number;
|
|
42
|
+
txHash: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Nominee's standing in the member election
|
|
46
|
+
*/
|
|
47
|
+
export interface MemberElectionNominee {
|
|
48
|
+
address: string;
|
|
49
|
+
/** Total weighted votes received */
|
|
50
|
+
weightReceived: BigNumber;
|
|
51
|
+
/** Whether in top 6 (will be elected) */
|
|
52
|
+
isWinner: boolean;
|
|
53
|
+
/** Rank by weight (1 = highest) */
|
|
54
|
+
rank: number;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Detailed nominee election information
|
|
58
|
+
*/
|
|
59
|
+
export interface NomineeElectionDetails {
|
|
60
|
+
proposalId: string;
|
|
61
|
+
electionIndex: number;
|
|
62
|
+
/** All registered contenders */
|
|
63
|
+
contenders: ElectionContender[];
|
|
64
|
+
/** All nominees (including excluded) */
|
|
65
|
+
nominees: ElectionNominee[];
|
|
66
|
+
/** Compliant (non-excluded) nominees */
|
|
67
|
+
compliantNominees: ElectionNominee[];
|
|
68
|
+
/** Excluded nominees with reasons */
|
|
69
|
+
excludedNominees: ElectionNominee[];
|
|
70
|
+
/** Vote threshold to become nominee */
|
|
71
|
+
quorumThreshold: BigNumber;
|
|
72
|
+
/** Target number of nominees needed */
|
|
73
|
+
targetNomineeCount: number;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Detailed member election information
|
|
77
|
+
*/
|
|
78
|
+
export interface MemberElectionDetails {
|
|
79
|
+
proposalId: string;
|
|
80
|
+
electionIndex: number;
|
|
81
|
+
/** All nominees with their weighted votes */
|
|
82
|
+
nominees: MemberElectionNominee[];
|
|
83
|
+
/** Top 6 winners who will be elected */
|
|
84
|
+
winners: string[];
|
|
85
|
+
/** Full weight voting deadline block */
|
|
86
|
+
fullWeightDeadline: number;
|
|
87
|
+
/** Proposal deadline block */
|
|
88
|
+
proposalDeadline: number;
|
|
89
|
+
}
|
|
6
90
|
/**
|
|
7
91
|
* Cohort identifier for Security Council elections
|
|
8
92
|
*/
|
|
@@ -27,6 +111,8 @@ export interface ElectionProposalStatus {
|
|
|
27
111
|
vettingDeadline: number | null;
|
|
28
112
|
isInVettingPeriod: boolean;
|
|
29
113
|
canProceedToMemberPhase: boolean;
|
|
114
|
+
/** True when member election succeeded and can be executed to install new council */
|
|
115
|
+
canExecuteMember: boolean;
|
|
30
116
|
}
|
|
31
117
|
/**
|
|
32
118
|
* Election status information
|
|
@@ -47,10 +133,12 @@ export interface ElectionCheckResult {
|
|
|
47
133
|
status: ElectionStatus;
|
|
48
134
|
canCreate: boolean;
|
|
49
135
|
canTriggerMember: boolean;
|
|
136
|
+
canExecuteMember: boolean;
|
|
50
137
|
currentElection?: ElectionProposalStatus;
|
|
51
138
|
prepared: {
|
|
52
139
|
createElection?: PreparedTransaction;
|
|
53
140
|
triggerMember?: PreparedTransaction;
|
|
141
|
+
executeMember?: PreparedTransaction;
|
|
54
142
|
};
|
|
55
143
|
}
|
|
56
144
|
//# sourceMappingURL=election.d.ts.map
|