@gzeoneth/gov-tracker 0.1.2 → 0.2.0-1
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/abis.d.ts +0 -32
- package/dist/abis.d.ts.map +1 -1
- package/dist/abis.js +17 -17
- package/dist/abis.js.map +1 -1
- package/dist/calldata/decoder.d.ts +12 -3
- package/dist/calldata/decoder.d.ts.map +1 -1
- package/dist/calldata/decoder.js +56 -9
- package/dist/calldata/decoder.js.map +1 -1
- package/dist/calldata/index.d.ts +4 -7
- package/dist/calldata/index.d.ts.map +1 -1
- package/dist/calldata/index.js +5 -19
- package/dist/calldata/index.js.map +1 -1
- package/dist/calldata/parameter-decoder.d.ts +11 -2
- package/dist/calldata/parameter-decoder.d.ts.map +1 -1
- package/dist/calldata/parameter-decoder.js +67 -8
- package/dist/calldata/parameter-decoder.js.map +1 -1
- package/dist/calldata/retryable-ticket.d.ts +1 -17
- package/dist/calldata/retryable-ticket.d.ts.map +1 -1
- package/dist/calldata/retryable-ticket.js +10 -17
- package/dist/calldata/retryable-ticket.js.map +1 -1
- package/dist/calldata/signature-lookup.d.ts +0 -11
- package/dist/calldata/signature-lookup.d.ts.map +1 -1
- package/dist/calldata/signature-lookup.js +0 -8
- package/dist/calldata/signature-lookup.js.map +1 -1
- package/dist/cli/lib/cli.d.ts +1 -3
- package/dist/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +12 -27
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/cli/lib/election-check.d.ts +2 -2
- package/dist/cli/lib/election-check.d.ts.map +1 -1
- package/dist/cli/lib/election-check.js.map +1 -1
- package/dist/cli/lib/json-state.d.ts +2 -29
- package/dist/cli/lib/json-state.d.ts.map +1 -1
- package/dist/cli/lib/json-state.js +12 -56
- package/dist/cli/lib/json-state.js.map +1 -1
- package/dist/cli/monitor.js +1 -2
- package/dist/cli/monitor.js.map +1 -1
- package/dist/constants.d.ts +41 -7
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +64 -4
- package/dist/constants.js.map +1 -1
- package/dist/discovery/timelock-discovery.js +1 -1
- package/dist/discovery/timelock-discovery.js.map +1 -1
- package/dist/election.d.ts.map +1 -1
- package/dist/election.js +7 -4
- package/dist/election.js.map +1 -1
- package/dist/index.d.ts +10 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +35 -26
- package/dist/index.js.map +1 -1
- package/dist/simulation/index.d.ts +3 -4
- package/dist/simulation/index.d.ts.map +1 -1
- package/dist/simulation/index.js +3 -9
- package/dist/simulation/index.js.map +1 -1
- package/dist/simulation/simulation-data.d.ts +6 -31
- package/dist/simulation/simulation-data.d.ts.map +1 -1
- package/dist/simulation/simulation-data.js +25 -58
- package/dist/simulation/simulation-data.js.map +1 -1
- package/dist/stages/{stage-builder.d.ts → builder.d.ts} +14 -9
- package/dist/stages/builder.d.ts.map +1 -0
- package/dist/stages/{stage-builder.js → builder.js} +19 -5
- 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 +17 -17
- 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 +5 -5
- 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 +11 -11
- package/dist/stages/proposal-queued.js.map +1 -1
- package/dist/stages/retryables.d.ts +7 -7
- package/dist/stages/retryables.d.ts.map +1 -1
- package/dist/stages/retryables.js +75 -61
- package/dist/stages/retryables.js.map +1 -1
- package/dist/stages/timelock.d.ts +3 -24
- package/dist/stages/timelock.d.ts.map +1 -1
- package/dist/stages/timelock.js +47 -39
- 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} +211 -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 +9 -9
- package/dist/tracker/execute.js.map +1 -1
- package/dist/tracker/pipeline.d.ts +3 -32
- package/dist/tracker/pipeline.d.ts.map +1 -1
- package/dist/tracker/pipeline.js +40 -43
- package/dist/tracker/pipeline.js.map +1 -1
- package/dist/tracker/query.js +4 -4
- 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 +24 -22
- package/dist/tracker.js.map +1 -1
- package/dist/types/calldata.d.ts +4 -6
- package/dist/types/calldata.d.ts.map +1 -1
- package/dist/types/core.d.ts +36 -34
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js +33 -0
- package/dist/types/core.js.map +1 -1
- package/dist/types/cross-chain.d.ts +5 -61
- package/dist/types/cross-chain.d.ts.map +1 -1
- package/dist/types/election.d.ts +3 -6
- package/dist/types/election.d.ts.map +1 -1
- package/dist/types/index.d.ts +7 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +6 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/simulation.d.ts +5 -7
- package/dist/types/simulation.d.ts.map +1 -1
- package/dist/types/stages.d.ts +50 -32
- package/dist/types/stages.d.ts.map +1 -1
- package/dist/types/stages.js +10 -1
- package/dist/types/stages.js.map +1 -1
- package/dist/types/tracking.d.ts +3 -30
- package/dist/types/tracking.d.ts.map +1 -1
- package/dist/utils/chain.d.ts +7 -3
- package/dist/utils/chain.d.ts.map +1 -1
- package/dist/utils/chain.js +13 -9
- package/dist/utils/chain.js.map +1 -1
- package/dist/utils/logger.d.ts +9 -3
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +53 -19
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/rpc-utils.d.ts +7 -8
- package/dist/utils/rpc-utils.d.ts.map +1 -1
- package/dist/utils/rpc-utils.js +20 -2
- package/dist/utils/rpc-utils.js.map +1 -1
- package/dist/utils/salt-computation.d.ts.map +1 -1
- package/dist/utils/salt-computation.js +2 -3
- package/dist/utils/salt-computation.js.map +1 -1
- package/dist/utils/stage-metadata.d.ts +2 -2
- package/dist/utils/stage-metadata.d.ts.map +1 -1
- package/dist/utils/stage-metadata.js +5 -5
- package/dist/utils/stage-metadata.js.map +1 -1
- package/package.json +9 -5
- package/dist/calldata/address-utils.d.ts +0 -23
- package/dist/calldata/address-utils.d.ts.map +0 -1
- package/dist/calldata/address-utils.js +0 -84
- package/dist/calldata/address-utils.js.map +0 -1
- package/dist/calldata/extraction.d.ts +0 -17
- package/dist/calldata/extraction.d.ts.map +0 -1
- package/dist/calldata/extraction.js +0 -56
- package/dist/calldata/extraction.js.map +0 -1
- package/dist/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/tracker/index.d.ts +0 -18
- package/dist/tracker/index.d.ts.map +0 -1
- package/dist/tracker/index.js +0 -70
- package/dist/tracker/index.js.map +0 -1
- package/dist/types.d.ts +0 -6
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -22
- package/dist/types.js.map +0 -1
- package/dist/utils/error-classification.d.ts +0 -13
- package/dist/utils/error-classification.d.ts.map +0 -1
- package/dist/utils/error-classification.js +0 -28
- package/dist/utils/error-classification.js.map +0 -1
- package/dist/utils/scoped-logger.d.ts +0 -43
- package/dist/utils/scoped-logger.d.ts.map +0 -1
- package/dist/utils/scoped-logger.js +0 -72
- package/dist/utils/scoped-logger.js.map +0 -1
- package/dist/utils/stage-helpers.d.ts +0 -51
- package/dist/utils/stage-helpers.d.ts.map +0 -1
- package/dist/utils/stage-helpers.js +0 -143
- package/dist/utils/stage-helpers.js.map +0 -1
- package/dist/utils/urls.d.ts +0 -28
- package/dist/utils/urls.d.ts.map +0 -1
- package/dist/utils/urls.js +0 -71
- package/dist/utils/urls.js.map +0 -1
package/dist/stages/timelock.js
CHANGED
|
@@ -16,6 +16,7 @@ exports.prepareTimelockOperation = prepareTimelockOperation;
|
|
|
16
16
|
exports.prepareTimelockBatch = prepareTimelockBatch;
|
|
17
17
|
exports.prepareTimelockStage = prepareTimelockStage;
|
|
18
18
|
const ethers_1 = require("ethers");
|
|
19
|
+
const types_1 = require("../types");
|
|
19
20
|
const timelock_discovery_1 = require("../discovery/timelock-discovery");
|
|
20
21
|
const security_council_1 = require("../discovery/security-council");
|
|
21
22
|
const operation_id_1 = require("../utils/operation-id");
|
|
@@ -23,25 +24,24 @@ const salt_computation_1 = require("../utils/salt-computation");
|
|
|
23
24
|
const abis_1 = require("../abis");
|
|
24
25
|
const constants_1 = require("../constants");
|
|
25
26
|
const chain_1 = require("../utils/chain");
|
|
26
|
-
const
|
|
27
|
-
const
|
|
27
|
+
const utils_1 = require("./utils");
|
|
28
|
+
const builder_1 = require("./builder");
|
|
28
29
|
const timing_1 = require("../utils/timing");
|
|
29
|
-
const stage_helpers_1 = require("../utils/stage-helpers");
|
|
30
30
|
const rpc_utils_1 = require("../utils/rpc-utils");
|
|
31
31
|
const logger_1 = require("../utils/logger");
|
|
32
32
|
const log = logger_1.loggers.stage.timelock;
|
|
33
33
|
const logExecution = logger_1.loggers.execution;
|
|
34
34
|
const L2_TIMELOCK_CONFIG = {
|
|
35
|
-
chain: "
|
|
35
|
+
chain: "arb1",
|
|
36
36
|
stageType: "L2_TIMELOCK",
|
|
37
37
|
blockTimeSeconds: constants_1.BLOCK_TIMES.L2,
|
|
38
|
-
logPrefix: "
|
|
38
|
+
logPrefix: "arb1",
|
|
39
39
|
};
|
|
40
40
|
const L1_TIMELOCK_CONFIG = {
|
|
41
|
-
chain: "
|
|
41
|
+
chain: "ethereum",
|
|
42
42
|
stageType: "L1_TIMELOCK",
|
|
43
43
|
blockTimeSeconds: constants_1.BLOCK_TIMES.L1,
|
|
44
|
-
logPrefix: "
|
|
44
|
+
logPrefix: "ethereum",
|
|
45
45
|
};
|
|
46
46
|
// ============================================================================
|
|
47
47
|
// L2-Specific: Security Council Handling
|
|
@@ -100,7 +100,7 @@ async function findL1OperationIdFromTx(outboxTxHash, outboxTxBlock, l1Provider)
|
|
|
100
100
|
* Works for both L1 and L2 timelocks with configuration-driven differences.
|
|
101
101
|
*/
|
|
102
102
|
async function trackTimelock(config, timelockAddress, operationId, provider, fromBlock, options = {}) {
|
|
103
|
-
const builder = new
|
|
103
|
+
const builder = new builder_1.StageBuilder(config.stageType, config.chain);
|
|
104
104
|
if (!operationId) {
|
|
105
105
|
return {
|
|
106
106
|
stage: builder.status("NOT_STARTED").build(),
|
|
@@ -129,12 +129,12 @@ async function trackTimelock(config, timelockAddress, operationId, provider, fro
|
|
|
129
129
|
skipLogSearch: false,
|
|
130
130
|
});
|
|
131
131
|
const { timestamp: currentTimestamp } = await (0, timing_1.getCurrentBlockInfo)(provider);
|
|
132
|
-
const eta = await (0,
|
|
132
|
+
const eta = await (0, utils_1.calculateTimelockEta)(timelockState, operationState, provider);
|
|
133
133
|
// Add base data
|
|
134
134
|
builder.data({ operationId, timelockAddress, state: operationState.state, eta });
|
|
135
|
-
const allData = (0,
|
|
135
|
+
const allData = (0, utils_1.collectAllScheduledData)(timelockState);
|
|
136
136
|
if (allData.length > 0) {
|
|
137
|
-
builder.data({ callScheduledData: (0,
|
|
137
|
+
builder.data({ callScheduledData: (0, utils_1.serializeCallScheduledDataArray)(allData) });
|
|
138
138
|
}
|
|
139
139
|
// Check for Security Council enrichment (L2 only)
|
|
140
140
|
if (options.checkSecurityCouncil) {
|
|
@@ -207,8 +207,9 @@ async function trackTimelock(config, timelockAddress, operationId, provider, fro
|
|
|
207
207
|
let queueTimestamp;
|
|
208
208
|
if (timelockState.scheduledData?.txHash &&
|
|
209
209
|
timelockState.scheduledData.blockNumber !== undefined) {
|
|
210
|
-
queueTimestamp = await (0,
|
|
211
|
-
|
|
210
|
+
queueTimestamp = await (0, utils_1.getBlockTimestamp)(timelockState.scheduledData.blockNumber, provider);
|
|
211
|
+
const chainId = (0, types_1.chainToChainId)(config.chain) ?? 0;
|
|
212
|
+
builder.tx(timelockState.scheduledData.txHash, timelockState.scheduledData.blockNumber, config.chain, chainId, { timestamp: queueTimestamp, description: "queued" });
|
|
212
213
|
}
|
|
213
214
|
// Determine status based on operation state
|
|
214
215
|
// Priority: COMPLETED (isDone) > READY (isReady) > PENDING (isPending) > NOT_STARTED
|
|
@@ -224,10 +225,11 @@ async function trackTimelock(config, timelockAddress, operationId, provider, fro
|
|
|
224
225
|
if (options.cachedExecutionTxHash) {
|
|
225
226
|
const receipt = await provider.getTransactionReceipt(options.cachedExecutionTxHash);
|
|
226
227
|
if (receipt) {
|
|
227
|
-
const execTimestamp = await (0,
|
|
228
|
+
const execTimestamp = await (0, utils_1.getBlockTimestamp)(receipt.blockNumber, provider);
|
|
229
|
+
const chainId = (0, types_1.chainToChainId)(config.chain) ?? 0;
|
|
228
230
|
builder
|
|
229
231
|
.status("COMPLETED")
|
|
230
|
-
.tx(options.cachedExecutionTxHash, receipt.blockNumber, config.chain, {
|
|
232
|
+
.tx(options.cachedExecutionTxHash, receipt.blockNumber, config.chain, chainId, {
|
|
231
233
|
timestamp: execTimestamp,
|
|
232
234
|
description: "executed",
|
|
233
235
|
})
|
|
@@ -243,7 +245,7 @@ async function trackTimelock(config, timelockAddress, operationId, provider, fro
|
|
|
243
245
|
}
|
|
244
246
|
}
|
|
245
247
|
// searchAndCompleteTimelockExecution expects a stage, so build and pass
|
|
246
|
-
const executionResult = await (0,
|
|
248
|
+
const executionResult = await (0, utils_1.searchAndCompleteTimelockExecution)(builder.build(), timelockAddress, operationId, provider, config.chain, executionSearchStart, undefined, queueTimestamp);
|
|
247
249
|
return {
|
|
248
250
|
stage: executionResult.stage,
|
|
249
251
|
timelockState,
|
|
@@ -258,7 +260,7 @@ async function trackTimelock(config, timelockAddress, operationId, provider, fro
|
|
|
258
260
|
builder.timing({ startedAt: queueTimestamp });
|
|
259
261
|
}
|
|
260
262
|
// Build execution payload
|
|
261
|
-
const executionPayload = (0,
|
|
263
|
+
const executionPayload = (0, utils_1.buildExecutionPayloadData)(timelockAddress, operationId, allData);
|
|
262
264
|
builder.data(executionPayload);
|
|
263
265
|
return {
|
|
264
266
|
stage: builder.build(),
|
|
@@ -324,7 +326,7 @@ async function trackL1Timelock(l1Provider, options = {}) {
|
|
|
324
326
|
l1ScheduleTxHash = discovery.l1ScheduleTxHash;
|
|
325
327
|
}
|
|
326
328
|
if (!l1OperationId) {
|
|
327
|
-
const stage = new
|
|
329
|
+
const stage = new builder_1.StageBuilder("L1_TIMELOCK", "ethereum")
|
|
328
330
|
.status("NOT_STARTED")
|
|
329
331
|
.data({
|
|
330
332
|
reason: "L1 operation ID not yet discovered (challenge period may not be complete)",
|
|
@@ -397,7 +399,7 @@ function getSalt(stageData, options) {
|
|
|
397
399
|
* Helper: Get predecessor from cached stage data or user override
|
|
398
400
|
*/
|
|
399
401
|
function getPredecessor(stageData, options) {
|
|
400
|
-
return
|
|
402
|
+
return options.predecessor ?? stageData.predecessor ?? ethers_1.ethers.constants.HashZero;
|
|
401
403
|
}
|
|
402
404
|
/**
|
|
403
405
|
* Prepare a single timelock operation for execution.
|
|
@@ -407,7 +409,7 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
|
|
|
407
409
|
const salt = getSalt(stageData, options);
|
|
408
410
|
const predecessor = getPredecessor(stageData, options);
|
|
409
411
|
if (!options.prepareCompleted) {
|
|
410
|
-
const stateError = await (0,
|
|
412
|
+
const stateError = await (0, utils_1.checkOperationReady)(timelockAddress, operationId, provider);
|
|
411
413
|
if (stateError)
|
|
412
414
|
return stateError;
|
|
413
415
|
}
|
|
@@ -421,7 +423,7 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
|
|
|
421
423
|
salt,
|
|
422
424
|
});
|
|
423
425
|
if (!isValid) {
|
|
424
|
-
return (0,
|
|
426
|
+
return (0, utils_1.failPrepare)(`Salt validation failed for operation ${operationId}. ` +
|
|
425
427
|
`Cached salt ${salt} does not produce the expected operation ID. ` +
|
|
426
428
|
`This may indicate incorrect salt computation during tracking. ` +
|
|
427
429
|
`Override with options.salt if needed.`);
|
|
@@ -431,7 +433,7 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
|
|
|
431
433
|
? await calculateRetryableExecutionValue(timelockAddress, params.target, params.data, provider)
|
|
432
434
|
: null;
|
|
433
435
|
const executionValue = retryableValue ?? params.value;
|
|
434
|
-
const chain = await (0, chain_1.
|
|
436
|
+
const chain = await (0, chain_1.getChain)(provider);
|
|
435
437
|
const calldata = abis_1.timelockInterface.encodeFunctionData("execute", [
|
|
436
438
|
params.target,
|
|
437
439
|
params.value,
|
|
@@ -439,6 +441,7 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
|
|
|
439
441
|
predecessor,
|
|
440
442
|
salt,
|
|
441
443
|
]);
|
|
444
|
+
const chainId = (0, types_1.chainToChainId)(chain) ?? 0;
|
|
442
445
|
return {
|
|
443
446
|
success: true,
|
|
444
447
|
prepared: {
|
|
@@ -446,6 +449,7 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
|
|
|
446
449
|
data: calldata,
|
|
447
450
|
value: executionValue.toString(),
|
|
448
451
|
chain,
|
|
452
|
+
chainId,
|
|
449
453
|
description: `execute() on ${chain} timelock`,
|
|
450
454
|
operationId,
|
|
451
455
|
},
|
|
@@ -457,16 +461,16 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
|
|
|
457
461
|
async function prepareTimelockBatch(timelockAddress, params, operationId, stageData, provider, options = {}) {
|
|
458
462
|
logExecution("Preparing timelock batch %s", operationId);
|
|
459
463
|
if (!params.targets?.length) {
|
|
460
|
-
return (0,
|
|
464
|
+
return (0, utils_1.failPrepare)("Batch must have at least one target");
|
|
461
465
|
}
|
|
462
466
|
if (params.targets.length !== params.values.length ||
|
|
463
467
|
params.targets.length !== params.payloads.length) {
|
|
464
|
-
return (0,
|
|
468
|
+
return (0, utils_1.failPrepare)("Array length mismatch in batch params");
|
|
465
469
|
}
|
|
466
470
|
const salt = getSalt(stageData, options);
|
|
467
471
|
const predecessor = getPredecessor(stageData, options);
|
|
468
472
|
if (!options.prepareCompleted) {
|
|
469
|
-
const stateError = await (0,
|
|
473
|
+
const stateError = await (0, utils_1.checkOperationReady)(timelockAddress, operationId, provider);
|
|
470
474
|
if (stateError)
|
|
471
475
|
return stateError;
|
|
472
476
|
}
|
|
@@ -480,7 +484,7 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
|
|
|
480
484
|
salt,
|
|
481
485
|
});
|
|
482
486
|
if (!isValid) {
|
|
483
|
-
return (0,
|
|
487
|
+
return (0, utils_1.failPrepare)(`Salt validation failed for batch operation ${operationId}. ` +
|
|
484
488
|
`Cached salt ${salt} does not produce the expected operation ID. ` +
|
|
485
489
|
`This may indicate incorrect salt computation during tracking. ` +
|
|
486
490
|
`Override with options.salt if needed.`);
|
|
@@ -491,7 +495,7 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
|
|
|
491
495
|
executionValues = await calculateBatchRetryableValues(timelockAddress, params.targets, params.values, params.payloads, provider);
|
|
492
496
|
}
|
|
493
497
|
const totalValue = executionValues.reduce((acc, v) => acc.add(v), ethers_1.BigNumber.from(0));
|
|
494
|
-
const chain = await (0, chain_1.
|
|
498
|
+
const chain = await (0, chain_1.getChain)(provider);
|
|
495
499
|
const calldata = abis_1.timelockInterface.encodeFunctionData("executeBatch", [
|
|
496
500
|
params.targets,
|
|
497
501
|
params.values,
|
|
@@ -499,6 +503,7 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
|
|
|
499
503
|
predecessor,
|
|
500
504
|
salt,
|
|
501
505
|
]);
|
|
506
|
+
const chainId = (0, types_1.chainToChainId)(chain) ?? 0;
|
|
502
507
|
return {
|
|
503
508
|
success: true,
|
|
504
509
|
prepared: {
|
|
@@ -506,6 +511,7 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
|
|
|
506
511
|
data: calldata,
|
|
507
512
|
value: totalValue.toString(),
|
|
508
513
|
chain,
|
|
514
|
+
chainId,
|
|
509
515
|
description: `executeBatch() on ${chain} timelock`,
|
|
510
516
|
operationId,
|
|
511
517
|
},
|
|
@@ -519,23 +525,26 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
|
|
|
519
525
|
* @param options - Preparation options (can override salt with options.salt)
|
|
520
526
|
*/
|
|
521
527
|
async function prepareTimelockStage(stage, provider, options = {}) {
|
|
522
|
-
const validationError = (0,
|
|
528
|
+
const validationError = (0, utils_1.validateStageForPrepare)(stage, {
|
|
523
529
|
prepareCompleted: options.prepareCompleted,
|
|
524
530
|
});
|
|
525
531
|
if (validationError)
|
|
526
532
|
return validationError;
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
533
|
+
// Get execution payload (for targets, values, payloads)
|
|
534
|
+
const execPayload = (0, utils_1.createTimelockStageData)(stage);
|
|
535
|
+
if (!execPayload) {
|
|
536
|
+
return (0, utils_1.failPrepare)("Stage is not a timelock stage");
|
|
530
537
|
}
|
|
531
|
-
const { timelockAddress, operationId } =
|
|
538
|
+
const { timelockAddress, operationId } = execPayload;
|
|
532
539
|
if (!timelockAddress || !operationId) {
|
|
533
|
-
return (0,
|
|
540
|
+
return (0, utils_1.failPrepare)("Missing timelock address or operation ID");
|
|
534
541
|
}
|
|
535
|
-
const { callScheduledData } =
|
|
542
|
+
const { callScheduledData } = execPayload;
|
|
536
543
|
if (!callScheduledData?.length) {
|
|
537
|
-
return (0,
|
|
544
|
+
return (0, utils_1.failPrepare)("Missing callScheduledData for preparation.");
|
|
538
545
|
}
|
|
546
|
+
// Get full stage data for salt/predecessor (cast - we verified it's a timelock stage)
|
|
547
|
+
const timelockStageData = stage.data;
|
|
539
548
|
const sortedData = [...callScheduledData].sort((a, b) => a.index.toNumber() - b.index.toNumber());
|
|
540
549
|
const targets = sortedData.map((d) => d.target);
|
|
541
550
|
const values = sortedData.map((d) => d.value.toString());
|
|
@@ -544,8 +553,7 @@ async function prepareTimelockStage(stage, provider, options = {}) {
|
|
|
544
553
|
const resolvedPredecessor = options.predecessor ?? predecessor ?? ethers_1.ethers.constants.HashZero;
|
|
545
554
|
// Use cached isBatchOperation to determine which method to use
|
|
546
555
|
// Fallback to count-based logic if not cached
|
|
547
|
-
const
|
|
548
|
-
const useBatch = timelockData.isBatchOperation ?? targets.length > 1;
|
|
556
|
+
const useBatch = timelockStageData.isBatchOperation ?? targets.length > 1;
|
|
549
557
|
if (useBatch) {
|
|
550
558
|
return prepareTimelockBatch(timelockAddress, {
|
|
551
559
|
targets,
|
|
@@ -553,7 +561,7 @@ async function prepareTimelockStage(stage, provider, options = {}) {
|
|
|
553
561
|
payloads,
|
|
554
562
|
predecessor: resolvedPredecessor,
|
|
555
563
|
salt: "",
|
|
556
|
-
}, operationId,
|
|
564
|
+
}, operationId, timelockStageData, provider, options);
|
|
557
565
|
}
|
|
558
566
|
return prepareTimelockOperation(timelockAddress, {
|
|
559
567
|
target: targets[0],
|
|
@@ -561,6 +569,6 @@ async function prepareTimelockStage(stage, provider, options = {}) {
|
|
|
561
569
|
data: payloads[0],
|
|
562
570
|
predecessor: resolvedPredecessor,
|
|
563
571
|
salt: "",
|
|
564
|
-
}, operationId,
|
|
572
|
+
}, operationId, timelockStageData, provider, options);
|
|
565
573
|
}
|
|
566
574
|
//# sourceMappingURL=timelock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timelock.js","sourceRoot":"","sources":["../../src/stages/timelock.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"timelock.js","sourceRoot":"","sources":["../../src/stages/timelock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Stage Utilities
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Consolidated utilities for stage tracking, serialization, and timelock operations.
|
|
5
|
+
* Previously split between stages/base.ts and utils/stage-helpers.ts.
|
|
5
6
|
*/
|
|
6
7
|
import { ethers } from "ethers";
|
|
7
|
-
import { CallScheduledData, PrepareResult, SerializedCallScheduledData, StageType, TrackedStage } from "../types";
|
|
8
|
+
import { CallScheduledData, Chain, OperationState, PrepareResult, SerializedCallScheduledData, StageType, TimelockState, TrackedStage } from "../types";
|
|
8
9
|
/** Generic serializer: converts BigNumber fields to strings for JSON storage. */
|
|
9
10
|
export declare function serialize<T>(data: T, bigNumFields: readonly string[]): T;
|
|
10
11
|
/** Generic deserializer: converts string fields back to BigNumber. */
|
|
@@ -16,27 +17,6 @@ export declare const deserializeCallScheduledData: (data: SerializedCallSchedule
|
|
|
16
17
|
/** Serialize/deserialize arrays. */
|
|
17
18
|
export declare const serializeCallScheduledDataArray: (data: CallScheduledData[]) => SerializedCallScheduledData[];
|
|
18
19
|
export declare const deserializeCallScheduledDataArray: (data: SerializedCallScheduledData[]) => CallScheduledData[];
|
|
19
|
-
/**
|
|
20
|
-
* Calculate ETA from CallScheduled event data
|
|
21
|
-
*
|
|
22
|
-
* ETA = block timestamp + delay seconds
|
|
23
|
-
* This works even when operation is done (contract returns _DONE_TIMESTAMP=1)
|
|
24
|
-
*/
|
|
25
|
-
export declare function calculateEtaFromScheduledData(blockNumber: number, delaySeconds: number, provider: ethers.providers.Provider): Promise<number>;
|
|
26
|
-
/**
|
|
27
|
-
* Check if a proposal is Constitutional (requires L1 round-trip).
|
|
28
|
-
*
|
|
29
|
-
* Constitutional proposals (from Constitutional Governor) go through:
|
|
30
|
-
* L2 Timelock (8 days) → L2→L1 Message → L1 Timelock (3 days) → Retryables
|
|
31
|
-
*
|
|
32
|
-
* Non-Constitutional proposals (from Non-Constitutional Governor) are L2-only:
|
|
33
|
-
* L2 Timelock (3 days) → L2 Execution
|
|
34
|
-
*
|
|
35
|
-
* Also works with timelock addresses for direct timelock entry.
|
|
36
|
-
*
|
|
37
|
-
* @see https://docs.arbitrum.foundation/concepts/lifecycle-anatomy-aip-proposal
|
|
38
|
-
*/
|
|
39
|
-
export declare function isConstitutional(governorOrTimelockAddress: string): boolean;
|
|
40
20
|
/**
|
|
41
21
|
* Get all stages for a governor path
|
|
42
22
|
*
|
|
@@ -65,20 +45,10 @@ export declare function getCurrentStage(stages: TrackedStage[]): TrackedStage |
|
|
|
65
45
|
* Check if all stages are complete
|
|
66
46
|
*/
|
|
67
47
|
export declare function areAllStagesComplete(stages: TrackedStage[]): boolean;
|
|
68
|
-
/**
|
|
69
|
-
* Get block timestamp from provider
|
|
70
|
-
*/
|
|
71
|
-
export declare function getBlockTimestamp(blockNumber: number, provider: ethers.providers.Provider): Promise<number>;
|
|
72
48
|
/**
|
|
73
49
|
* Find first READY stage that's executable
|
|
74
50
|
*/
|
|
75
51
|
export declare function findExecutableStage(stages: TrackedStage[]): TrackedStage | null;
|
|
76
|
-
/** Timelock stage types (consolidated stages that require execution) */
|
|
77
|
-
export declare const TIMELOCK_STAGE_TYPES: readonly ["L2_TIMELOCK", "L1_TIMELOCK"];
|
|
78
|
-
/**
|
|
79
|
-
* Check if a stage type is a timelock stage
|
|
80
|
-
*/
|
|
81
|
-
export declare function isTimelockStage(type: StageType | string): boolean;
|
|
82
52
|
/**
|
|
83
53
|
* Find all READY executable stages
|
|
84
54
|
*/
|
|
@@ -114,6 +84,37 @@ export declare function getTrackingStatusSummary(stages: TrackedStage[]): {
|
|
|
114
84
|
* @returns The operationId if found, undefined otherwise
|
|
115
85
|
*/
|
|
116
86
|
export declare function extractOperationId(stages: TrackedStage[]): string | undefined;
|
|
87
|
+
/**
|
|
88
|
+
* Check if a proposal is Constitutional (requires L1 round-trip).
|
|
89
|
+
*
|
|
90
|
+
* Constitutional proposals (from Constitutional Governor) go through:
|
|
91
|
+
* L2 Timelock (8 days) → L2→L1 Message → L1 Timelock (3 days) → Retryables
|
|
92
|
+
*
|
|
93
|
+
* Non-Constitutional proposals (from Non-Constitutional Governor) are L2-only:
|
|
94
|
+
* L2 Timelock (3 days) → L2 Execution
|
|
95
|
+
*
|
|
96
|
+
* Also works with timelock addresses for direct timelock entry.
|
|
97
|
+
*
|
|
98
|
+
* @see https://docs.arbitrum.foundation/concepts/lifecycle-anatomy-aip-proposal
|
|
99
|
+
*/
|
|
100
|
+
export declare function isConstitutional(governorOrTimelockAddress: string): boolean;
|
|
101
|
+
/** Timelock stage types (consolidated stages that require execution) */
|
|
102
|
+
export declare const TIMELOCK_STAGE_TYPES: readonly ["L2_TIMELOCK", "L1_TIMELOCK"];
|
|
103
|
+
/**
|
|
104
|
+
* Check if a stage type is a timelock stage
|
|
105
|
+
*/
|
|
106
|
+
export declare function isTimelockStage(type: StageType | string): boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Get block timestamp from provider
|
|
109
|
+
*/
|
|
110
|
+
export declare function getBlockTimestamp(blockNumber: number, provider: ethers.providers.Provider): Promise<number>;
|
|
111
|
+
/**
|
|
112
|
+
* Calculate ETA from CallScheduled event data
|
|
113
|
+
*
|
|
114
|
+
* ETA = block timestamp + delay seconds
|
|
115
|
+
* This works even when operation is done (contract returns _DONE_TIMESTAMP=1)
|
|
116
|
+
*/
|
|
117
|
+
export declare function calculateEtaFromScheduledData(blockNumber: number, delaySeconds: number, provider: ethers.providers.Provider): Promise<number>;
|
|
117
118
|
/**
|
|
118
119
|
* Create a failed PrepareResult with an error message.
|
|
119
120
|
* Reduces boilerplate for the common pattern: { success: false, error: "..." }
|
|
@@ -124,4 +125,46 @@ export declare function failPrepare(error: string): PrepareResult;
|
|
|
124
125
|
* Returns null if ready, or an error result if not ready or already executed.
|
|
125
126
|
*/
|
|
126
127
|
export declare function checkOperationReady(timelockAddress: string, operationId: string, provider: ethers.providers.Provider): Promise<PrepareResult | null>;
|
|
127
|
-
|
|
128
|
+
/** Execution payload data for timelock operations. */
|
|
129
|
+
export interface TimelockExecutionPayload {
|
|
130
|
+
timelockAddress: string;
|
|
131
|
+
operationId: string;
|
|
132
|
+
callScheduledData: CallScheduledData[];
|
|
133
|
+
isSecurityCouncilOperation?: boolean;
|
|
134
|
+
securityCouncilMembers?: string[];
|
|
135
|
+
securityCouncilNonce?: string;
|
|
136
|
+
}
|
|
137
|
+
/** Extract timelock execution payload from a stage. */
|
|
138
|
+
export declare function createTimelockStageData(stage: TrackedStage): TimelockExecutionPayload | null;
|
|
139
|
+
/** Collect all CallScheduledData from a timelock state. */
|
|
140
|
+
export declare function collectAllScheduledData(timelockState: TimelockState): CallScheduledData[];
|
|
141
|
+
/** Calculate ETA for a timelock operation. */
|
|
142
|
+
export declare function calculateTimelockEta(timelockState: TimelockState, operationState: OperationState, provider: ethers.providers.Provider): Promise<number | undefined>;
|
|
143
|
+
/** Build serialized execution payload data for stage storage. */
|
|
144
|
+
export declare function buildExecutionPayloadData(timelockAddress: string, operationId: string, allScheduledData: CallScheduledData[]): Record<string, unknown>;
|
|
145
|
+
export interface PrepareValidationOptions {
|
|
146
|
+
prepareCompleted?: boolean;
|
|
147
|
+
expectedTypes?: StageType[];
|
|
148
|
+
}
|
|
149
|
+
/** Validate stage for preparation. Returns error or null if valid. */
|
|
150
|
+
export declare function validateStageForPrepare(stage: TrackedStage, options?: PrepareValidationOptions): PrepareResult | null;
|
|
151
|
+
export interface BulkPrepareResult<T extends Chain = Chain> {
|
|
152
|
+
total: number;
|
|
153
|
+
results: PrepareResult[];
|
|
154
|
+
targetChain: T;
|
|
155
|
+
}
|
|
156
|
+
export interface SimpleBulkResult {
|
|
157
|
+
total: number;
|
|
158
|
+
results: PrepareResult[];
|
|
159
|
+
}
|
|
160
|
+
export declare function bulkPrepareError<T extends Chain>(error: string, targetChain: T): BulkPrepareResult<T>;
|
|
161
|
+
export declare function simpleBulkError(error: string): SimpleBulkResult;
|
|
162
|
+
export declare function validateStageForBulkPrepare<T extends Chain>(stage: TrackedStage, targetChain: T, options?: PrepareValidationOptions): BulkPrepareResult<T> | null;
|
|
163
|
+
export declare function validateStageForSimpleBulk(stage: TrackedStage, options?: PrepareValidationOptions): SimpleBulkResult | null;
|
|
164
|
+
/** Search for timelock execution event and complete stage. */
|
|
165
|
+
export declare function searchAndCompleteTimelockExecution(stage: TrackedStage, timelockAddress: string, operationId: string, provider: ethers.providers.Provider, chain: Chain, fromBlock: number, toBlock?: number, queueTimestamp?: number): Promise<{
|
|
166
|
+
stage: TrackedStage;
|
|
167
|
+
executionTxHash: string | null;
|
|
168
|
+
executionBlock: number | null;
|
|
169
|
+
}>;
|
|
170
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/stages/utils.ts"],"names":[],"mappings":"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"}
|