@aztec/ethereum 0.0.1-commit.6c91f13 → 0.0.1-commit.7d4e6cd

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 (56) hide show
  1. package/dest/contracts/fee_asset_handler.d.ts +6 -5
  2. package/dest/contracts/fee_asset_handler.d.ts.map +1 -1
  3. package/dest/contracts/fee_asset_handler.js +9 -9
  4. package/dest/contracts/governance_proposer.js +382 -8
  5. package/dest/contracts/index.d.ts +2 -1
  6. package/dest/contracts/index.d.ts.map +1 -1
  7. package/dest/contracts/index.js +1 -0
  8. package/dest/contracts/outbox.d.ts +41 -0
  9. package/dest/contracts/outbox.d.ts.map +1 -0
  10. package/dest/contracts/outbox.js +86 -0
  11. package/dest/contracts/rollup.d.ts +128 -95
  12. package/dest/contracts/rollup.d.ts.map +1 -1
  13. package/dest/contracts/rollup.js +602 -127
  14. package/dest/deploy_aztec_l1_contracts.d.ts +10 -2
  15. package/dest/deploy_aztec_l1_contracts.d.ts.map +1 -1
  16. package/dest/deploy_aztec_l1_contracts.js +60 -11
  17. package/dest/l1_artifacts.d.ts +3512 -1082
  18. package/dest/l1_artifacts.d.ts.map +1 -1
  19. package/dest/l1_tx_utils/fee-strategies/index.d.ts +3 -2
  20. package/dest/l1_tx_utils/fee-strategies/index.d.ts.map +1 -1
  21. package/dest/l1_tx_utils/fee-strategies/index.js +2 -1
  22. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts +2 -12
  23. package/dest/l1_tx_utils/fee-strategies/p75_competitive.d.ts.map +1 -1
  24. package/dest/l1_tx_utils/fee-strategies/p75_competitive.js +35 -17
  25. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts +2 -11
  26. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.d.ts.map +1 -1
  27. package/dest/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.js +36 -18
  28. package/dest/l1_tx_utils/fee-strategies/types.d.ts +14 -27
  29. package/dest/l1_tx_utils/fee-strategies/types.d.ts.map +1 -1
  30. package/dest/l1_tx_utils/fee-strategies/types.js +0 -21
  31. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts +2 -2
  32. package/dest/l1_tx_utils/l1_fee_analyzer.d.ts.map +1 -1
  33. package/dest/l1_tx_utils/l1_fee_analyzer.js +3 -3
  34. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts +1 -5
  35. package/dest/l1_tx_utils/readonly_l1_tx_utils.d.ts.map +1 -1
  36. package/dest/l1_tx_utils/readonly_l1_tx_utils.js +14 -51
  37. package/dest/queries.js +2 -2
  38. package/dest/test/chain_monitor.js +1 -2
  39. package/dest/test/rollup_cheat_codes.d.ts +2 -1
  40. package/dest/test/rollup_cheat_codes.d.ts.map +1 -1
  41. package/dest/test/rollup_cheat_codes.js +9 -1
  42. package/package.json +5 -5
  43. package/src/contracts/fee_asset_handler.ts +8 -7
  44. package/src/contracts/index.ts +1 -0
  45. package/src/contracts/outbox.ts +98 -0
  46. package/src/contracts/rollup.ts +240 -92
  47. package/src/deploy_aztec_l1_contracts.ts +61 -13
  48. package/src/l1_tx_utils/fee-strategies/index.ts +1 -1
  49. package/src/l1_tx_utils/fee-strategies/p75_competitive.ts +45 -41
  50. package/src/l1_tx_utils/fee-strategies/p75_competitive_blob_txs_only.ts +48 -44
  51. package/src/l1_tx_utils/fee-strategies/types.ts +14 -46
  52. package/src/l1_tx_utils/l1_fee_analyzer.ts +2 -3
  53. package/src/l1_tx_utils/readonly_l1_tx_utils.ts +20 -59
  54. package/src/queries.ts +2 -2
  55. package/src/test/chain_monitor.ts +1 -1
  56. package/src/test/rollup_cheat_codes.ts +10 -1
@@ -77,14 +77,20 @@ import { HISTORICAL_BLOCK_COUNT } from './types.js';
77
77
  */ export const P75BlobTxsOnlyPriorityFeeStrategy = {
78
78
  name: 'Competitive (P75 + History) - Blob Txs Only',
79
79
  id: 'p75_pending_txs_and_history_blob_txs_only',
80
- getRequiredPromises (client, opts) {
81
- return {
82
- networkEstimate: client.estimateMaxPriorityFeePerGas().catch(()=>0n),
83
- pendingBlock: client.getBlock({
80
+ async execute (client, context) {
81
+ const { isBlobTx, logger } = context;
82
+ // Fire all RPC calls in parallel
83
+ const [latestBlockResult, blobBaseFeeResult, networkEstimateResult, pendingBlockResult, feeHistoryResult] = await Promise.allSettled([
84
+ client.getBlock({
85
+ blockTag: 'latest'
86
+ }),
87
+ isBlobTx ? client.getBlobBaseFee() : Promise.resolve(undefined),
88
+ client.estimateMaxPriorityFeePerGas().catch(()=>0n),
89
+ client.getBlock({
84
90
  blockTag: 'pending',
85
91
  includeTransactions: true
86
92
  }).catch(()=>null),
87
- feeHistory: opts.isBlobTx ? getBlobPriorityFeeHistory(client, HISTORICAL_BLOCK_COUNT, [
93
+ isBlobTx ? getBlobPriorityFeeHistory(client, HISTORICAL_BLOCK_COUNT, [
88
94
  75
89
95
  ]) : client.getFeeHistory({
90
96
  blockCount: HISTORICAL_BLOCK_COUNT,
@@ -93,31 +99,41 @@ import { HISTORICAL_BLOCK_COUNT } from './types.js';
93
99
  ],
94
100
  blockTag: 'latest'
95
101
  }).catch(()=>null)
96
- };
97
- },
98
- calculate (results, context) {
99
- const { logger } = context;
100
- // Extract network estimate from settled result
101
- const networkEstimate = results.networkEstimate.status === 'fulfilled' && typeof results.networkEstimate.value === 'bigint' ? results.networkEstimate.value : 0n;
102
+ ]);
103
+ // Extract latest block (required)
104
+ if (latestBlockResult.status === 'rejected') {
105
+ throw new Error(`Failed to get latest block: ${latestBlockResult.reason}`);
106
+ }
107
+ const latestBlock = latestBlockResult.value;
108
+ // Extract blob base fee (only for blob txs)
109
+ let blobBaseFee;
110
+ if (isBlobTx) {
111
+ if (blobBaseFeeResult.status === 'fulfilled' && typeof blobBaseFeeResult.value === 'bigint') {
112
+ blobBaseFee = blobBaseFeeResult.value;
113
+ } else {
114
+ logger?.warn('Failed to get L1 blob base fee');
115
+ }
116
+ }
117
+ // Extract network estimate
118
+ const networkEstimate = networkEstimateResult.status === 'fulfilled' && typeof networkEstimateResult.value === 'bigint' ? networkEstimateResult.value : 0n;
102
119
  let competitiveFee = networkEstimate;
103
120
  const debugInfo = {
104
121
  networkEstimateGwei: formatGwei(networkEstimate)
105
122
  };
106
- // Extract pending block from settled result
107
- const pendingBlock = results.pendingBlock.status === 'fulfilled' ? results.pendingBlock.value : null;
123
+ // Extract pending block
124
+ const pendingBlock = pendingBlockResult.status === 'fulfilled' ? pendingBlockResult.value : null;
108
125
  // Analyze pending block transactions
109
126
  if (pendingBlock?.transactions && pendingBlock.transactions.length > 0) {
110
127
  const pendingFees = pendingBlock.transactions.map((tx)=>{
111
128
  if (typeof tx === 'string') {
112
129
  return 0n;
113
130
  }
114
- if (context.isBlobTx) {
131
+ if (isBlobTx) {
115
132
  if (!isBlobTransaction(tx)) {
116
133
  return 0n;
117
134
  }
118
135
  }
119
- const fee = tx.maxPriorityFeePerGas || 0n;
120
- return fee;
136
+ return tx.maxPriorityFeePerGas || 0n;
121
137
  }).filter((fee)=>fee > 0n);
122
138
  if (pendingFees.length > 0) {
123
139
  const pendingCompetitiveFee = calculatePercentile(pendingFees, 75);
@@ -132,8 +148,8 @@ import { HISTORICAL_BLOCK_COUNT } from './types.js';
132
148
  });
133
149
  }
134
150
  }
135
- // Extract fee history from settled result
136
- const feeHistory = results.feeHistory.status === 'fulfilled' ? results.feeHistory.value : null;
151
+ // Extract fee history
152
+ const feeHistory = feeHistoryResult.status === 'fulfilled' ? feeHistoryResult.value : null;
137
153
  // Analyze fee history
138
154
  if (feeHistory?.reward && feeHistory.reward.length > 0) {
139
155
  // Extract 75th percentile fees from each block
@@ -167,6 +183,8 @@ import { HISTORICAL_BLOCK_COUNT } from './types.js';
167
183
  debugInfo.finalFeeGwei = formatGwei(competitiveFee);
168
184
  return {
169
185
  priorityFee: competitiveFee,
186
+ latestBlock,
187
+ blobBaseFee,
170
188
  debugInfo
171
189
  };
172
190
  }
@@ -1,4 +1,5 @@
1
1
  import type { Logger } from '@aztec/foundation/log';
2
+ import type { Block } from 'viem';
2
3
  import type { ViemClient } from '../../types.js';
3
4
  import type { L1TxUtilsConfig } from '../config.js';
4
5
  /**
@@ -11,11 +12,15 @@ export declare const HISTORICAL_BLOCK_COUNT = 5;
11
12
  export interface PriorityFeeStrategyResult {
12
13
  /** The calculated priority fee in wei */
13
14
  priorityFee: bigint;
15
+ /** The latest block (fetched as part of the strategy) */
16
+ latestBlock: Block;
17
+ /** The blob base fee (only present for blob transactions) */
18
+ blobBaseFee?: bigint;
14
19
  /** Optional debug info about how the fee was calculated */
15
20
  debugInfo?: Record<string, string | number>;
16
21
  }
17
22
  /**
18
- * Context passed to the strategy calculation function (excluding promise results)
23
+ * Context passed to the strategy function
19
24
  */
20
25
  export interface PriorityFeeStrategyContext {
21
26
  /** Gas configuration */
@@ -27,38 +32,20 @@ export interface PriorityFeeStrategyContext {
27
32
  }
28
33
  /**
29
34
  * A strategy for calculating the priority fee for L1 transactions.
30
- * Each strategy defines what promises it needs and how to calculate the fee from their results.
31
- * This design allows strategies to be plugged into both L1FeeAnalyzer and ReadOnlyL1TxUtils.
35
+ * The function handles all RPC calls and returns
36
+ * the priority fee, along with any block data needed by the caller.
32
37
  */
33
- export interface PriorityFeeStrategy<TPromises extends Record<string, Promise<any>> = Record<string, Promise<any>>> {
38
+ export type PriorityFeeStrategy = {
34
39
  /** Human-readable name for logging */
35
40
  name: string;
36
41
  /** Unique identifier for metrics */
37
42
  id: string;
38
43
  /**
39
- * Returns the promises that need to be executed for this strategy.
40
- * These will be run in parallel with Promise.allSettled.
44
+ * Calculate the priority fee.
41
45
  * @param client - The viem client to use for RPC calls
42
- * @returns An object of promises keyed by name
43
- */
44
- getRequiredPromises(client: ViemClient, opts: Partial<PriorityFeeStrategyContext>): TPromises;
45
- /**
46
- * Calculate the priority fee based on the settled promise results.
47
- * @param results - The settled results of the promises from getRequiredPromises
48
46
  * @param context - Contains gas config, whether it's a blob tx, and logger
49
- * @returns The calculated priority fee result
47
+ * @returns The calculated priority fee result including block data
50
48
  */
51
- calculate(results: {
52
- [K in keyof TPromises]: PromiseSettledResult<Awaited<TPromises[K]>>;
53
- }, context: PriorityFeeStrategyContext): PriorityFeeStrategyResult;
54
- }
55
- /**
56
- * Helper function to execute a strategy's promises and calculate the result.
57
- * This can be used by both L1FeeAnalyzer and ReadOnlyL1TxUtils.
58
- * @param strategy - The strategy to execute
59
- * @param client - The viem client to use for RPC calls
60
- * @param context - The context for calculation
61
- * @returns The strategy result
62
- */
63
- export declare function executeStrategy<TPromises extends Record<string, Promise<any>>>(strategy: PriorityFeeStrategy<TPromises>, client: ViemClient, context: PriorityFeeStrategyContext): Promise<PriorityFeeStrategyResult>;
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sMV90eF91dGlscy9mZWUtc3RyYXRlZ2llcy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFcEQ7O0dBRUc7QUFDSCxlQUFPLE1BQU0sc0JBQXNCLElBQUksQ0FBQztBQUV4Qzs7R0FFRztBQUNILE1BQU0sV0FBVyx5QkFBeUI7SUFDeEMseUNBQXlDO0lBQ3pDLFdBQVcsRUFBRSxNQUFNLENBQUM7SUFDcEIsMkRBQTJEO0lBQzNELFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0NBQzdDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsMEJBQTBCO0lBQ3pDLHdCQUF3QjtJQUN4QixTQUFTLEVBQUUsZUFBZSxDQUFDO0lBQzNCLDZDQUE2QztJQUM3QyxRQUFRLEVBQUUsT0FBTyxDQUFDO0lBQ2xCLDJCQUEyQjtJQUMzQixNQUFNLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDakI7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxXQUFXLG1CQUFtQixDQUFDLFNBQVMsU0FBUyxNQUFNLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hILHNDQUFzQztJQUN0QyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2Isb0NBQW9DO0lBQ3BDLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWDs7Ozs7T0FLRztJQUNILG1CQUFtQixDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUM5Rjs7Ozs7T0FLRztJQUNILFNBQVMsQ0FDUCxPQUFPLEVBQUU7U0FBRyxDQUFDLElBQUksTUFBTSxTQUFTLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQUUsRUFDaEYsT0FBTyxFQUFFLDBCQUEwQixHQUNsQyx5QkFBeUIsQ0FBQztDQUM5QjtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBc0IsZUFBZSxDQUFDLFNBQVMsU0FBUyxNQUFNLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUNsRixRQUFRLEVBQUUsbUJBQW1CLENBQUMsU0FBUyxDQUFDLEVBQ3hDLE1BQU0sRUFBRSxVQUFVLEVBQ2xCLE9BQU8sRUFBRSwwQkFBMEIsR0FDbEMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBY3BDIn0=
49
+ execute: (client: ViemClient, context: PriorityFeeStrategyContext) => Promise<PriorityFeeStrategyResult>;
50
+ };
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sMV90eF91dGlscy9mZWUtc3RyYXRlZ2llcy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEMsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXBEOztHQUVHO0FBQ0gsZUFBTyxNQUFNLHNCQUFzQixJQUFJLENBQUM7QUFFeEM7O0dBRUc7QUFDSCxNQUFNLFdBQVcseUJBQXlCO0lBQ3hDLHlDQUF5QztJQUN6QyxXQUFXLEVBQUUsTUFBTSxDQUFDO0lBQ3BCLHlEQUF5RDtJQUN6RCxXQUFXLEVBQUUsS0FBSyxDQUFDO0lBQ25CLDZEQUE2RDtJQUM3RCxXQUFXLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDckIsMkRBQTJEO0lBQzNELFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0NBQzdDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsMEJBQTBCO0lBQ3pDLHdCQUF3QjtJQUN4QixTQUFTLEVBQUUsZUFBZSxDQUFDO0lBQzNCLDZDQUE2QztJQUM3QyxRQUFRLEVBQUUsT0FBTyxDQUFDO0lBQ2xCLDJCQUEyQjtJQUMzQixNQUFNLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDakI7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxNQUFNLG1CQUFtQixHQUFHO0lBQ2hDLHNDQUFzQztJQUN0QyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2Isb0NBQW9DO0lBQ3BDLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFDWDs7Ozs7T0FLRztJQUNILE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLDBCQUEwQixLQUFLLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0NBQzFHLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/l1_tx_utils/fee-strategies/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,yCAAyC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,wBAAwB;IACxB,SAAS,EAAE,eAAe,CAAC;IAC3B,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAChH,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,SAAS,CAAC;IAC9F;;;;;OAKG;IACH,SAAS,CACP,OAAO,EAAE;SAAG,CAAC,IAAI,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,EAChF,OAAO,EAAE,0BAA0B,GAClC,yBAAyB,CAAC;CAC9B;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAClF,QAAQ,EAAE,mBAAmB,CAAC,SAAS,CAAC,EACxC,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,yBAAyB,CAAC,CAcpC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/l1_tx_utils/fee-strategies/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,yCAAyC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,WAAW,EAAE,KAAK,CAAC;IACnB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,wBAAwB;IACxB,SAAS,EAAE,eAAe,CAAC;IAC3B,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,0BAA0B,KAAK,OAAO,CAAC,yBAAyB,CAAC,CAAC;CAC1G,CAAC"}
@@ -1,24 +1,3 @@
1
1
  /**
2
2
  * Historical block count for fee history queries
3
3
  */ export const HISTORICAL_BLOCK_COUNT = 5;
4
- /**
5
- * Helper function to execute a strategy's promises and calculate the result.
6
- * This can be used by both L1FeeAnalyzer and ReadOnlyL1TxUtils.
7
- * @param strategy - The strategy to execute
8
- * @param client - The viem client to use for RPC calls
9
- * @param context - The context for calculation
10
- * @returns The strategy result
11
- */ export async function executeStrategy(strategy, client, context) {
12
- const promises = strategy.getRequiredPromises(client, {
13
- isBlobTx: context.isBlobTx
14
- });
15
- const keys = Object.keys(promises);
16
- const promiseArray = keys.map((k)=>promises[k]);
17
- const settledResults = await Promise.allSettled(promiseArray);
18
- // Reconstruct the results object with the same keys, preserving the type mapping
19
- const results = {};
20
- keys.forEach((key, index)=>{
21
- results[key] = settledResults[index];
22
- });
23
- return strategy.calculate(results, context);
24
- }
@@ -169,7 +169,7 @@ export declare class L1FeeAnalyzer {
169
169
  constructor(client: ViemClient, dateProvider?: DateProvider, logger?: Logger, maxCompletedAnalyses?: number, strategies?: PriorityFeeStrategy[], gasConfig?: L1TxUtilsConfig);
170
170
  /**
171
171
  * Executes all configured strategies and returns their results.
172
- * Each strategy defines its own promises which are executed and passed to calculate.
172
+ * Each strategy handles its own RPC calls internally.
173
173
  * @param isBlobTx - Whether this is a blob transaction
174
174
  * @returns Array of strategy results
175
175
  */
@@ -230,4 +230,4 @@ export declare class L1FeeAnalyzer {
230
230
  */
231
231
  private minBigInt;
232
232
  }
233
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfZmVlX2FuYWx5emVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbDFfdHhfdXRpbHMvbDFfZmVlX2FuYWx5emVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsT0FBTyxFQUF5QyxLQUFLLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUVuRixPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUMsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRW5ELE9BQU8sRUFFTCxLQUFLLG1CQUFtQixFQUd6QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFNUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsVUFBVTtJQUN6QixJQUFJLEVBQUUsR0FBRyxDQUFDO0lBQ1Ysb0JBQW9CLEVBQUUsTUFBTSxDQUFDO0lBQzdCLFlBQVksRUFBRSxNQUFNLENBQUM7SUFDckIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsR0FBRyxFQUFFLE1BQU0sQ0FBQztDQUNiO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsb0JBQW9CO0lBQ25DLDRDQUE0QztJQUM1QyxTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2xCLHlEQUF5RDtJQUN6RCxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsMkNBQTJDO0lBQzNDLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIsNENBQTRDO0lBQzVDLFdBQVcsRUFBRSxN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
233
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibDFfZmVlX2FuYWx5emVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbDFfdHhfdXRpbHMvbDFfZmVlX2FuYWx5emVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFdkQsT0FBTyxFQUF5QyxLQUFLLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUVuRixPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUMsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRW5ELE9BQU8sRUFFTCxLQUFLLG1CQUFtQixFQUV6QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFNUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsVUFBVTtJQUN6QixJQUFJLEVBQUUsR0FBRyxDQUFDO0lBQ1Ysb0JBQW9CLEVBQUUsTUFBTSxDQUFDO0lBQzdCLFlBQVksRUFBRSxNQUFNLENBQUM7SUFDckIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsR0FBRyxFQUFFLE1BQU0sQ0FBQztDQUNiO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFdBQVcsb0JBQW9CO0lBQ25DLDRDQUE0QztJQUM1QyxTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2xCLHlEQUF5RDtJQUN6RCxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsMkNBQTJDO0lBQzNDLGFBQWEsRUFBRSxNQUFNLENBQUM7SUFDdEIsNENBQTRDO0lBQzVDLFdBQVcsRUFBRSxN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
@@ -1 +1 @@
1
- {"version":3,"file":"l1_fee_analyzer.d.ts","sourceRoot":"","sources":["../../src/l1_tx_utils/l1_fee_analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"l1_fee_analyzer.d.ts","sourceRoot":"","sources":["../../src/l1_tx_utils/l1_fee_analyzer.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { DateProvider } from '@aztec/foundation/timer';
4
4
  import { formatGwei } from 'viem';
5
5
  import { calculatePercentile, isBlobTransaction } from '../utils.js';
6
6
  import { BLOB_CAPACITY_SCHEDULE, GAS_PER_BLOB, WEI_CONST } from './constants.js';
7
- import { DEFAULT_PRIORITY_FEE_STRATEGIES, executeStrategy } from './fee-strategies/index.js';
7
+ import { DEFAULT_PRIORITY_FEE_STRATEGIES } from './fee-strategies/index.js';
8
8
  /**
9
9
  * Gets the maximum blob capacity for a given block timestamp
10
10
  */ function getMaxBlobCapacity(blockTimestamp) {
@@ -93,7 +93,7 @@ import { DEFAULT_PRIORITY_FEE_STRATEGIES, executeStrategy } from './fee-strategi
93
93
  }
94
94
  /**
95
95
  * Executes all configured strategies and returns their results.
96
- * Each strategy defines its own promises which are executed and passed to calculate.
96
+ * Each strategy handles its own RPC calls internally.
97
97
  * @param isBlobTx - Whether this is a blob transaction
98
98
  * @returns Array of strategy results
99
99
  */ async executeAllStrategies(isBlobTx) {
@@ -105,7 +105,7 @@ import { DEFAULT_PRIORITY_FEE_STRATEGIES, executeStrategy } from './fee-strategi
105
105
  };
106
106
  for (const strategy of this.strategies){
107
107
  try {
108
- const result = await executeStrategy(strategy, this.client, context);
108
+ const result = await strategy.execute(this.client, context);
109
109
  results.push({
110
110
  strategyId: strategy.id,
111
111
  strategyName: strategy.name,
@@ -79,9 +79,5 @@ export declare class ReadOnlyL1TxUtils {
79
79
  result: `0x${string}`;
80
80
  }>;
81
81
  bumpGasLimit(gasLimit: bigint, _gasConfig?: L1TxUtilsConfig): bigint;
82
- /**
83
- * Helper function to retry RPC calls twice
84
- */
85
- private tryTwice;
86
82
  }
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZG9ubHlfbDFfdHhfdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sMV90eF91dGlscy9yZWFkb25seV9sMV90eF91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXZELE9BQU8sRUFDTCxLQUFLLEdBQUcsRUFDUixLQUFLLE9BQU8sRUFFWixLQUFLLGNBQWMsRUFFbkIsS0FBSyxpQkFBaUIsRUFDdEIsS0FBSyxHQUFHLEVBR1IsS0FBSyxhQUFhLEVBS25CLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBbUQsTUFBTSxhQUFhLENBQUM7QUFTcEcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFNeEYscUJBQWEsaUJBQWlCO0lBS25CLE1BQU0sRUFBRSxVQUFVO0lBQ3pCLFNBQVMsQ0FBQyxNQUFNLEVBQUUsTUFBTTthQUNSLFlBQVksRUFBRSxZQUFZO0lBRTFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPO0lBUjlCLE1BQU0sRUFBRSxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDekMsU0FBUyxDQUFDLFdBQVcsVUFBUztJQUU5QixZQUNTLE1BQU0sRUFBRSxVQUFVLEVBQ2YsTUFBTSxvQkFBcUQsRUFDckQsWUFBWSxFQUFFLFlBQVksRUFDMUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxFQUN2QixnQkFBZ0IsR0FBRSxPQUFlLEVBRzVDO0lBRU0sU0FBUyxTQUVmO0lBRU0sT0FBTyxTQUViO0lBRU0sUUFBUTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQUVkO0lBRU0sY0FBYyxvQkFFcEI7SUFFTSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FFOUQ7SUFFRDs7T0FFRztJQUNVLFdBQVcsQ0FDdEIsa0JBQWtCLENBQUMsRUFBRSxlQUFlLEVBQ3BDLFFBQVEsR0FBRSxPQUFlLEVBQ3pCLE9BQU8sR0FBRSxNQUFVLEVBQ25CLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxPQUFPLFNBQVMsQ0FBQyxHQUFHLEtBQUssR0FBRyxRQUFRLEdBQzdELE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FtTG5CO0lBRUQ7O09BRUc7SUFDVSxXQUFXLENBQ3RCLE9BQU8sRUFBRSxPQUFPLEdBQUcsR0FBRyxFQUN0QixPQUFPLEVBQUUsV0FBVyxFQUNwQixVQUFVLENBQUMsRUFBRSxlQUFlLEVBQzVCLFdBQVcsQ0FBQyxFQUFFLFlBQVksR0FDekIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQThCakI7SUFFSyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsQ0FZL0U7SUFFWSx5QkFBeUIsQ0FDcEMsSUFBSSxFQUFFLEdBQUcsRUFDVCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNyQixZQUFZLEVBQUUsTUFBTSxDQUFDO1FBQ3JCLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDVCxPQUFPLEVBQUUsR0FBRyxDQUFDO0tBQ2QsRUFDRCxVQUFVLEVBQUUsQ0FBQyxZQUFZLEdBQUc7UUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDLEdBQUcsU0FBUyxFQUNyRSxhQUFhLEdBQUUsYUFBa0IsK0JBZ0RsQztJQUVZLFFBQVEsQ0FDbkIsT0FBTyxFQUFFLFdBQVcsR0FBRztRQUFFLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQTtLQUFFLEVBQ25ELGNBQWMsR0FBRSxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBTSxFQUNuRCxjQUFjLEdBQUUsYUFBa0IsRUFDbEMsR0FBRyxHQUFFLEdBQWUsRUFDcEIsVUFBVSxDQUFDLEVBQUUsZUFBZSxHQUFHO1FBQUUsbUJBQW1CLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxHQUM5RCxPQUFPLENBQUM7UUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQUMsTUFBTSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUE7S0FBRSxDQUFDLENBVXJEO0lBRUQsVUFBZ0IsU0FBUyxDQUN2QixJQUFJLEVBQUUsR0FBRyxFQUNULGNBQWMsNENBQXFDLEVBQ25ELGNBQWMsMkJBQW9CLEVBQ2xDLFNBQVMsRUFBRSxlQUFlLEdBQUc7UUFBRSxtQkFBbUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQTtLQUFFLEVBQzdELEdBQUcsRUFBRSxHQUFHOzs7T0FvQ1Q7SUFFTSxZQUFZLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsRUFBRSxlQUFlLEdBQUcsTUFBTSxDQVcxRTtJQUVEOztPQUVHO0lBQ0gsT0FBTyxDQUFDLFFBQVE7Q0FHakIifQ==
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZG9ubHlfbDFfdHhfdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sMV90eF91dGlscy9yZWFkb25seV9sMV90eF91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXZELE9BQU8sRUFDTCxLQUFLLEdBQUcsRUFDUixLQUFLLE9BQU8sRUFFWixLQUFLLGNBQWMsRUFFbkIsS0FBSyxpQkFBaUIsRUFDdEIsS0FBSyxHQUFHLEVBR1IsS0FBSyxhQUFhLEVBS25CLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBbUQsTUFBTSxhQUFhLENBQUM7QUFTcEcsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFNeEYscUJBQWEsaUJBQWlCO0lBS25CLE1BQU0sRUFBRSxVQUFVO0lBQ3pCLFNBQVMsQ0FBQyxNQUFNLEVBQUUsTUFBTTthQUNSLFlBQVksRUFBRSxZQUFZO0lBRTFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPO0lBUjlCLE1BQU0sRUFBRSxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDekMsU0FBUyxDQUFDLFdBQVcsVUFBUztJQUU5QixZQUNTLE1BQU0sRUFBRSxVQUFVLEVBQ2YsTUFBTSxvQkFBcUQsRUFDckQsWUFBWSxFQUFFLFlBQVksRUFDMUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxFQUN2QixnQkFBZ0IsR0FBRSxPQUFlLEVBRzVDO0lBRU0sU0FBUyxTQUVmO0lBRU0sT0FBTyxTQUViO0lBRU0sUUFBUTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQUVkO0lBRU0sY0FBYyxvQkFFcEI7SUFFTSxPQUFPLENBQUMsT0FBTyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FFOUQ7SUFFRDs7T0FFRztJQUNVLFdBQVcsQ0FDdEIsa0JBQWtCLENBQUMsRUFBRSxlQUFlLEVBQ3BDLFFBQVEsR0FBRSxPQUFlLEVBQ3pCLE9BQU8sR0FBRSxNQUFVLEVBQ25CLGdCQUFnQixDQUFDLEVBQUUsT0FBTyxPQUFPLFNBQVMsQ0FBQyxHQUFHLEtBQUssR0FBRyxRQUFRLEdBQzdELE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FtSm5CO0lBRUQ7O09BRUc7SUFDVSxXQUFXLENBQ3RCLE9BQU8sRUFBRSxPQUFPLEdBQUcsR0FBRyxFQUN0QixPQUFPLEVBQUUsV0FBVyxFQUNwQixVQUFVLENBQUMsRUFBRSxlQUFlLEVBQzVCLFdBQVcsQ0FBQyxFQUFFLFlBQVksR0FDekIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQThCakI7SUFFSyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyxTQUFTLENBQUMsQ0FZL0U7SUFFWSx5QkFBeUIsQ0FDcEMsSUFBSSxFQUFFLEdBQUcsRUFDVCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNyQixZQUFZLEVBQUUsTUFBTSxDQUFDO1FBQ3JCLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDVCxPQUFPLEVBQUUsR0FBRyxDQUFDO0tBQ2QsRUFDRCxVQUFVLEVBQUUsQ0FBQyxZQUFZLEdBQUc7UUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDLEdBQUcsU0FBUyxFQUNyRSxhQUFhLEdBQUUsYUFBa0IsK0JBZ0RsQztJQUVZLFFBQVEsQ0FDbkIsT0FBTyxFQUFFLFdBQVcsR0FBRztRQUFFLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQztRQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQTtLQUFFLEVBQ25ELGNBQWMsR0FBRSxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBTSxFQUNuRCxjQUFjLEdBQUUsYUFBa0IsRUFDbEMsR0FBRyxHQUFFLEdBQWUsRUFDcEIsVUFBVSxDQUFDLEVBQUUsZUFBZSxHQUFHO1FBQUUsbUJBQW1CLENBQUMsRUFBRSxNQUFNLENBQUE7S0FBRSxHQUM5RCxPQUFPLENBQUM7UUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQUMsTUFBTSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUE7S0FBRSxDQUFDLENBVXJEO0lBRUQsVUFBZ0IsU0FBUyxDQUN2QixJQUFJLEVBQUUsR0FBRyxFQUNULGNBQWMsNENBQXFDLEVBQ25ELGNBQWMsMkJBQW9CLEVBQ2xDLFNBQVMsRUFBRSxlQUFlLEdBQUc7UUFBRSxtQkFBbUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQTtLQUFFLEVBQzdELEdBQUcsRUFBRSxHQUFHOzs7T0FvQ1Q7SUFFTSxZQUFZLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLENBQUMsRUFBRSxlQUFlLEdBQUcsTUFBTSxDQVcxRTtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"readonly_l1_tx_utils.d.ts","sourceRoot":"","sources":["../../src/l1_tx_utils/readonly_l1_tx_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readonly_l1_tx_utils.d.ts","sourceRoot":"","sources":["../../src/l1_tx_utils/readonly_l1_tx_utils.ts"],"names":[],"mappings":"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"}
@@ -46,52 +46,20 @@ export class ReadOnlyL1TxUtils {
46
46
  * Gets the current gas price with bounds checking
47
47
  */ async getGasPrice(gasConfigOverrides, isBlobTx = false, attempt = 0, previousGasPrice) {
48
48
  const gasConfig = merge(this.config, gasConfigOverrides);
49
- // Make all RPC calls in parallel upfront with retry logic
50
- // First 2 calls are necessary to complete
51
- const latestBlockPromise = this.tryTwice(()=>this.client.getBlock({
52
- blockTag: 'latest'
53
- }), 'Getting latest block');
54
- let blobBaseFeePromise = null;
55
- if (isBlobTx) {
56
- blobBaseFeePromise = this.tryTwice(()=>this.client.getBlobBaseFee(), 'Getting blob base fee');
57
- }
58
- // Get strategy promises for priority fee calculation
59
- const strategyPromises = CurrentStrategy.getRequiredPromises(this.client, {
60
- isBlobTx
61
- });
62
- const strategyPromiseKeys = [];
63
- const strategyPromisesArr = [];
64
- for (const [key, promise] of Object.entries(strategyPromises)){
65
- strategyPromiseKeys.push(key);
66
- strategyPromisesArr.push(this.tryTwice(()=>promise, `Getting strategy data for ${key}`));
67
- }
68
- const [latestBlockResult, blobBaseFeeResult, ...strategyResults] = await Promise.allSettled([
69
- latestBlockPromise,
70
- blobBaseFeePromise ?? Promise.resolve(0n),
71
- ...strategyPromisesArr
72
- ]);
73
- // Extract results
74
- const baseFee = latestBlockResult.status === 'fulfilled' && typeof latestBlockResult.value === 'object' && latestBlockResult.value.baseFeePerGas ? latestBlockResult.value.baseFeePerGas : 0n;
75
- // Get blob base fee if available
76
- let blobBaseFee = 0n;
77
- if (isBlobTx && blobBaseFeeResult.status === 'fulfilled' && typeof blobBaseFeeResult.value === 'bigint') {
78
- blobBaseFee = blobBaseFeeResult.value;
79
- } else if (isBlobTx) {
49
+ // Execute strategy - it handles all RPC calls internally and returns everything we need
50
+ const strategyResult = await retry(()=>CurrentStrategy.execute(this.client, {
51
+ gasConfig,
52
+ isBlobTx,
53
+ logger: this.logger
54
+ }), 'Executing priority fee strategy', makeBackoff(times(2, ()=>0)), this.logger, true);
55
+ const { latestBlock, blobBaseFee, priorityFee: strategyPriorityFee } = strategyResult;
56
+ // Extract base fee from latest block
57
+ const baseFee = latestBlock.baseFeePerGas ?? 0n;
58
+ // Handle blob base fee
59
+ if (isBlobTx && blobBaseFee === undefined) {
80
60
  this.logger?.warn('Failed to get L1 blob base fee', attempt);
81
61
  }
82
- let priorityFee;
83
- // Get competitive priority fee using strategy
84
- // Reconstruct the results object with the same keys as the promises
85
- const resultsObject = {};
86
- strategyPromiseKeys.forEach((key, index)=>{
87
- resultsObject[key] = strategyResults[index];
88
- });
89
- const result = CurrentStrategy.calculate(resultsObject, {
90
- gasConfig,
91
- isBlobTx,
92
- logger: this.logger
93
- });
94
- priorityFee = result.priorityFee;
62
+ let priorityFee = strategyPriorityFee;
95
63
  // Apply minimum priority fee floor if configured
96
64
  if (gasConfig.minimumPriorityFeePerGas) {
97
65
  const minimumPriorityFee = BigInt(Math.trunc(gasConfig.minimumPriorityFeePerGas * Number(WEI_CONST)));
@@ -105,7 +73,7 @@ export class ReadOnlyL1TxUtils {
105
73
  }
106
74
  }
107
75
  let maxFeePerGas = baseFee;
108
- let maxFeePerBlobGas = blobBaseFee;
76
+ let maxFeePerBlobGas = blobBaseFee ?? 0n;
109
77
  // Bump base fee so it's valid for next blocks if it stalls
110
78
  const numBlocks = Math.ceil(gasConfig.stallTimeMs / BLOCK_TIME_MS);
111
79
  for(let i = 0; i < numBlocks; i++){
@@ -175,7 +143,7 @@ export class ReadOnlyL1TxUtils {
175
143
  baseFee: formatGwei(baseFee),
176
144
  maxFeePerGas: formatGwei(maxFeePerGas),
177
145
  maxPriorityFeePerGas: formatGwei(maxPriorityFeePerGas),
178
- blobBaseFee: formatGwei(blobBaseFee),
146
+ blobBaseFee: formatGwei(blobBaseFee ?? 0n),
179
147
  maxFeePerBlobGas: formatGwei(maxFeePerBlobGas)
180
148
  });
181
149
  return {
@@ -352,9 +320,4 @@ export class ReadOnlyL1TxUtils {
352
320
  });
353
321
  return bumpedGasLimit;
354
322
  }
355
- /**
356
- * Helper function to retry RPC calls twice
357
- */ tryTwice(fn, description) {
358
- return retry(fn, description, makeBackoff(times(2, ()=>0)), this.logger, true);
359
- }
360
323
  }
package/dest/queries.js CHANGED
@@ -62,7 +62,7 @@ import { RollupContract } from './contracts/rollup.js';
62
62
  ejectionThreshold,
63
63
  localEjectionThreshold,
64
64
  slashingQuorum: Number(slashingQuorum),
65
- slashingRoundSizeInEpochs: Number(slashingRoundSize / aztecEpochDuration),
65
+ slashingRoundSizeInEpochs: Number(Number(slashingRoundSize) / aztecEpochDuration),
66
66
  slashingLifetimeInRounds: Number(slashingLifetimeInRounds),
67
67
  slashingExecutionDelayInRounds: Number(slashingExecutionDelayInRounds),
68
68
  slashingVetoer,
@@ -70,7 +70,7 @@ import { RollupContract } from './contracts/rollup.js';
70
70
  manaTarget,
71
71
  provingCostPerMana: provingCostPerMana,
72
72
  rollupVersion: Number(rollupVersion),
73
- genesisArchiveTreeRoot,
73
+ genesisArchiveTreeRoot: genesisArchiveTreeRoot.toString(),
74
74
  exitDelaySeconds: Number(exitDelay),
75
75
  slasherFlavor: slasherProposer?.type ?? 'tally',
76
76
  slashingOffsetInRounds: Number(slashingOffsetInRounds),
@@ -1,5 +1,4 @@
1
1
  import { InboxContract } from '@aztec/ethereum/contracts';
2
- import { EthAddress } from '@aztec/foundation/eth-address';
3
2
  import { createLogger } from '@aztec/foundation/log';
4
3
  import { promiseWithResolvers } from '@aztec/foundation/promise';
5
4
  import { DateProvider } from '@aztec/foundation/timer';
@@ -125,7 +124,7 @@ import { EventEmitter } from 'events';
125
124
  let committee;
126
125
  if (l2Epoch !== this.l2EpochNumber) {
127
126
  this.l2EpochNumber = l2Epoch;
128
- committee = (await this.rollup.getCurrentEpochCommittee())?.map((addr)=>EthAddress.fromString(addr));
127
+ committee = await this.rollup.getCurrentEpochCommittee();
129
128
  this.emit('l2-epoch', {
130
129
  l2EpochNumber: l2Epoch,
131
130
  timestamp,
@@ -62,6 +62,7 @@ export declare class RollupCheatCodes {
62
62
  * @param howMuch - How many checkpoints to move it forward
63
63
  */
64
64
  advanceInboxInProgress(howMuch: number | bigint): Promise<bigint>;
65
+ insertOutbox(epoch: EpochNumber, outHash: bigint): Promise<void>;
65
66
  /**
66
67
  * Executes an action impersonated as the owner of the Rollup contract.
67
68
  * @param action - The action to execute
@@ -84,4 +85,4 @@ export declare class RollupCheatCodes {
84
85
  */
85
86
  setProvingCostPerMana(ethValue: bigint): Promise<void>;
86
87
  }
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwX2NoZWF0X2NvZGVzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9yb2xsdXBfY2hlYXRfY29kZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHNUYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTFELE9BQU8sRUFDTCxLQUFLLHFCQUFxQixFQUMxQixLQUFLLEdBQUcsRUFNVCxNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCw4Q0FBOEM7QUFDOUMscUJBQWEsZ0JBQWdCO0lBT3pCLE9BQU8sQ0FBQyxhQUFhO0lBTnZCLE9BQU8sQ0FBQyxNQUFNLENBQW1CO0lBQ2pDLE9BQU8sQ0FBQyxNQUFNLENBQTREO0lBRTFFLE9BQU8sQ0FBQyxNQUFNLENBQXVDO0lBRXJELFlBQ1UsYUFBYSxFQUFFLGFBQWEsRUFDcEMsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsRUFXdEQ7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUNYLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsRUFDckQsWUFBWSxFQUFFLFlBQVksR0FDekIsZ0JBQWdCLENBR2xCO0lBRUQsK0JBQStCO0lBQ2xCLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBRzFDO0lBRUQsZ0NBQWdDO0lBQ25CLFFBQVEsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLENBRzVDO0lBRUQ7OztPQUdHO0lBQ1UsT0FBTyxJQUFJLE9BQU8sQ0FBQztRQUM5Qiw0QkFBNEIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7UUFDdkQsMkJBQTJCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDO0tBQ3RELENBQUMsQ0FNRDtJQUVEOztPQUVHO0lBQ1UsV0FBVyxrQkFpQnZCO0lBRUQsMEVBQTBFO0lBQzdELFNBQVMsSUFBSSxPQUFPLENBQUM7UUFDaEMscUJBQXFCLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUM1QyxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO0tBQzNDLENBQUMsQ0FNRDtJQUVEOzs7O09BSUc7SUFDVSxjQUFjLENBQ3pCLEtBQUssRUFBRSxXQUFXLEVBQ2xCLElBQUksR0FBRTtRQUNKLHdCQUF3QjtRQUN4QixNQUFNLENBQUMsRUFBRSxNQUFNLENBQUM7S0FDWixtQkFZUDtJQUVELDRDQUE0QztJQUMvQixrQkFBa0Isa0JBVzlCO0lBRUQsNkRBQTZEO0lBQ2hELGlCQUFpQixxQ0FPN0I7SUFFRDs7O09BR0c7SUFDVSxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0saUJBT3hDO0lBRUQ7OztPQUdHO0lBQ0ksWUFBWSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsTUFBTSxHQUFHLE1BQU0saUJBK0IxRDtJQUVEOzs7T0FHRztJQUNJLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FtQ3ZFO0lBRUQ7OztPQUdHO0lBQ1UsT0FBTyxDQUNsQixNQUFNLEVBQUUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxPQUFPLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBTXpHO0lBRUQ7O09BRUc7SUFDVSxVQUFVLGtCQU90QjtJQUVELDRDQUE0QztJQUMvQixvQkFBb0Isa0JBTWhDO0lBRUQ7OztPQUdHO0lBQ1Usc0JBQXNCLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sS0FBSyxNQUFNLGlCQUlyRTtJQUVEOzs7T0FHRztJQUNVLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxNQUFNLGlCQVVsRDtDQUNGIn0=
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sbHVwX2NoZWF0X2NvZGVzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9yb2xsdXBfY2hlYXRfY29kZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNqRixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHNUYsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRTFELE9BQU8sRUFDTCxLQUFLLHFCQUFxQixFQUMxQixLQUFLLEdBQUcsRUFNVCxNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCw4Q0FBOEM7QUFDOUMscUJBQWEsZ0JBQWdCO0lBT3pCLE9BQU8sQ0FBQyxhQUFhO0lBTnZCLE9BQU8sQ0FBQyxNQUFNLENBQW1CO0lBQ2pDLE9BQU8sQ0FBQyxNQUFNLENBQTREO0lBRTFFLE9BQU8sQ0FBQyxNQUFNLENBQXVDO0lBRXJELFlBQ1UsYUFBYSxFQUFFLGFBQWEsRUFDcEMsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsRUFXdEQ7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUNYLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsRUFDckQsWUFBWSxFQUFFLFlBQVksR0FDekIsZ0JBQWdCLENBR2xCO0lBRUQsK0JBQStCO0lBQ2xCLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBRzFDO0lBRUQsZ0NBQWdDO0lBQ25CLFFBQVEsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLENBRzVDO0lBRUQ7OztPQUdHO0lBQ1UsT0FBTyxJQUFJLE9BQU8sQ0FBQztRQUM5Qiw0QkFBNEIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7UUFDdkQsMkJBQTJCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDO0tBQ3RELENBQUMsQ0FNRDtJQUVEOztPQUVHO0lBQ1UsV0FBVyxrQkFpQnZCO0lBRUQsMEVBQTBFO0lBQzdELFNBQVMsSUFBSSxPQUFPLENBQUM7UUFDaEMscUJBQXFCLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQztRQUM1QyxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsTUFBTSxDQUFDO0tBQzNDLENBQUMsQ0FNRDtJQUVEOzs7O09BSUc7SUFDVSxjQUFjLENBQ3pCLEtBQUssRUFBRSxXQUFXLEVBQ2xCLElBQUksR0FBRTtRQUNKLHdCQUF3QjtRQUN4QixNQUFNLENBQUMsRUFBRSxNQUFNLENBQUM7S0FDWixtQkFZUDtJQUVELDRDQUE0QztJQUMvQixrQkFBa0Isa0JBVzlCO0lBRUQsNkRBQTZEO0lBQ2hELGlCQUFpQixxQ0FPN0I7SUFFRDs7O09BR0c7SUFDVSxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0saUJBT3hDO0lBRUQ7OztPQUdHO0lBQ0ksWUFBWSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsTUFBTSxHQUFHLE1BQU0saUJBK0IxRDtJQUVEOzs7T0FHRztJQUNJLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxNQUFNLEdBQUcsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FtQ3ZFO0lBRU0sWUFBWSxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBT3REO0lBRUQ7OztPQUdHO0lBQ1UsT0FBTyxDQUNsQixNQUFNLEVBQUUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxPQUFPLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBTXpHO0lBRUQ7O09BRUc7SUFDVSxVQUFVLGtCQU90QjtJQUVELDRDQUE0QztJQUMvQixvQkFBb0Isa0JBTWhDO0lBRUQ7OztPQUdHO0lBQ1Usc0JBQXNCLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sS0FBSyxNQUFNLGlCQUlyRTtJQUVEOzs7T0FHRztJQUNVLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxNQUFNLGlCQVVsRDtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"rollup_cheat_codes.d.ts","sourceRoot":"","sources":["../../src/test/rollup_cheat_codes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,GAAG,EAMT,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,8CAA8C;AAC9C,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,aAAa;IANvB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAA4D;IAE1E,OAAO,CAAC,MAAM,CAAuC;IAErD,YACU,aAAa,EAAE,aAAa,EACpC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,EAWtD;IAED,MAAM,CAAC,MAAM,CACX,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,EACrD,YAAY,EAAE,YAAY,GACzB,gBAAgB,CAGlB;IAED,+BAA+B;IAClB,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,CAG1C;IAED,gCAAgC;IACnB,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAG5C;IAED;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC;QAC9B,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACvD,2BAA2B,CAAC,MAAM,EAAE,gBAAgB,CAAC;KACtD,CAAC,CAMD;IAED;;OAEG;IACU,WAAW,kBAiBvB;IAED,0EAA0E;IAC7D,SAAS,IAAI,OAAO,CAAC;QAChC,qBAAqB,CAAC,aAAa,EAAE,MAAM,CAAC;QAC5C,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC;KAC3C,CAAC,CAMD;IAED;;;;OAIG;IACU,cAAc,CACzB,KAAK,EAAE,WAAW,EAClB,IAAI,GAAE;QACJ,wBAAwB;QACxB,MAAM,CAAC,EAAE,MAAM,CAAC;KACZ,mBAYP;IAED,4CAA4C;IAC/B,kBAAkB,kBAW9B;IAED,6DAA6D;IAChD,iBAAiB,qCAO7B;IAED;;;OAGG;IACU,YAAY,CAAC,OAAO,EAAE,MAAM,iBAOxC;IAED;;;OAGG;IACI,YAAY,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,MAAM,iBA+B1D;IAED;;;OAGG;IACI,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmCvE;IAED;;;OAGG;IACU,OAAO,CAClB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,qBAAqB,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,iBAMzG;IAED;;OAEG;IACU,UAAU,kBAOtB;IAED,4CAA4C;IAC/B,oBAAoB,kBAMhC;IAED;;;OAGG;IACU,sBAAsB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,iBAIrE;IAED;;;OAGG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM,iBAUlD;CACF"}
1
+ {"version":3,"file":"rollup_cheat_codes.d.ts","sourceRoot":"","sources":["../../src/test/rollup_cheat_codes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG5F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE1D,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,GAAG,EAMT,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,8CAA8C;AAC9C,qBAAa,gBAAgB;IAOzB,OAAO,CAAC,aAAa;IANvB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAA4D;IAE1E,OAAO,CAAC,MAAM,CAAuC;IAErD,YACU,aAAa,EAAE,aAAa,EACpC,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,EAWtD;IAED,MAAM,CAAC,MAAM,CACX,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,EACrD,YAAY,EAAE,YAAY,GACzB,gBAAgB,CAGlB;IAED,+BAA+B;IAClB,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,CAG1C;IAED,gCAAgC;IACnB,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAG5C;IAED;;;OAGG;IACU,OAAO,IAAI,OAAO,CAAC;QAC9B,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACvD,2BAA2B,CAAC,MAAM,EAAE,gBAAgB,CAAC;KACtD,CAAC,CAMD;IAED;;OAEG;IACU,WAAW,kBAiBvB;IAED,0EAA0E;IAC7D,SAAS,IAAI,OAAO,CAAC;QAChC,qBAAqB,CAAC,aAAa,EAAE,MAAM,CAAC;QAC5C,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC;KAC3C,CAAC,CAMD;IAED;;;;OAIG;IACU,cAAc,CACzB,KAAK,EAAE,WAAW,EAClB,IAAI,GAAE;QACJ,wBAAwB;QACxB,MAAM,CAAC,EAAE,MAAM,CAAC;KACZ,mBAYP;IAED,4CAA4C;IAC/B,kBAAkB,kBAW9B;IAED,6DAA6D;IAChD,iBAAiB,qCAO7B;IAED;;;OAGG;IACU,YAAY,CAAC,OAAO,EAAE,MAAM,iBAOxC;IAED;;;OAGG;IACI,YAAY,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,MAAM,iBA+B1D;IAED;;;OAGG;IACI,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAmCvE;IAEM,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAOtD;IAED;;;OAGG;IACU,OAAO,CAClB,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,qBAAqB,CAAC,OAAO,SAAS,EAAE,gBAAgB,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,iBAMzG;IAED;;OAEG;IACU,UAAU,kBAOtB;IAED,4CAA4C;IAC/B,oBAAoB,kBAMhC;IAED;;;OAGG;IACU,sBAAsB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,iBAIrE;IAED;;;OAGG;IACU,qBAAqB,CAAC,QAAQ,EAAE,MAAM,iBAUlD;CACF"}
@@ -1,4 +1,4 @@
1
- import { RollupContract } from '@aztec/ethereum/contracts';
1
+ import { OutboxContract, RollupContract } from '@aztec/ethereum/contracts';
2
2
  import { CheckpointNumber, EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
3
3
  import { EthAddress } from '@aztec/foundation/eth-address';
4
4
  import { createLogger } from '@aztec/foundation/log';
@@ -211,6 +211,14 @@ import { EthCheatCodes } from './eth_cheat_codes.js';
211
211
  return newInProgress;
212
212
  });
213
213
  }
214
+ insertOutbox(epoch, outHash) {
215
+ return this.ethCheatCodes.execWithPausedAnvil(async ()=>{
216
+ const outboxAddress = await this.rollup.read.getOutbox();
217
+ const epochRootSlot = OutboxContract.getEpochRootStorageSlot(epoch);
218
+ await this.ethCheatCodes.store(EthAddress.fromString(outboxAddress), epochRootSlot, outHash);
219
+ this.logger.warn(`Advanced outbox to epoch ${epoch} with out hash ${outHash}`);
220
+ });
221
+ }
214
222
  /**
215
223
  * Executes an action impersonated as the owner of the Rollup contract.
216
224
  * @param action - The action to execute
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/ethereum",
3
- "version": "0.0.1-commit.6c91f13",
3
+ "version": "0.0.1-commit.7d4e6cd",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./account": "./dest/account.js",
@@ -49,10 +49,10 @@
49
49
  "../package.common.json"
50
50
  ],
51
51
  "dependencies": {
52
- "@aztec/blob-lib": "0.0.1-commit.6c91f13",
53
- "@aztec/constants": "0.0.1-commit.6c91f13",
54
- "@aztec/foundation": "0.0.1-commit.6c91f13",
55
- "@aztec/l1-artifacts": "0.0.1-commit.6c91f13",
52
+ "@aztec/blob-lib": "0.0.1-commit.7d4e6cd",
53
+ "@aztec/constants": "0.0.1-commit.7d4e6cd",
54
+ "@aztec/foundation": "0.0.1-commit.7d4e6cd",
55
+ "@aztec/l1-artifacts": "0.0.1-commit.7d4e6cd",
56
56
  "@viem/anvil": "^0.0.10",
57
57
  "dotenv": "^16.0.3",
58
58
  "lodash.chunk": "^4.2.0",
@@ -4,13 +4,14 @@ import { FeeAssetHandlerAbi } from '@aztec/l1-artifacts/FeeAssetHandlerAbi';
4
4
  import { type Hex, encodeFunctionData, getContract } from 'viem';
5
5
 
6
6
  import type { L1TxUtils } from '../l1_tx_utils/index.js';
7
+ import type { ViemClient } from '../types.js';
7
8
 
8
9
  export class FeeAssetHandlerContract {
9
10
  public address: EthAddress;
10
11
 
11
12
  constructor(
13
+ public readonly client: ViemClient,
12
14
  address: Hex | EthAddress,
13
- public readonly txUtils: L1TxUtils,
14
15
  ) {
15
16
  if (address instanceof EthAddress) {
16
17
  address = address.toString();
@@ -22,7 +23,7 @@ export class FeeAssetHandlerContract {
22
23
  const contract = getContract({
23
24
  abi: FeeAssetHandlerAbi,
24
25
  address: this.address.toString(),
25
- client: this.txUtils.client,
26
+ client: this.client,
26
27
  });
27
28
  return EthAddress.fromString(await contract.read.owner());
28
29
  }
@@ -31,16 +32,16 @@ export class FeeAssetHandlerContract {
31
32
  const contract = getContract({
32
33
  abi: FeeAssetHandlerAbi,
33
34
  address: this.address.toString(),
34
- client: this.txUtils.client,
35
+ client: this.client,
35
36
  });
36
37
  return contract.read.mintAmount();
37
38
  }
38
39
 
39
- public mint(recipient: Hex | EthAddress) {
40
+ public mint(txUtils: L1TxUtils, recipient: Hex | EthAddress) {
40
41
  if (recipient instanceof EthAddress) {
41
42
  recipient = recipient.toString();
42
43
  }
43
- return this.txUtils.sendAndMonitorTransaction({
44
+ return txUtils.sendAndMonitorTransaction({
44
45
  to: this.address.toString(),
45
46
  data: encodeFunctionData({
46
47
  abi: FeeAssetHandlerAbi,
@@ -50,8 +51,8 @@ export class FeeAssetHandlerContract {
50
51
  });
51
52
  }
52
53
 
53
- public setMintAmount(amount: bigint) {
54
- return this.txUtils.sendAndMonitorTransaction({
54
+ public setMintAmount(txUtils: L1TxUtils, amount: bigint) {
55
+ return txUtils.sendAndMonitorTransaction({
55
56
  to: this.address.toString(),
56
57
  data: encodeFunctionData({
57
58
  abi: FeeAssetHandlerAbi,
@@ -7,6 +7,7 @@ export * from './governance_proposer.js';
7
7
  export * from './gse.js';
8
8
  export * from './inbox.js';
9
9
  export * from './multicall.js';
10
+ export * from './outbox.js';
10
11
  export * from './registry.js';
11
12
  export * from './rollup.js';
12
13
  export * from './empire_slashing_proposer.js';