@gzeoneth/gov-tracker 0.3.0-beta.3e02aff → 0.3.0-beta.656d3ba
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 +0 -1
- package/dist/calldata/decoder.d.ts.map +1 -1
- package/dist/calldata/decoder.js +10 -56
- 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/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +30 -42
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/cli/tui/utils/index.d.ts +1 -1
- package/dist/cli/tui/utils/index.d.ts.map +1 -1
- package/dist/cli/tui/utils/index.js +1 -2
- package/dist/cli/tui/utils/index.js.map +1 -1
- package/dist/cli/tui/utils/stage-formatter.d.ts +1 -1
- package/dist/cli/tui/utils/stage-formatter.d.ts.map +1 -1
- package/dist/cli/tui/utils/stage-formatter.js +1 -2
- package/dist/cli/tui/utils/stage-formatter.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/data/bundled-cache.json +21513 -22619
- package/dist/discovery/governor-discovery.d.ts.map +1 -1
- package/dist/discovery/governor-discovery.js +43 -48
- package/dist/discovery/governor-discovery.js.map +1 -1
- package/dist/discovery/security-council.d.ts.map +1 -1
- package/dist/discovery/security-council.js +15 -20
- 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 +34 -54
- package/dist/discovery/timelock-discovery.js.map +1 -1
- package/dist/election/details.d.ts.map +1 -1
- package/dist/election/details.js +28 -30
- 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 +45 -1
- package/dist/election/params.js.map +1 -1
- package/dist/election/participants.d.ts.map +1 -1
- package/dist/election/participants.js +21 -24
- 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 +45 -5
- package/dist/election/proposal-ids.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -6
- 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/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 +2 -8
- 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 +25 -48
- package/dist/stages/retryables.js.map +1 -1
- package/dist/stages/timelock.d.ts +1 -0
- package/dist/stages/timelock.d.ts.map +1 -1
- package/dist/stages/timelock.js +44 -58
- package/dist/stages/timelock.js.map +1 -1
- package/dist/stages/utils.d.ts +39 -5
- package/dist/stages/utils.d.ts.map +1 -1
- package/dist/stages/utils.js +102 -40
- package/dist/stages/utils.js.map +1 -1
- package/dist/tracker/discovery.d.ts.map +1 -1
- package/dist/tracker/discovery.js +4 -9
- 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/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 +64 -0
- package/dist/tracker/state.d.ts.map +1 -1
- package/dist/tracker/state.js +191 -12
- package/dist/tracker/state.js.map +1 -1
- package/dist/tracker.d.ts +21 -1
- package/dist/tracker.d.ts.map +1 -1
- package/dist/tracker.js +209 -167
- 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/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 +4 -8
- package/dist/utils/log-filters.js.map +1 -1
- package/dist/utils/timing.d.ts.map +1 -1
- package/dist/utils/timing.js +5 -7
- package/dist/utils/timing.js.map +1 -1
- package/package.json +7 -6
- 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
|
@@ -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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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generic Stage Runner
|
|
3
|
+
*
|
|
4
|
+
* Provides a declarative pipeline runner that:
|
|
5
|
+
* - Handles cache checks automatically
|
|
6
|
+
* - Runs stages in sequence
|
|
7
|
+
* - Stops on incomplete stages
|
|
8
|
+
* - Supports pipeline composition (governor → timelock, election → timelock)
|
|
9
|
+
*/
|
|
10
|
+
import { StageType, TrackedStage } from "../types";
|
|
11
|
+
import { TrackingState, getCachedStage } from "./state";
|
|
12
|
+
/**
|
|
13
|
+
* Result from a stage tracker.
|
|
14
|
+
*/
|
|
15
|
+
export interface StageResult {
|
|
16
|
+
/** Updated state with new stage */
|
|
17
|
+
state: TrackingState;
|
|
18
|
+
/** Whether to continue to next stage */
|
|
19
|
+
continue: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* A stage tracker function.
|
|
23
|
+
* Returns updated state and whether to continue pipeline.
|
|
24
|
+
*/
|
|
25
|
+
export type StageTracker = (state: TrackingState) => Promise<StageResult>;
|
|
26
|
+
/**
|
|
27
|
+
* Stage configuration for declarative pipeline.
|
|
28
|
+
*/
|
|
29
|
+
export interface StageConfig {
|
|
30
|
+
/** Stage type for cache lookup */
|
|
31
|
+
type: StageType;
|
|
32
|
+
/** The tracking function */
|
|
33
|
+
track: StageTracker;
|
|
34
|
+
/**
|
|
35
|
+
* Optional: custom cache check.
|
|
36
|
+
* By default, uses getCompletedStage.
|
|
37
|
+
* Return undefined to fall through to track().
|
|
38
|
+
*/
|
|
39
|
+
checkCache?: (state: TrackingState) => Promise<StageResult | undefined>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Run a single stage with automatic cache check.
|
|
43
|
+
*/
|
|
44
|
+
export declare function runStage(state: TrackingState, config: StageConfig): Promise<StageResult>;
|
|
45
|
+
/**
|
|
46
|
+
* Run a pipeline of stages.
|
|
47
|
+
* Stops when a stage returns continue=false.
|
|
48
|
+
*/
|
|
49
|
+
export declare function runPipeline(state: TrackingState, stages: StageConfig[]): Promise<TrackingState>;
|
|
50
|
+
/**
|
|
51
|
+
* Helper: create placeholder stage for skipped/not-started stages.
|
|
52
|
+
*/
|
|
53
|
+
export declare function placeholder(type: StageType, status: "NOT_STARTED" | "SKIPPED", reason: string): TrackedStage;
|
|
54
|
+
/**
|
|
55
|
+
* Helper: add placeholder stages for remaining pipeline stages.
|
|
56
|
+
*/
|
|
57
|
+
export declare function addPlaceholders(state: TrackingState, types: StageType[], status: "NOT_STARTED" | "SKIPPED", reason: string): Promise<TrackingState>;
|
|
58
|
+
/**
|
|
59
|
+
* Helper: get cached stage with any status (for fast-path checks).
|
|
60
|
+
*/
|
|
61
|
+
export { getCachedStage };
|
|
62
|
+
//# sourceMappingURL=stage-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stage-runner.d.ts","sourceRoot":"","sources":["../../src/tracker/stage-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAkB,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,aAAa,EAA+B,cAAc,EAAE,MAAM,SAAS,CAAC;AAKrF;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mCAAmC;IACnC,KAAK,EAAE,aAAa,CAAC;IACrB,wCAAwC;IACxC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,4BAA4B;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;CACzE;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAgB9F;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,WAAW,EAAE,GACpB,OAAO,CAAC,aAAa,CAAC,CAOxB;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,aAAa,GAAG,SAAS,EACjC,MAAM,EAAE,MAAM,GACb,YAAY,CAUd;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,SAAS,EAAE,EAClB,MAAM,EAAE,aAAa,GAAG,SAAS,EACjC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC,CAKxB;AAED;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Generic Stage Runner
|
|
4
|
+
*
|
|
5
|
+
* Provides a declarative pipeline runner that:
|
|
6
|
+
* - Handles cache checks automatically
|
|
7
|
+
* - Runs stages in sequence
|
|
8
|
+
* - Stops on incomplete stages
|
|
9
|
+
* - Supports pipeline composition (governor → timelock, election → timelock)
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getCachedStage = void 0;
|
|
13
|
+
exports.runStage = runStage;
|
|
14
|
+
exports.runPipeline = runPipeline;
|
|
15
|
+
exports.placeholder = placeholder;
|
|
16
|
+
exports.addPlaceholders = addPlaceholders;
|
|
17
|
+
const logger_1 = require("../utils/logger");
|
|
18
|
+
const types_1 = require("../types");
|
|
19
|
+
const state_1 = require("./state");
|
|
20
|
+
Object.defineProperty(exports, "getCachedStage", { enumerable: true, get: function () { return state_1.getCachedStage; } });
|
|
21
|
+
const utils_1 = require("../stages/utils");
|
|
22
|
+
const { pipeline: log } = logger_1.loggers;
|
|
23
|
+
/**
|
|
24
|
+
* Run a single stage with automatic cache check.
|
|
25
|
+
*/
|
|
26
|
+
async function runStage(state, config) {
|
|
27
|
+
// Custom cache check
|
|
28
|
+
if (config.checkCache) {
|
|
29
|
+
const cached = await config.checkCache(state);
|
|
30
|
+
if (cached)
|
|
31
|
+
return cached;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
// Default cache check
|
|
35
|
+
const cached = (0, state_1.getCompletedStage)(state, config.type);
|
|
36
|
+
if (cached) {
|
|
37
|
+
log("%s: cached", config.type);
|
|
38
|
+
return { state: await (0, state_1.addStage)(state, cached), continue: true };
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
// Run tracker
|
|
42
|
+
return config.track(state);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Run a pipeline of stages.
|
|
46
|
+
* Stops when a stage returns continue=false.
|
|
47
|
+
*/
|
|
48
|
+
async function runPipeline(state, stages) {
|
|
49
|
+
for (const config of stages) {
|
|
50
|
+
const result = await runStage(state, config);
|
|
51
|
+
state = result.state;
|
|
52
|
+
if (!result.continue)
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
return state;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Helper: create placeholder stage for skipped/not-started stages.
|
|
59
|
+
*/
|
|
60
|
+
function placeholder(type, status, reason) {
|
|
61
|
+
const chain = (0, utils_1.getChainForStage)(type);
|
|
62
|
+
return {
|
|
63
|
+
type,
|
|
64
|
+
status,
|
|
65
|
+
chain,
|
|
66
|
+
chainId: (0, types_1.chainToChainId)(chain),
|
|
67
|
+
transactions: [],
|
|
68
|
+
data: { reason },
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Helper: add placeholder stages for remaining pipeline stages.
|
|
73
|
+
*/
|
|
74
|
+
async function addPlaceholders(state, types, status, reason) {
|
|
75
|
+
for (const type of types) {
|
|
76
|
+
state = await (0, state_1.addStage)(state, placeholder(type, status, reason));
|
|
77
|
+
}
|
|
78
|
+
return state;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=stage-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stage-runner.js","sourceRoot":"","sources":["../../src/tracker/stage-runner.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA4CH,4BAgBC;AAMD,kCAUC;AAKD,kCAcC;AAKD,0CAUC;AA5GD,4CAA0C;AAC1C,oCAAmE;AACnE,mCAAqF;AA+G5E,+FA/G4C,sBAAc,OA+G5C;AA9GvB,2CAAmD;AAEnD,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,gBAAO,CAAC;AAkClC;;GAEG;AACI,KAAK,UAAU,QAAQ,CAAC,KAAoB,EAAE,MAAmB;IACtE,qBAAqB;IACrB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,sBAAsB;QACtB,MAAM,MAAM,GAAG,IAAA,yBAAiB,EAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,MAAM,EAAE,CAAC;YACX,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,IAAA,gBAAQ,EAAC,KAAK,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAClE,CAAC;IACH,CAAC;IAED,cAAc;IACd,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,WAAW,CAC/B,KAAoB,EACpB,MAAqB;IAErB,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7C,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,QAAQ;YAAE,MAAM;IAC9B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CACzB,IAAe,EACf,MAAiC,EACjC,MAAc;IAEd,MAAM,KAAK,GAAG,IAAA,wBAAgB,EAAC,IAAI,CAAC,CAAC;IACrC,OAAO;QACL,IAAI;QACJ,MAAM;QACN,KAAK;QACL,OAAO,EAAE,IAAA,sBAAc,EAAC,KAAK,CAAC;QAC9B,YAAY,EAAE,EAAE;QAChB,IAAI,EAAE,EAAE,MAAM,EAAE;KACD,CAAC;AACpB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,eAAe,CACnC,KAAoB,EACpB,KAAkB,EAClB,MAAiC,EACjC,MAAc;IAEd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,GAAG,MAAM,IAAA,gBAAQ,EAAC,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/tracker/state.d.ts
CHANGED
|
@@ -15,6 +15,8 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { ethers } from "ethers";
|
|
17
17
|
import { TrackedStage, TrackingCheckpoint, TrackingInput, StageType, CallScheduledData, ProposalData, ProposalType, ProposalState, OnProgressCallback, ChunkingConfig } from "../types";
|
|
18
|
+
import { TrackingPath } from "../stages/utils";
|
|
19
|
+
import { CohortType } from "../types";
|
|
18
20
|
/**
|
|
19
21
|
* Providers for multi-chain operations
|
|
20
22
|
*/
|
|
@@ -31,7 +33,10 @@ export interface CreateTrackingStateOptions {
|
|
|
31
33
|
input: TrackingInput;
|
|
32
34
|
onProgress?: OnProgressCallback;
|
|
33
35
|
chunkingConfig?: ChunkingConfig;
|
|
36
|
+
/** Parent checkpoint (proposal/election stages) */
|
|
34
37
|
checkpoint?: TrackingCheckpoint;
|
|
38
|
+
/** Linked timelock checkpoint for modular caching */
|
|
39
|
+
linkedTimelockCheckpoint?: TrackingCheckpoint;
|
|
35
40
|
cacheKey?: string;
|
|
36
41
|
/** Bootstrap data for timelock-only tracking */
|
|
37
42
|
callScheduledData?: CallScheduledData[];
|
|
@@ -58,7 +63,18 @@ export interface TrackingState {
|
|
|
58
63
|
readonly callScheduledData?: CallScheduledData[];
|
|
59
64
|
readonly stages: TrackedStage[];
|
|
60
65
|
readonly stageIndex: number;
|
|
66
|
+
/**
|
|
67
|
+
* Key to the linked timelock operation checkpoint.
|
|
68
|
+
* For elections: link to tx:{memberExecuteTxHash}:op:{operationId}
|
|
69
|
+
* For proposals: link to tx:{queueTxHash}:op:{operationId}
|
|
70
|
+
* This enables modular caching where timelock stages are stored separately.
|
|
71
|
+
*/
|
|
72
|
+
readonly timelockOpKey?: string;
|
|
61
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Determine tracking path from input type
|
|
76
|
+
*/
|
|
77
|
+
export declare function getTrackingPathFromInput(input: TrackingInput): TrackingPath;
|
|
62
78
|
export declare function createTrackingState(options: CreateTrackingStateOptions): TrackingState;
|
|
63
79
|
/**
|
|
64
80
|
* Add or update a stage. Returns new context.
|
|
@@ -94,5 +110,53 @@ export declare function getOutboxExecutionTx(ctx: TrackingState): {
|
|
|
94
110
|
blockNumber: number;
|
|
95
111
|
} | undefined;
|
|
96
112
|
export declare function getL1ExecutionTxHash(ctx: TrackingState): string | undefined;
|
|
113
|
+
/**
|
|
114
|
+
* Create a full checkpoint with all stages (legacy behavior).
|
|
115
|
+
* For modular caching, use createModularCheckpoints instead.
|
|
116
|
+
*/
|
|
97
117
|
export declare function createCheckpoint(ctx: TrackingState): TrackingCheckpoint;
|
|
118
|
+
/**
|
|
119
|
+
* Result of modular checkpoint creation.
|
|
120
|
+
*/
|
|
121
|
+
export interface ModularCheckpoints {
|
|
122
|
+
/** Parent checkpoint (proposal/election stages only) */
|
|
123
|
+
parentCheckpoint: TrackingCheckpoint;
|
|
124
|
+
/** Timelock checkpoint (timelock stages only), null if no timelock progress */
|
|
125
|
+
timelockCheckpoint: TrackingCheckpoint | null;
|
|
126
|
+
/** Cache key for the timelock checkpoint */
|
|
127
|
+
timelockOpKey: string | null;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Create modular checkpoints - splits parent and timelock stages.
|
|
131
|
+
*
|
|
132
|
+
* This enables:
|
|
133
|
+
* - Independent timelock tracking/resumption
|
|
134
|
+
* - Clear separation between proposal/election and timelock lifecycle
|
|
135
|
+
* - Efficient caching with minimal duplication
|
|
136
|
+
*
|
|
137
|
+
* @param ctx - The tracking state
|
|
138
|
+
* @param parentCacheKey - Cache key for the parent checkpoint (e.g., "election:0" or "tx:0x...")
|
|
139
|
+
*/
|
|
140
|
+
export declare function createModularCheckpoints(ctx: TrackingState, parentCacheKey: string): ModularCheckpoints;
|
|
141
|
+
/**
|
|
142
|
+
* Update timelockOpKey in tracking state.
|
|
143
|
+
* Called when timelock tracking begins (after PROPOSAL_QUEUED or MEMBER_ELECTION).
|
|
144
|
+
*/
|
|
145
|
+
export declare function setTimelockOpKey(ctx: TrackingState, timelockOpKey: string): TrackingState;
|
|
146
|
+
/** Get election index from election input */
|
|
147
|
+
export declare const getElectionIndex: (ctx: TrackingState) => number | undefined;
|
|
148
|
+
/** Get nominee proposal ID from CREATE_ELECTION or NOMINEE_ELECTION stage */
|
|
149
|
+
export declare function getNomineeProposalId(ctx: TrackingState): string | undefined;
|
|
150
|
+
/** Get member proposal ID from NOMINEE_VETTING or MEMBER_ELECTION stage */
|
|
151
|
+
export declare function getMemberProposalId(ctx: TrackingState): string | undefined;
|
|
152
|
+
/** Get election cohort from CREATE_ELECTION stage */
|
|
153
|
+
export declare function getElectionCohort(ctx: TrackingState): CohortType | undefined;
|
|
154
|
+
/** Get compliant nominee count from NOMINEE_ELECTION or NOMINEE_VETTING stage */
|
|
155
|
+
export declare function getCompliantNomineeCount(ctx: TrackingState): number | undefined;
|
|
156
|
+
/** Get target nominee count from NOMINEE_ELECTION stage */
|
|
157
|
+
export declare function getTargetNomineeCount(ctx: TrackingState): number | undefined;
|
|
158
|
+
/** Get vetting deadline from NOMINEE_VETTING stage */
|
|
159
|
+
export declare function getVettingDeadline(ctx: TrackingState): number | undefined;
|
|
160
|
+
/** Get timelock operation ID from election flow (MEMBER_ELECTION stage) */
|
|
161
|
+
export declare function getElectionTimelockOperationId(ctx: TrackingState): string | undefined;
|
|
98
162
|
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/tracker/state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAa,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,SAAS,
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/tracker/state.ts"],"names":[],"mappings":"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"}
|
package/dist/tracker/state.js
CHANGED
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
* - Debuggable: save/restore state snapshots
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.getFirstExecutableBlock = exports.getProposalState = exports.getIsElection = exports.getQueueBlockNumber = exports.getFirstCallScheduledData = exports.getProposalId = exports.getGovernorAddress = void 0;
|
|
18
|
+
exports.getElectionIndex = exports.getFirstExecutableBlock = exports.getProposalState = exports.getIsElection = exports.getQueueBlockNumber = exports.getFirstCallScheduledData = exports.getProposalId = exports.getGovernorAddress = void 0;
|
|
19
|
+
exports.getTrackingPathFromInput = getTrackingPathFromInput;
|
|
19
20
|
exports.createTrackingState = createTrackingState;
|
|
20
21
|
exports.addStage = addStage;
|
|
21
22
|
exports.isStageCompleted = isStageCompleted;
|
|
@@ -32,6 +33,15 @@ exports.getL2ExecutionTxHash = getL2ExecutionTxHash;
|
|
|
32
33
|
exports.getOutboxExecutionTx = getOutboxExecutionTx;
|
|
33
34
|
exports.getL1ExecutionTxHash = getL1ExecutionTxHash;
|
|
34
35
|
exports.createCheckpoint = createCheckpoint;
|
|
36
|
+
exports.createModularCheckpoints = createModularCheckpoints;
|
|
37
|
+
exports.setTimelockOpKey = setTimelockOpKey;
|
|
38
|
+
exports.getNomineeProposalId = getNomineeProposalId;
|
|
39
|
+
exports.getMemberProposalId = getMemberProposalId;
|
|
40
|
+
exports.getElectionCohort = getElectionCohort;
|
|
41
|
+
exports.getCompliantNomineeCount = getCompliantNomineeCount;
|
|
42
|
+
exports.getTargetNomineeCount = getTargetNomineeCount;
|
|
43
|
+
exports.getVettingDeadline = getVettingDeadline;
|
|
44
|
+
exports.getElectionTimelockOperationId = getElectionTimelockOperationId;
|
|
35
45
|
const ethers_1 = require("ethers");
|
|
36
46
|
const logger_1 = require("../utils/logger");
|
|
37
47
|
const utils_1 = require("../stages/utils");
|
|
@@ -39,10 +49,28 @@ const governor_discovery_1 = require("../discovery/governor-discovery");
|
|
|
39
49
|
const constants_1 = require("../constants");
|
|
40
50
|
const { tracker: logTracker } = logger_1.loggers;
|
|
41
51
|
// State Creation
|
|
52
|
+
/**
|
|
53
|
+
* Determine tracking path from input type
|
|
54
|
+
*/
|
|
55
|
+
function getTrackingPathFromInput(input) {
|
|
56
|
+
switch (input.type) {
|
|
57
|
+
case "governor":
|
|
58
|
+
return "governor";
|
|
59
|
+
case "timelock":
|
|
60
|
+
return "timelock";
|
|
61
|
+
case "election":
|
|
62
|
+
return "election";
|
|
63
|
+
case "discovery":
|
|
64
|
+
// Discovery inputs don't have stages, but default to timelock for safety
|
|
65
|
+
return "timelock";
|
|
66
|
+
}
|
|
67
|
+
}
|
|
42
68
|
function createTrackingState(options) {
|
|
43
69
|
// Initialize stages based on tracking path
|
|
44
|
-
const
|
|
45
|
-
const initialStages = (0, utils_1.
|
|
70
|
+
const path = getTrackingPathFromInput(options.input);
|
|
71
|
+
const initialStages = (0, utils_1.initializeStagesForTrackingPath)(path);
|
|
72
|
+
// Get timelockOpKey from parent checkpoint metadata if present
|
|
73
|
+
const timelockOpKey = options.checkpoint?.metadata?.timelockOpKey;
|
|
46
74
|
let ctx = {
|
|
47
75
|
providers: options.providers,
|
|
48
76
|
chunkingConfig: options.chunkingConfig ?? constants_1.DEFAULT_CHUNKING_CONFIG,
|
|
@@ -52,11 +80,17 @@ function createTrackingState(options) {
|
|
|
52
80
|
callScheduledData: options.callScheduledData,
|
|
53
81
|
stages: initialStages,
|
|
54
82
|
stageIndex: 0,
|
|
83
|
+
timelockOpKey,
|
|
55
84
|
};
|
|
56
|
-
// Load from checkpoint
|
|
85
|
+
// Load from parent checkpoint (non-timelock stages)
|
|
57
86
|
if (options.checkpoint?.cachedData.completedStages?.length) {
|
|
58
87
|
ctx = loadFromCheckpoint(ctx, options.checkpoint);
|
|
59
88
|
}
|
|
89
|
+
// Load from linked timelock checkpoint (timelock stages)
|
|
90
|
+
if (options.linkedTimelockCheckpoint?.cachedData.completedStages?.length) {
|
|
91
|
+
ctx = loadFromCheckpoint(ctx, options.linkedTimelockCheckpoint);
|
|
92
|
+
logTracker("RESUME: merged linked timelock checkpoint");
|
|
93
|
+
}
|
|
60
94
|
return ctx;
|
|
61
95
|
}
|
|
62
96
|
/**
|
|
@@ -91,13 +125,12 @@ async function addStage(ctx, stage) {
|
|
|
91
125
|
const findStage = (ctx, type) => ctx.stages.find((s) => s.type === type);
|
|
92
126
|
/** Check if a stage is completed (COMPLETED or SKIPPED). */
|
|
93
127
|
function isStageCompleted(ctx, type) {
|
|
94
|
-
|
|
95
|
-
return s?.status === "COMPLETED" || s?.status === "SKIPPED";
|
|
128
|
+
return (0, utils_1.isStageSuccess)(findStage(ctx, type)?.status);
|
|
96
129
|
}
|
|
97
130
|
/** Get a completed stage for zero-RPC resume. */
|
|
98
131
|
function getCompletedStage(ctx, type) {
|
|
99
132
|
const s = findStage(ctx, type);
|
|
100
|
-
return
|
|
133
|
+
return (0, utils_1.isStageSuccess)(s?.status) ? s : undefined;
|
|
101
134
|
}
|
|
102
135
|
/** Get a cached stage (any status). */
|
|
103
136
|
function getCachedStage(ctx, type) {
|
|
@@ -109,7 +142,7 @@ function getCachedStage(ctx, type) {
|
|
|
109
142
|
function isComplete(ctx) {
|
|
110
143
|
return (0, utils_1.areAllStagesComplete)(ctx.stages);
|
|
111
144
|
}
|
|
112
|
-
// Stage data helpers
|
|
145
|
+
// Stage data helpers - properly typed using StageDataMap
|
|
113
146
|
const stageData = (ctx, type) => findStage(ctx, type)?.data;
|
|
114
147
|
const execTx = (s) => s?.transactions?.find((tx) => tx.description === "executed");
|
|
115
148
|
const chainTx = (s, chain) => s?.transactions?.find((tx) => tx.chain === chain);
|
|
@@ -123,12 +156,14 @@ function getTimelockAddress(ctx) {
|
|
|
123
156
|
if (ctx.input.type === "timelock")
|
|
124
157
|
return ctx.input.timelockAddress;
|
|
125
158
|
return (stageData(ctx, "PROPOSAL_QUEUED")?.timelockAddress ??
|
|
159
|
+
stageData(ctx, "MEMBER_ELECTION")?.timelockAddress ??
|
|
126
160
|
stageData(ctx, "L2_TIMELOCK")?.timelockAddress);
|
|
127
161
|
}
|
|
128
162
|
function getOperationId(ctx) {
|
|
129
163
|
if (ctx.input.type === "timelock")
|
|
130
164
|
return ctx.input.operationId;
|
|
131
165
|
return (stageData(ctx, "PROPOSAL_QUEUED")?.operationId ??
|
|
166
|
+
stageData(ctx, "MEMBER_ELECTION")?.operationId ??
|
|
132
167
|
stageData(ctx, "L2_TIMELOCK")?.operationId);
|
|
133
168
|
}
|
|
134
169
|
function getCallScheduledData(ctx) {
|
|
@@ -193,9 +228,7 @@ function getVotingEndBlock(ctx) {
|
|
|
193
228
|
const data = stageData(ctx, "VOTING_ACTIVE");
|
|
194
229
|
if (!data?.deadline)
|
|
195
230
|
return undefined;
|
|
196
|
-
|
|
197
|
-
const extended = data.extendedDeadline ? parseInt(data.extendedDeadline, 10) : 0;
|
|
198
|
-
return extended > deadline ? extended : deadline;
|
|
231
|
+
return Math.max(parseInt(data.deadline, 10), parseInt(data.extendedDeadline ?? "0", 10));
|
|
199
232
|
}
|
|
200
233
|
function getL2ExecutionTxHash(ctx) {
|
|
201
234
|
const s = findStage(ctx, "L2_TIMELOCK");
|
|
@@ -215,6 +248,10 @@ function getL1ExecutionTxHash(ctx) {
|
|
|
215
248
|
return s?.status === "COMPLETED" ? execTx(s)?.hash : undefined;
|
|
216
249
|
}
|
|
217
250
|
// Checkpoint & Result
|
|
251
|
+
/**
|
|
252
|
+
* Create a full checkpoint with all stages (legacy behavior).
|
|
253
|
+
* For modular caching, use createModularCheckpoints instead.
|
|
254
|
+
*/
|
|
218
255
|
function createCheckpoint(ctx) {
|
|
219
256
|
const completedStages = ctx.stages.filter((s) => s.status !== "NOT_STARTED");
|
|
220
257
|
const lastProcessedStage = [...ctx.stages].reverse().find((s) => s.status !== "NOT_STARTED")?.type ?? null;
|
|
@@ -225,9 +262,99 @@ function createCheckpoint(ctx) {
|
|
|
225
262
|
lastProcessedStage,
|
|
226
263
|
lastProcessedBlock: { l1: 0, l2: 0, nova: 0 },
|
|
227
264
|
cachedData: { completedStages },
|
|
228
|
-
metadata: {
|
|
265
|
+
metadata: {
|
|
266
|
+
errorCount: 0,
|
|
267
|
+
lastTrackedAt: Date.now(),
|
|
268
|
+
timelockOpKey: ctx.timelockOpKey,
|
|
269
|
+
},
|
|
270
|
+
};
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Create modular checkpoints - splits parent and timelock stages.
|
|
274
|
+
*
|
|
275
|
+
* This enables:
|
|
276
|
+
* - Independent timelock tracking/resumption
|
|
277
|
+
* - Clear separation between proposal/election and timelock lifecycle
|
|
278
|
+
* - Efficient caching with minimal duplication
|
|
279
|
+
*
|
|
280
|
+
* @param ctx - The tracking state
|
|
281
|
+
* @param parentCacheKey - Cache key for the parent checkpoint (e.g., "election:0" or "tx:0x...")
|
|
282
|
+
*/
|
|
283
|
+
function createModularCheckpoints(ctx, parentCacheKey) {
|
|
284
|
+
const allCompletedStages = ctx.stages.filter((s) => s.status !== "NOT_STARTED");
|
|
285
|
+
const { parentStages, timelockStages } = (0, utils_1.splitStages)(allCompletedStages);
|
|
286
|
+
// Determine timelockOpKey from state or derive from data
|
|
287
|
+
const timelockOpKey = ctx.timelockOpKey ?? null;
|
|
288
|
+
// Helper to build checkpoint from stages
|
|
289
|
+
const buildCheckpoint = (input, stages, extraMetadata) => ({
|
|
290
|
+
version: 1,
|
|
291
|
+
createdAt: Date.now(),
|
|
292
|
+
input,
|
|
293
|
+
lastProcessedStage: [...stages].reverse().find((s) => s.status !== "NOT_STARTED")?.type ?? null,
|
|
294
|
+
lastProcessedBlock: { l1: 0, l2: 0, nova: 0 },
|
|
295
|
+
cachedData: { completedStages: stages },
|
|
296
|
+
metadata: { errorCount: 0, lastTrackedAt: Date.now(), ...extraMetadata },
|
|
297
|
+
});
|
|
298
|
+
const parentCheckpoint = buildCheckpoint(ctx.input, parentStages, {
|
|
299
|
+
timelockOpKey: timelockOpKey ?? undefined,
|
|
300
|
+
});
|
|
301
|
+
// Timelock checkpoint - only contains timelock stages
|
|
302
|
+
const timelockCheckpoint = timelockStages.length > 0 && (0, utils_1.hasTimelockProgress)(ctx.stages)
|
|
303
|
+
? buildCheckpoint(deriveTimelockInput(ctx), timelockStages, {
|
|
304
|
+
sourceCheckpoint: parentCacheKey,
|
|
305
|
+
})
|
|
306
|
+
: null;
|
|
307
|
+
return {
|
|
308
|
+
parentCheckpoint,
|
|
309
|
+
timelockCheckpoint,
|
|
310
|
+
timelockOpKey,
|
|
229
311
|
};
|
|
230
312
|
}
|
|
313
|
+
/**
|
|
314
|
+
* Derive timelock input from tracking state.
|
|
315
|
+
* Used when creating timelock checkpoints for modular caching.
|
|
316
|
+
*/
|
|
317
|
+
function deriveTimelockInput(ctx) {
|
|
318
|
+
const operationId = getOperationId(ctx);
|
|
319
|
+
const timelockAddress = getTimelockAddress(ctx);
|
|
320
|
+
const scheduledTxHash = deriveScheduledTxHash(ctx);
|
|
321
|
+
if (operationId && timelockAddress && scheduledTxHash) {
|
|
322
|
+
return {
|
|
323
|
+
type: "timelock",
|
|
324
|
+
timelockAddress,
|
|
325
|
+
operationId,
|
|
326
|
+
scheduledTxHash,
|
|
327
|
+
};
|
|
328
|
+
}
|
|
329
|
+
// Fallback to original input if we can't derive timelock input
|
|
330
|
+
return ctx.input;
|
|
331
|
+
}
|
|
332
|
+
/** Find tx hash from a completed stage by description */
|
|
333
|
+
function findTxHashFromStage(ctx, stageType, description, requireCompleted = true) {
|
|
334
|
+
const stage = findStage(ctx, stageType);
|
|
335
|
+
if (requireCompleted && stage?.status !== "COMPLETED")
|
|
336
|
+
return undefined;
|
|
337
|
+
if (!requireCompleted && !stage)
|
|
338
|
+
return undefined;
|
|
339
|
+
return stage?.transactions?.find((t) => t.description === description)?.hash;
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* Derive the scheduled tx hash from tracking state.
|
|
343
|
+
* For proposals: queue tx hash from PROPOSAL_QUEUED
|
|
344
|
+
* For elections: member execute tx hash from MEMBER_ELECTION
|
|
345
|
+
*/
|
|
346
|
+
function deriveScheduledTxHash(ctx) {
|
|
347
|
+
return (findTxHashFromStage(ctx, "PROPOSAL_QUEUED", "queued") ??
|
|
348
|
+
findTxHashFromStage(ctx, "MEMBER_ELECTION", "executed") ??
|
|
349
|
+
findTxHashFromStage(ctx, "L2_TIMELOCK", "scheduled", false));
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* Update timelockOpKey in tracking state.
|
|
353
|
+
* Called when timelock tracking begins (after PROPOSAL_QUEUED or MEMBER_ELECTION).
|
|
354
|
+
*/
|
|
355
|
+
function setTimelockOpKey(ctx, timelockOpKey) {
|
|
356
|
+
return { ...ctx, timelockOpKey };
|
|
357
|
+
}
|
|
231
358
|
async function emitProgress(ctx, s) {
|
|
232
359
|
if (!ctx.onProgress)
|
|
233
360
|
return;
|
|
@@ -240,4 +367,56 @@ async function emitProgress(ctx, s) {
|
|
|
240
367
|
isComplete: isComplete(ctx),
|
|
241
368
|
});
|
|
242
369
|
}
|
|
370
|
+
// Election-specific getters
|
|
371
|
+
/** Get election index from election input */
|
|
372
|
+
const getElectionIndex = (ctx) => ctx.input.type === "election" ? ctx.input.electionIndex : undefined;
|
|
373
|
+
exports.getElectionIndex = getElectionIndex;
|
|
374
|
+
/** Get nominee proposal ID from CREATE_ELECTION or NOMINEE_ELECTION stage */
|
|
375
|
+
function getNomineeProposalId(ctx) {
|
|
376
|
+
const createData = stageData(ctx, "CREATE_ELECTION");
|
|
377
|
+
if (createData?.nomineeProposalId)
|
|
378
|
+
return createData.nomineeProposalId;
|
|
379
|
+
const nomineeData = stageData(ctx, "NOMINEE_ELECTION");
|
|
380
|
+
return nomineeData?.nomineeProposalId;
|
|
381
|
+
}
|
|
382
|
+
/** Get member proposal ID from NOMINEE_VETTING or MEMBER_ELECTION stage */
|
|
383
|
+
function getMemberProposalId(ctx) {
|
|
384
|
+
const vettingData = stageData(ctx, "NOMINEE_VETTING");
|
|
385
|
+
if (vettingData?.memberProposalId)
|
|
386
|
+
return vettingData.memberProposalId;
|
|
387
|
+
const memberData = stageData(ctx, "MEMBER_ELECTION");
|
|
388
|
+
return memberData?.memberProposalId;
|
|
389
|
+
}
|
|
390
|
+
/** Get election cohort from CREATE_ELECTION stage */
|
|
391
|
+
function getElectionCohort(ctx) {
|
|
392
|
+
const createData = stageData(ctx, "CREATE_ELECTION");
|
|
393
|
+
return createData?.cohort;
|
|
394
|
+
}
|
|
395
|
+
/** Get compliant nominee count from NOMINEE_ELECTION or NOMINEE_VETTING stage */
|
|
396
|
+
function getCompliantNomineeCount(ctx) {
|
|
397
|
+
const nomineeData = stageData(ctx, "NOMINEE_ELECTION");
|
|
398
|
+
if (nomineeData?.compliantNomineeCount !== undefined)
|
|
399
|
+
return nomineeData.compliantNomineeCount;
|
|
400
|
+
const vettingData = stageData(ctx, "NOMINEE_VETTING");
|
|
401
|
+
return vettingData?.compliantNomineeCount;
|
|
402
|
+
}
|
|
403
|
+
/** Get target nominee count from NOMINEE_ELECTION stage */
|
|
404
|
+
function getTargetNomineeCount(ctx) {
|
|
405
|
+
const nomineeData = stageData(ctx, "NOMINEE_ELECTION");
|
|
406
|
+
return nomineeData?.targetNomineeCount;
|
|
407
|
+
}
|
|
408
|
+
/** Get vetting deadline from NOMINEE_VETTING stage */
|
|
409
|
+
function getVettingDeadline(ctx) {
|
|
410
|
+
const vettingData = stageData(ctx, "NOMINEE_VETTING");
|
|
411
|
+
return vettingData?.vettingDeadline;
|
|
412
|
+
}
|
|
413
|
+
/** Get timelock operation ID from election flow (MEMBER_ELECTION stage) */
|
|
414
|
+
function getElectionTimelockOperationId(ctx) {
|
|
415
|
+
// For elections, operation ID comes from MEMBER_ELECTION stage after execution
|
|
416
|
+
const memberData = stageData(ctx, "MEMBER_ELECTION");
|
|
417
|
+
if (memberData?.operationId)
|
|
418
|
+
return memberData.operationId;
|
|
419
|
+
// Fall back to timelock stages
|
|
420
|
+
return getOperationId(ctx);
|
|
421
|
+
}
|
|
243
422
|
//# sourceMappingURL=state.js.map
|