@gzeoneth/gov-tracker 0.4.0-beta.fb8713f → 0.5.0

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.
Files changed (197) hide show
  1. package/README.md +94 -7
  2. package/dist/abis-json.d.ts +2315 -0
  3. package/dist/abis-json.d.ts.map +1 -0
  4. package/dist/abis-json.js +3207 -0
  5. package/dist/abis-json.js.map +1 -0
  6. package/dist/abis.d.ts +12 -7
  7. package/dist/abis.d.ts.map +1 -1
  8. package/dist/abis.js +32 -1
  9. package/dist/abis.js.map +1 -1
  10. package/dist/calldata/parameter-decoder.d.ts.map +1 -1
  11. package/dist/calldata/parameter-decoder.js +19 -25
  12. package/dist/calldata/parameter-decoder.js.map +1 -1
  13. package/dist/cli/cli.js +73 -1
  14. package/dist/cli/cli.js.map +1 -1
  15. package/dist/cli/lib/cli.d.ts.map +1 -1
  16. package/dist/cli/lib/cli.js +3 -2
  17. package/dist/cli/lib/cli.js.map +1 -1
  18. package/dist/cli/lib/election-check.d.ts.map +1 -1
  19. package/dist/cli/lib/election-check.js +2 -1
  20. package/dist/cli/lib/election-check.js.map +1 -1
  21. package/dist/cli/tui/components/VotingStats.d.ts.map +1 -1
  22. package/dist/cli/tui/components/VotingStats.js +2 -1
  23. package/dist/cli/tui/components/VotingStats.js.map +1 -1
  24. package/dist/cli/tui/hooks/useNavigation.d.ts.map +1 -1
  25. package/dist/cli/tui/hooks/useNavigation.js +2 -3
  26. package/dist/cli/tui/hooks/useNavigation.js.map +1 -1
  27. package/dist/cli/tui/hooks/useProposals.js +2 -2
  28. package/dist/cli/tui/hooks/useProposals.js.map +1 -1
  29. package/dist/cli/tui/utils/index.d.ts +2 -2
  30. package/dist/cli/tui/utils/index.d.ts.map +1 -1
  31. package/dist/cli/tui/utils/index.js +5 -1
  32. package/dist/cli/tui/utils/index.js.map +1 -1
  33. package/dist/cli/tui/utils/navigation.d.ts +1 -0
  34. package/dist/cli/tui/utils/navigation.d.ts.map +1 -1
  35. package/dist/cli/tui/utils/navigation.js +4 -4
  36. package/dist/cli/tui/utils/navigation.js.map +1 -1
  37. package/dist/cli/tui/utils/stage-status.d.ts +4 -0
  38. package/dist/cli/tui/utils/stage-status.d.ts.map +1 -1
  39. package/dist/cli/tui/utils/stage-status.js +47 -1
  40. package/dist/cli/tui/utils/stage-status.js.map +1 -1
  41. package/dist/cli/tui/views/CalldataView.d.ts.map +1 -1
  42. package/dist/cli/tui/views/CalldataView.js +3 -2
  43. package/dist/cli/tui/views/CalldataView.js.map +1 -1
  44. package/dist/cli/tui/views/ElectionView.d.ts.map +1 -1
  45. package/dist/cli/tui/views/ElectionView.js +4 -9
  46. package/dist/cli/tui/views/ElectionView.js.map +1 -1
  47. package/dist/constants.d.ts +43 -22
  48. package/dist/constants.d.ts.map +1 -1
  49. package/dist/constants.js +62 -17
  50. package/dist/constants.js.map +1 -1
  51. package/dist/data/bundled-cache.json +393 -20
  52. package/dist/data/delegate-cache.json +118014 -0
  53. package/dist/deduplication.d.ts.map +1 -1
  54. package/dist/deduplication.js +28 -51
  55. package/dist/deduplication.js.map +1 -1
  56. package/dist/delegates/cache.d.ts +44 -0
  57. package/dist/delegates/cache.d.ts.map +1 -0
  58. package/dist/delegates/cache.js +202 -0
  59. package/dist/delegates/cache.js.map +1 -0
  60. package/dist/delegates/index.d.ts +13 -0
  61. package/dist/delegates/index.d.ts.map +1 -0
  62. package/dist/delegates/index.js +32 -0
  63. package/dist/delegates/index.js.map +1 -0
  64. package/dist/delegates/indexer.d.ts +32 -0
  65. package/dist/delegates/indexer.d.ts.map +1 -0
  66. package/dist/delegates/indexer.js +191 -0
  67. package/dist/delegates/indexer.js.map +1 -0
  68. package/dist/delegates/queries.d.ts +30 -0
  69. package/dist/delegates/queries.d.ts.map +1 -0
  70. package/dist/delegates/queries.js +79 -0
  71. package/dist/delegates/queries.js.map +1 -0
  72. package/dist/discovery/governor-discovery.d.ts +21 -1
  73. package/dist/discovery/governor-discovery.d.ts.map +1 -1
  74. package/dist/discovery/governor-discovery.js +46 -12
  75. package/dist/discovery/governor-discovery.js.map +1 -1
  76. package/dist/discovery/timelock-discovery.d.ts.map +1 -1
  77. package/dist/discovery/timelock-discovery.js +1 -2
  78. package/dist/discovery/timelock-discovery.js.map +1 -1
  79. package/dist/election/details.d.ts.map +1 -1
  80. package/dist/election/details.js +2 -2
  81. package/dist/election/details.js.map +1 -1
  82. package/dist/election/index.d.ts +3 -1
  83. package/dist/election/index.d.ts.map +1 -1
  84. package/dist/election/index.js +12 -1
  85. package/dist/election/index.js.map +1 -1
  86. package/dist/election/params.d.ts.map +1 -1
  87. package/dist/election/params.js +11 -16
  88. package/dist/election/params.js.map +1 -1
  89. package/dist/election/proposal-ids.js +2 -2
  90. package/dist/election/proposal-ids.js.map +1 -1
  91. package/dist/election/status.d.ts +28 -1
  92. package/dist/election/status.d.ts.map +1 -1
  93. package/dist/election/status.js +110 -3
  94. package/dist/election/status.js.map +1 -1
  95. package/dist/election/write.d.ts +132 -0
  96. package/dist/election/write.d.ts.map +1 -0
  97. package/dist/election/write.js +184 -0
  98. package/dist/election/write.js.map +1 -0
  99. package/dist/governance/index.d.ts +5 -0
  100. package/dist/governance/index.d.ts.map +1 -0
  101. package/dist/governance/index.js +28 -0
  102. package/dist/governance/index.js.map +1 -0
  103. package/dist/governance/read.d.ts +50 -0
  104. package/dist/governance/read.d.ts.map +1 -0
  105. package/dist/governance/read.js +194 -0
  106. package/dist/governance/read.js.map +1 -0
  107. package/dist/governance/write.d.ts +54 -0
  108. package/dist/governance/write.d.ts.map +1 -0
  109. package/dist/governance/write.js +132 -0
  110. package/dist/governance/write.js.map +1 -0
  111. package/dist/index.d.ts +40 -21
  112. package/dist/index.d.ts.map +1 -1
  113. package/dist/index.js +149 -13
  114. package/dist/index.js.map +1 -1
  115. package/dist/simulation/index.d.ts +4 -1
  116. package/dist/simulation/index.d.ts.map +1 -1
  117. package/dist/simulation/index.js +5 -1
  118. package/dist/simulation/index.js.map +1 -1
  119. package/dist/simulation/simulation-data.d.ts +31 -0
  120. package/dist/simulation/simulation-data.d.ts.map +1 -1
  121. package/dist/simulation/simulation-data.js +34 -0
  122. package/dist/simulation/simulation-data.js.map +1 -1
  123. package/dist/simulation/tenderly-payloads.d.ts +107 -0
  124. package/dist/simulation/tenderly-payloads.d.ts.map +1 -0
  125. package/dist/simulation/tenderly-payloads.js +103 -0
  126. package/dist/simulation/tenderly-payloads.js.map +1 -0
  127. package/dist/stages/l2-to-l1-message.d.ts.map +1 -1
  128. package/dist/stages/l2-to-l1-message.js +40 -60
  129. package/dist/stages/l2-to-l1-message.js.map +1 -1
  130. package/dist/stages/proposal-queued.js.map +1 -1
  131. package/dist/stages/retryables.js.map +1 -1
  132. package/dist/stages/timelock.d.ts +41 -3
  133. package/dist/stages/timelock.d.ts.map +1 -1
  134. package/dist/stages/timelock.js +159 -48
  135. package/dist/stages/timelock.js.map +1 -1
  136. package/dist/stages/utils.d.ts +56 -1
  137. package/dist/stages/utils.d.ts.map +1 -1
  138. package/dist/stages/utils.js +144 -28
  139. package/dist/stages/utils.js.map +1 -1
  140. package/dist/tracker/bundled-cache.d.ts +136 -0
  141. package/dist/tracker/bundled-cache.d.ts.map +1 -0
  142. package/dist/tracker/bundled-cache.js +207 -0
  143. package/dist/tracker/bundled-cache.js.map +1 -0
  144. package/dist/tracker/checkpoint-helpers.d.ts +18 -0
  145. package/dist/tracker/checkpoint-helpers.d.ts.map +1 -1
  146. package/dist/tracker/checkpoint-helpers.js +37 -0
  147. package/dist/tracker/checkpoint-helpers.js.map +1 -1
  148. package/dist/tracker/discovery.d.ts +3 -0
  149. package/dist/tracker/discovery.d.ts.map +1 -1
  150. package/dist/tracker/discovery.js +3 -0
  151. package/dist/tracker/discovery.js.map +1 -1
  152. package/dist/tracker/pipeline.d.ts +3 -10
  153. package/dist/tracker/pipeline.d.ts.map +1 -1
  154. package/dist/tracker/pipeline.js +18 -32
  155. package/dist/tracker/pipeline.js.map +1 -1
  156. package/dist/tracker.d.ts +27 -4
  157. package/dist/tracker.d.ts.map +1 -1
  158. package/dist/tracker.js +47 -14
  159. package/dist/tracker.js.map +1 -1
  160. package/dist/types/config.d.ts +39 -3
  161. package/dist/types/config.d.ts.map +1 -1
  162. package/dist/types/delegates.d.ts +55 -0
  163. package/dist/types/delegates.d.ts.map +1 -0
  164. package/dist/types/delegates.js +9 -0
  165. package/dist/types/delegates.js.map +1 -0
  166. package/dist/types/election.d.ts +23 -0
  167. package/dist/types/election.d.ts.map +1 -1
  168. package/dist/types/index.d.ts +3 -2
  169. package/dist/types/index.d.ts.map +1 -1
  170. package/dist/types/index.js.map +1 -1
  171. package/dist/types/tracking.d.ts +2 -2
  172. package/dist/types/tracking.d.ts.map +1 -1
  173. package/dist/utils/chain.d.ts +5 -1
  174. package/dist/utils/chain.d.ts.map +1 -1
  175. package/dist/utils/chain.js +7 -0
  176. package/dist/utils/chain.js.map +1 -1
  177. package/dist/utils/formatters.d.ts +2 -6
  178. package/dist/utils/formatters.d.ts.map +1 -1
  179. package/dist/utils/formatters.js +9 -12
  180. package/dist/utils/formatters.js.map +1 -1
  181. package/dist/utils/logger.d.ts +2 -0
  182. package/dist/utils/logger.d.ts.map +1 -1
  183. package/dist/utils/logger.js +2 -0
  184. package/dist/utils/logger.js.map +1 -1
  185. package/dist/utils/rpc-utils.d.ts +0 -6
  186. package/dist/utils/rpc-utils.d.ts.map +1 -1
  187. package/dist/utils/rpc-utils.js +0 -9
  188. package/dist/utils/rpc-utils.js.map +1 -1
  189. package/dist/utils/stage-metadata.d.ts +19 -0
  190. package/dist/utils/stage-metadata.d.ts.map +1 -1
  191. package/dist/utils/stage-metadata.js +44 -0
  192. package/dist/utils/stage-metadata.js.map +1 -1
  193. package/dist/utils/timing.d.ts +2 -9
  194. package/dist/utils/timing.d.ts.map +1 -1
  195. package/dist/utils/timing.js +3 -20
  196. package/dist/utils/timing.js.map +1 -1
  197. package/package.json +7 -3
@@ -15,6 +15,9 @@ exports.calculateBatchRetryableValues = calculateBatchRetryableValues;
15
15
  exports.prepareTimelockOperation = prepareTimelockOperation;
16
16
  exports.prepareTimelockBatch = prepareTimelockBatch;
17
17
  exports.prepareTimelockStage = prepareTimelockStage;
18
+ exports.prepareExecuteTimelock = prepareExecuteTimelock;
19
+ exports.prepareTimelockExecuteCalldata = prepareTimelockExecuteCalldata;
20
+ exports.prepareTimelockBatchCalldata = prepareTimelockBatchCalldata;
18
21
  const ethers_1 = require("ethers");
19
22
  const types_1 = require("../types");
20
23
  const timelock_discovery_1 = require("../discovery/timelock-discovery");
@@ -371,8 +374,7 @@ async function trackL1Timelock(l1Provider, options = {}) {
371
374
  * Calculate retryable execution value for L1 timelock operations.
372
375
  * @param gasPrice - Optional pre-fetched gas price to avoid redundant RPC calls in batch
373
376
  */
374
- async function calculateRetryableExecutionValue(timelockAddress, target, data, provider, gasPrice) {
375
- void timelockAddress;
377
+ async function calculateRetryableExecutionValue(target, data, provider, gasPrice) {
376
378
  if (!(0, chain_1.addressEquals)(target, constants_1.ADDRESSES.RETRYABLE_TICKET_MAGIC)) {
377
379
  return null;
378
380
  }
@@ -398,37 +400,40 @@ async function calculateRetryableExecutionValue(timelockAddress, target, data, p
398
400
  * Calculate batch retryable values for L1 timelock.
399
401
  * Fetches gas price once and reuses for all retryable calculations.
400
402
  */
401
- async function calculateBatchRetryableValues(timelockAddress, targets, values, payloads, provider) {
403
+ async function calculateBatchRetryableValues(targets, values, payloads, provider) {
402
404
  // Fetch gas price once for the entire batch
403
405
  const gasPrice = await (0, rpc_utils_1.queryWithRetry)(() => provider.getGasPrice());
404
- const results = await Promise.all(targets.map((target, i) => calculateRetryableExecutionValue(timelockAddress, target, payloads[i], provider, gasPrice)));
406
+ const results = await Promise.all(targets.map((target, i) => calculateRetryableExecutionValue(target, payloads[i], provider, gasPrice)));
405
407
  return results.map((retryableValue, i) => retryableValue ?? values[i]);
406
408
  }
407
409
  /**
408
- * Helper: Get salt from cached stage data or user override
410
+ * Shared pre-checks for timelock prepare functions.
411
+ * Returns salt, predecessor, and any early error result.
409
412
  */
410
- function getSalt(stageData, options) {
411
- return options.salt ?? stageData.salt ?? ethers_1.ethers.constants.HashZero;
413
+ async function timelockPreparePreChecks(timelockAddress, operationId, stageData, provider, options) {
414
+ const salt = options.salt ?? stageData.salt ?? ethers_1.ethers.constants.HashZero;
415
+ const predecessor = options.predecessor ?? stageData.predecessor ?? ethers_1.ethers.constants.HashZero;
416
+ if (!options.prepareCompleted) {
417
+ const stateError = await (0, utils_1.checkOperationReady)(timelockAddress, operationId, provider);
418
+ if (stateError)
419
+ return { salt, predecessor, error: stateError };
420
+ }
421
+ return { salt, predecessor };
412
422
  }
413
- /**
414
- * Helper: Get predecessor from cached stage data or user override
415
- */
416
- function getPredecessor(stageData, options) {
417
- return options.predecessor ?? stageData.predecessor ?? ethers_1.ethers.constants.HashZero;
423
+ function saltValidationError(operationId, salt, label = "operation") {
424
+ return (0, utils_1.failPrepare)(`Salt validation failed for ${label} ${operationId}. ` +
425
+ `Cached salt ${salt} does not produce the expected operation ID. ` +
426
+ `This may indicate incorrect salt computation during tracking. ` +
427
+ `Override with options.salt if needed.`);
418
428
  }
419
429
  /**
420
430
  * Prepare a single timelock operation for execution.
421
431
  */
422
432
  async function prepareTimelockOperation(timelockAddress, params, operationId, stageData, provider, options = {}) {
423
433
  logExecution("Preparing timelock operation %s", operationId);
424
- const salt = getSalt(stageData, options);
425
- const predecessor = getPredecessor(stageData, options);
426
- if (!options.prepareCompleted) {
427
- const stateError = await (0, utils_1.checkOperationReady)(timelockAddress, operationId, provider);
428
- if (stateError)
429
- return stateError;
430
- }
431
- // Validate the cached salt (unless skipped)
434
+ const { salt, predecessor, error } = await timelockPreparePreChecks(timelockAddress, operationId, stageData, provider, options);
435
+ if (error)
436
+ return error;
432
437
  if (!options.skipSaltValidation) {
433
438
  const isValid = (0, operation_id_1.validateSalt)(operationId, {
434
439
  target: params.target,
@@ -437,15 +442,11 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
437
442
  predecessor,
438
443
  salt,
439
444
  });
440
- if (!isValid) {
441
- return (0, utils_1.failPrepare)(`Salt validation failed for operation ${operationId}. ` +
442
- `Cached salt ${salt} does not produce the expected operation ID. ` +
443
- `This may indicate incorrect salt computation during tracking. ` +
444
- `Override with options.salt if needed.`);
445
- }
445
+ if (!isValid)
446
+ return saltValidationError(operationId, salt);
446
447
  }
447
448
  const retryableValue = !options.skipRetryableValueCalculation
448
- ? await calculateRetryableExecutionValue(timelockAddress, params.target, params.data, provider)
449
+ ? await calculateRetryableExecutionValue(params.target, params.data, provider)
449
450
  : null;
450
451
  const executionValue = retryableValue ?? params.value;
451
452
  const chain = await (0, chain_1.getChain)(provider);
@@ -456,7 +457,6 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
456
457
  predecessor,
457
458
  salt,
458
459
  ]);
459
- const chainId = (0, types_1.chainToChainId)(chain);
460
460
  return {
461
461
  success: true,
462
462
  prepared: {
@@ -464,7 +464,7 @@ async function prepareTimelockOperation(timelockAddress, params, operationId, st
464
464
  data: calldata,
465
465
  value: executionValue.toString(),
466
466
  chain,
467
- chainId,
467
+ chainId: (0, types_1.chainToChainId)(chain),
468
468
  description: `execute() on ${chain} timelock`,
469
469
  operationId,
470
470
  },
@@ -482,14 +482,9 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
482
482
  params.targets.length !== params.payloads.length) {
483
483
  return (0, utils_1.failPrepare)("Array length mismatch in batch params");
484
484
  }
485
- const salt = getSalt(stageData, options);
486
- const predecessor = getPredecessor(stageData, options);
487
- if (!options.prepareCompleted) {
488
- const stateError = await (0, utils_1.checkOperationReady)(timelockAddress, operationId, provider);
489
- if (stateError)
490
- return stateError;
491
- }
492
- // Validate the cached salt (unless skipped)
485
+ const { salt, predecessor, error } = await timelockPreparePreChecks(timelockAddress, operationId, stageData, provider, options);
486
+ if (error)
487
+ return error;
493
488
  if (!options.skipSaltValidation) {
494
489
  const isValid = (0, operation_id_1.validateSaltBatch)(operationId, {
495
490
  targets: params.targets,
@@ -498,16 +493,12 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
498
493
  predecessor,
499
494
  salt,
500
495
  });
501
- if (!isValid) {
502
- return (0, utils_1.failPrepare)(`Salt validation failed for batch operation ${operationId}. ` +
503
- `Cached salt ${salt} does not produce the expected operation ID. ` +
504
- `This may indicate incorrect salt computation during tracking. ` +
505
- `Override with options.salt if needed.`);
506
- }
496
+ if (!isValid)
497
+ return saltValidationError(operationId, salt, "batch operation");
507
498
  }
508
499
  let executionValues = params.values;
509
500
  if (!options.skipRetryableValueCalculation) {
510
- executionValues = await calculateBatchRetryableValues(timelockAddress, params.targets, params.values, params.payloads, provider);
501
+ executionValues = await calculateBatchRetryableValues(params.targets, params.values, params.payloads, provider);
511
502
  }
512
503
  const totalValue = executionValues.reduce((acc, v) => acc.add(v), ethers_1.BigNumber.from(0));
513
504
  const chain = await (0, chain_1.getChain)(provider);
@@ -518,7 +509,6 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
518
509
  predecessor,
519
510
  salt,
520
511
  ]);
521
- const chainId = (0, types_1.chainToChainId)(chain);
522
512
  return {
523
513
  success: true,
524
514
  prepared: {
@@ -526,7 +516,7 @@ async function prepareTimelockBatch(timelockAddress, params, operationId, stageD
526
516
  data: calldata,
527
517
  value: totalValue.toString(),
528
518
  chain,
529
- chainId,
519
+ chainId: (0, types_1.chainToChainId)(chain),
530
520
  description: `executeBatch() on ${chain} timelock`,
531
521
  operationId,
532
522
  },
@@ -560,8 +550,7 @@ async function prepareTimelockStage(stage, provider, options = {}) {
560
550
  }
561
551
  // Get full stage data for salt/predecessor (cast - we verified it's a timelock stage)
562
552
  const timelockStageData = stage.data;
563
- // Sort by index (use BigNumber methods to avoid overflow)
564
- const sortedData = [...callScheduledData].sort((a, b) => a.index.lt(b.index) ? -1 : a.index.gt(b.index) ? 1 : 0);
553
+ const sortedData = [...callScheduledData].sort((a, b) => (0, chain_1.compareBigNumbers)(a.index, b.index));
565
554
  const targets = sortedData.map((d) => d.target);
566
555
  const values = sortedData.map((d) => d.value.toString());
567
556
  const payloads = sortedData.map((d) => d.data);
@@ -587,4 +576,126 @@ async function prepareTimelockStage(stage, provider, options = {}) {
587
576
  salt: "",
588
577
  }, operationId, timelockStageData, provider, options);
589
578
  }
579
+ /**
580
+ * Standalone timelock execution preparation.
581
+ *
582
+ * Unlike `prepareTimelockStage` (which requires a `TrackedStage` from the
583
+ * tracking pipeline), this function queries the chain directly given only
584
+ * an address, operation ID, and salt.
585
+ *
586
+ * @param timelockAddress - The timelock contract address
587
+ * @param operationId - The bytes32 operation ID
588
+ * @param salt - The bytes32 salt used when the operation was scheduled
589
+ * @param provider - Provider for the chain where the timelock is deployed
590
+ * @param options - Standard prepare options plus optional fromBlock hint
591
+ */
592
+ async function prepareExecuteTimelock(timelockAddress, operationId, salt, provider, options = {}) {
593
+ logExecution("prepareExecuteTimelock %s on %s", operationId, timelockAddress);
594
+ const operationState = await (0, timelock_discovery_1.getTimelockOperationState)(timelockAddress, operationId, provider);
595
+ if (!operationState.isOperation) {
596
+ return (0, utils_1.failPrepare)(`Operation ${operationId} not found on timelock ${timelockAddress}`);
597
+ }
598
+ if (!options.prepareCompleted && !operationState.isReady) {
599
+ return (0, utils_1.failPrepare)(`Operation ${operationId} is not ready for execution (state: ${operationState.state})`);
600
+ }
601
+ const timelockState = await (0, timelock_discovery_1.getTimelockState)(timelockAddress, operationId, provider, {
602
+ fromBlock: options.fromBlock ?? 0,
603
+ skipExecutedSearch: true,
604
+ contractState: operationState,
605
+ });
606
+ const allData = (0, utils_1.collectAllScheduledData)(timelockState);
607
+ if (allData.length === 0) {
608
+ return (0, utils_1.failPrepare)(`No CallScheduled events found for operation ${operationId}`);
609
+ }
610
+ const sorted = [...allData].sort((a, b) => (0, chain_1.compareBigNumbers)(a.index, b.index));
611
+ const predecessor = options.predecessor ?? sorted[0].predecessor ?? ethers_1.ethers.constants.HashZero;
612
+ const targets = sorted.map((d) => d.target);
613
+ const values = sorted.map((d) => d.value);
614
+ const payloads = sorted.map((d) => d.data);
615
+ const stageData = {
616
+ operationId,
617
+ timelockAddress,
618
+ salt,
619
+ predecessor,
620
+ callScheduledData: (0, utils_1.serializeCallScheduledDataArray)(sorted),
621
+ };
622
+ const isBatch = (0, operation_id_1.validateSaltBatch)(operationId, {
623
+ targets,
624
+ values,
625
+ payloads,
626
+ predecessor,
627
+ salt,
628
+ });
629
+ if (isBatch) {
630
+ return prepareTimelockBatch(timelockAddress, { targets, values, payloads, predecessor, salt: "" }, operationId, stageData, provider, { ...options, salt });
631
+ }
632
+ const isSingle = (0, operation_id_1.validateSalt)(operationId, {
633
+ target: targets[0],
634
+ value: values[0],
635
+ data: payloads[0],
636
+ predecessor,
637
+ salt,
638
+ });
639
+ if (!isSingle) {
640
+ return saltValidationError(operationId, salt);
641
+ }
642
+ return prepareTimelockOperation(timelockAddress, { target: targets[0], value: values[0], data: payloads[0], predecessor, salt: "" }, operationId, stageData, provider, { ...options, salt });
643
+ }
644
+ /**
645
+ * Pure calldata encoding for timelock execution — no provider needed.
646
+ *
647
+ * Use this when the consumer already has operation params from the tracking
648
+ * pipeline and just needs the encoded transaction. Analogous to
649
+ * `prepareCastVote` but for timelocks.
650
+ *
651
+ * @param timelockAddress - The timelock contract address
652
+ * @param params - Single operation params (target, value, data, predecessor, salt)
653
+ * @param operationId - The bytes32 operation ID (included in result metadata)
654
+ * @param chainId - Chain ID (default: 42161)
655
+ */
656
+ function prepareTimelockExecuteCalldata(timelockAddress, params, operationId, chainId = constants_1.CHAIN_IDS.ARB_ONE) {
657
+ const calldata = abis_1.timelockInterface.encodeFunctionData("execute", [
658
+ params.target,
659
+ params.value,
660
+ params.data,
661
+ params.predecessor,
662
+ params.salt,
663
+ ]);
664
+ return {
665
+ to: timelockAddress,
666
+ data: calldata,
667
+ value: params.value.toString(),
668
+ chain: (0, types_1.chainIdToChain)(chainId),
669
+ chainId,
670
+ description: `execute() on timelock`,
671
+ operationId,
672
+ };
673
+ }
674
+ /**
675
+ * Pure calldata encoding for batch timelock execution — no provider needed.
676
+ *
677
+ * @param timelockAddress - The timelock contract address
678
+ * @param params - Batch operation params (targets, values, payloads, predecessor, salt)
679
+ * @param operationId - The bytes32 operation ID
680
+ * @param chainId - Chain ID (default: 42161)
681
+ */
682
+ function prepareTimelockBatchCalldata(timelockAddress, params, operationId, chainId = constants_1.CHAIN_IDS.ARB_ONE) {
683
+ const calldata = abis_1.timelockInterface.encodeFunctionData("executeBatch", [
684
+ params.targets,
685
+ params.values,
686
+ params.payloads,
687
+ params.predecessor,
688
+ params.salt,
689
+ ]);
690
+ const totalValue = params.values.reduce((acc, v) => acc.add(v), ethers_1.BigNumber.from(0));
691
+ return {
692
+ to: timelockAddress,
693
+ data: calldata,
694
+ value: totalValue.toString(),
695
+ chain: (0, types_1.chainIdToChain)(chainId),
696
+ chainId,
697
+ description: `executeBatch() on timelock`,
698
+ operationId,
699
+ };
700
+ }
590
701
  //# 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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"}
@@ -25,7 +25,7 @@ export type TrackingPath = "governor" | "timelock" | "election";
25
25
  * Get stage types for a tracking path.
26
26
  * @param path - The tracking path type: "governor", "timelock", or "election"
27
27
  */
28
- export declare function getStagesForTrackingPath(path: TrackingPath): StageType[];
28
+ export declare function getStagesForTrackingPath(path: TrackingPath): readonly StageType[];
29
29
  /** Get chain for a stage type (L1 stages run on ethereum, others on arb1) */
30
30
  export declare const getChainForStage: (type: StageType) => Chain;
31
31
  export declare function initializeStagesForTrackingPath(path: TrackingPath): TrackedStage[];
@@ -47,6 +47,31 @@ export declare function splitStages(stages: TrackedStage[]): {
47
47
  parentStages: TrackedStage[];
48
48
  timelockStages: TrackedStage[];
49
49
  };
50
+ /**
51
+ * Merge stages from different sources into a single array.
52
+ *
53
+ * Useful for combining stages from a governor proposal checkpoint
54
+ * with its linked timelock checkpoint into a unified timeline.
55
+ *
56
+ * When duplicates exist (same type), prefers the stage with more progress:
57
+ * 1. Higher status priority (COMPLETED > READY > PENDING > NOT_STARTED)
58
+ * 2. More transactions recorded
59
+ *
60
+ * @param primaryStages - Primary stage array (typically from governor/election)
61
+ * @param secondaryStages - Secondary stages to merge (typically from timelock)
62
+ * @returns Merged array with duplicates resolved
63
+ */
64
+ export declare function mergeStages(primaryStages: TrackedStage[], secondaryStages: TrackedStage[]): TrackedStage[];
65
+ /**
66
+ * Normalize stages into canonical pipeline order.
67
+ *
68
+ * Sorts stages by their natural execution order in the governance pipeline.
69
+ * Useful after merging stages from multiple sources.
70
+ *
71
+ * @param stages - Array of stages in any order
72
+ * @returns Stages sorted in canonical order
73
+ */
74
+ export declare function normalizeTimeline(stages: TrackedStage[]): TrackedStage[];
50
75
  /**
51
76
  * Check if stages have any timelock progress (for determining if we need linked checkpoint).
52
77
  * Returns true if any timelock path stage has been started.
@@ -105,6 +130,36 @@ export declare function getTrackingStatusSummary(stages: TrackedStage[]): {
105
130
  failed: number;
106
131
  skipped: number;
107
132
  };
133
+ /**
134
+ * Lifecycle phase representing where a proposal or timelock operation is now.
135
+ *
136
+ * Phases describe what's currently happening:
137
+ * - `voting` - Active voting period
138
+ * - `queued` - Passed voting, entering timelock execution
139
+ * - `l2_delay` - Waiting for L2 timelock delay
140
+ * - `bridging` - L2→L1 message in transit
141
+ * - `l1_delay` - Waiting for L1 timelock delay
142
+ * - `finalizing` - Retryable tickets pending execution
143
+ * - `executed` - Complete
144
+ * - `failed` - Failed at some stage
145
+ * - `unknown` - Cannot determine phase
146
+ */
147
+ export type LifecyclePhase = "voting" | "queued" | "l2_delay" | "bridging" | "l1_delay" | "finalizing" | "executed" | "failed" | "unknown";
148
+ /**
149
+ * Get the current lifecycle phase from tracked stages.
150
+ *
151
+ * @param stages - Array of tracked stages
152
+ * @returns The current lifecycle phase
153
+ *
154
+ * @example
155
+ * ```typescript
156
+ * const phase = getLifecyclePhase(result.stages);
157
+ * if (phase === "l1_delay") {
158
+ * console.log("Waiting for L1 timelock delay...");
159
+ * }
160
+ * ```
161
+ */
162
+ export declare function getLifecyclePhase(stages: TrackedStage[]): LifecyclePhase;
108
163
  /**
109
164
  * Extract the operationId from tracked stages.
110
165
  *
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/stages/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/stages/utils.ts"],"names":[],"mappings":"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"}