@pimlico/alto 0.0.0-main.20251015T151337 → 0.0.0-main.20251017T204533

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 (97) hide show
  1. package/contracts/EIP712.sol/EIP712.json +1 -1
  2. package/contracts/ERC165.sol/ERC165.json +1 -1
  3. package/contracts/ERC20.sol/ERC20.json +1 -1
  4. package/contracts/Eip7702Support.sol/Eip7702Support.json +1 -1
  5. package/contracts/EntryPoint.sol/EntryPoint.json +1 -1
  6. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -1
  7. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -1
  8. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -1
  9. package/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -1
  10. package/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -1
  11. package/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -1
  12. package/contracts/Exec.sol/Exec.json +1 -1
  13. package/contracts/IAccount.sol/IAccount.json +1 -1
  14. package/contracts/IAccountExecute.sol/IAccountExecute.json +1 -1
  15. package/contracts/IAggregator.sol/IAggregator.json +1 -1
  16. package/contracts/IERC165.sol/IERC165.json +1 -1
  17. package/contracts/IERC5267.sol/IERC5267.json +1 -1
  18. package/contracts/IEntryPoint.sol/IEntryPoint.json +1 -1
  19. package/contracts/IEntryPointFilterOpsOverride.sol/IEntryPointFilterOpsOverride08.json +1 -1
  20. package/contracts/IEntryPointSimulations.sol/IEntryPointSimulations.json +1 -1
  21. package/contracts/INonceManager.sol/INonceManager.json +1 -1
  22. package/contracts/IPaymaster.sol/IPaymaster.json +1 -1
  23. package/contracts/ISenderCreator.sol/ISenderCreator.json +1 -1
  24. package/contracts/IStakeManager.sol/IStakeManager.json +1 -1
  25. package/contracts/LibBytes.sol/LibBytes.json +1 -1
  26. package/contracts/Math.sol/Math.json +1 -1
  27. package/contracts/MessageHashUtils.sol/MessageHashUtils.json +1 -1
  28. package/contracts/NonceManager.sol/NonceManager.json +1 -1
  29. package/contracts/Panic.sol/Panic.json +1 -1
  30. package/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -1
  31. package/contracts/ReentrancyGuard.sol/ReentrancyGuard.json +1 -1
  32. package/contracts/ReentrancyGuardTransient.sol/ReentrancyGuardTransient.json +1 -1
  33. package/contracts/SafeCast.sol/SafeCast.json +1 -1
  34. package/contracts/SenderCreator.sol/SenderCreator.json +1 -1
  35. package/contracts/ShortStrings.sol/ShortStrings.json +1 -1
  36. package/contracts/SignedMath.sol/SignedMath.json +1 -1
  37. package/contracts/SimulationOverrideHelper.sol/SimulationOverrideHelper.json +1 -1
  38. package/contracts/StakeManager.sol/StakeManager.json +1 -1
  39. package/contracts/StorageSlot.sol/StorageSlot.json +1 -1
  40. package/contracts/Strings.sol/Strings.json +1 -1
  41. package/contracts/TransientSlot.sol/TransientSlot.json +1 -1
  42. package/contracts/UserOperation.sol/UserOperationLib.json +1 -1
  43. package/contracts/UserOperationLib.sol/UserOperationLib.json +1 -1
  44. package/contracts/build-info/{006aa55b425148d5.json → 18c8965fdfa23caa.json} +1 -1
  45. package/contracts/build-info/{416ffb069999d6eb.json → 1961a9e5bee7b1e0.json} +1 -1
  46. package/contracts/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -1
  47. package/contracts/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -1
  48. package/contracts/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -1
  49. package/contracts/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -1
  50. package/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -1
  51. package/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -1
  52. package/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -1
  53. package/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -1
  54. package/contracts/utils/Exec.sol/Exec.json +1 -1
  55. package/contracts/utils/StorageSlot.sol/StorageSlot.json +1 -1
  56. package/esm/cli/config/bundler.d.ts +18 -18
  57. package/esm/cli/config/bundler.js +11 -9
  58. package/esm/cli/config/bundler.js.map +1 -1
  59. package/esm/cli/config/options.js +14 -13
  60. package/esm/cli/config/options.js.map +1 -1
  61. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -1
  62. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -1
  63. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -1
  64. package/esm/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -1
  65. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -1
  66. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -1
  67. package/esm/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -1
  68. package/esm/executor/filterOpsAndEstimateGas.d.ts +1 -1
  69. package/esm/executor/filterOpsAndEstimateGas.js +20 -53
  70. package/esm/executor/filterOpsAndEstimateGas.js.map +1 -1
  71. package/esm/executor/utils.d.ts +6 -0
  72. package/esm/executor/utils.js +27 -1
  73. package/esm/executor/utils.js.map +1 -1
  74. package/esm/mempool/mempool.d.ts +3 -1
  75. package/esm/mempool/mempool.js +50 -15
  76. package/esm/mempool/mempool.js.map +1 -1
  77. package/esm/{utils/preVerificationGasCalulator.d.ts → rpc/estimation/preVerificationGasCalculator.d.ts} +20 -4
  78. package/esm/{utils/preVerificationGasCalulator.js → rpc/estimation/preVerificationGasCalculator.js} +82 -37
  79. package/esm/rpc/estimation/preVerificationGasCalculator.js.map +1 -0
  80. package/esm/rpc/methods/eth_estimateUserOperationGas.js +26 -21
  81. package/esm/rpc/methods/eth_estimateUserOperationGas.js.map +1 -1
  82. package/esm/rpc/methods/eth_sendUserOperation.d.ts +1 -1
  83. package/esm/rpc/methods/eth_sendUserOperation.js +74 -18
  84. package/esm/rpc/methods/eth_sendUserOperation.js.map +1 -1
  85. package/esm/rpc/rpcHandler.js +1 -2
  86. package/esm/rpc/rpcHandler.js.map +1 -1
  87. package/esm/types/utils.d.ts +0 -1
  88. package/esm/utils/eip7702.js +8 -5
  89. package/esm/utils/eip7702.js.map +1 -1
  90. package/esm/utils/index.d.ts +0 -1
  91. package/esm/utils/index.js +0 -1
  92. package/esm/utils/index.js.map +1 -1
  93. package/esm/utils/userop.d.ts +2 -0
  94. package/esm/utils/userop.js +25 -0
  95. package/esm/utils/userop.js.map +1 -1
  96. package/package.json +1 -1
  97. package/esm/utils/preVerificationGasCalulator.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { type RejectedUserOp, type UserOpInfo, type UserOperationBundle } from "../types/index.js";
1
+ import type { RejectedUserOp, UserOpInfo, UserOperationBundle } from "../types/index.js";
2
2
  import { type Logger } from "../utils/index.js";
3
3
  import type { AltoConfig } from "../createConfig.js";
4
4
  export type FilterOpsResult = {
@@ -1,75 +1,34 @@
1
- import { ArbitrumL1FeeAbi } from "../types/index.js";
2
- import { getSerializedHandleOpsTx, scaleBigIntByPercent, toPackedUserOp } from "../utils/index.js";
1
+ import { scaleBigIntByPercent, toPackedUserOp } from "../utils/index.js";
3
2
  import * as sentry from "@sentry/node";
4
- import { decodeAbiParameters, decodeErrorResult, encodeFunctionData, getContract } from "viem";
3
+ import { decodeAbiParameters, decodeErrorResult, encodeFunctionData } from "viem";
5
4
  import { entryPoint07Abi } from "viem/account-abstraction";
6
5
  import { formatAbiItemWithArgs } from "viem/utils";
6
+ import { getArbitrumL1GasEstimate } from "../rpc/estimation/preVerificationGasCalculator.js";
7
7
  import { pimlicoSimulationsAbi } from "../types/contracts/PimlicoSimulations.js";
8
8
  import { getEip7702DelegationOverrides } from "../utils/eip7702.js";
9
9
  import { getFilterOpsStateOverride } from "../utils/entryPointOverrides.js";
10
- import { calculateAA95GasFloor, encodeHandleOpsCalldata } from "./utils.js";
10
+ import { getBundleGasLimit } from "./utils.js";
11
11
  // Returns the chain specfic overhead that can't be calculated onchain.
12
12
  const getChainSpecificOverhead = async ({ config, entryPoint, userOps }) => {
13
13
  const { publicClient, chainType } = config;
14
14
  switch (chainType) {
15
15
  case "arbitrum": {
16
- const precompileAddress = "0x00000000000000000000000000000000000000C8";
17
- const serializedTx = getSerializedHandleOpsTx({
16
+ const { gasForL1 } = await getArbitrumL1GasEstimate({
17
+ publicClient,
18
18
  userOps,
19
- entryPoint,
20
- chainId: publicClient.chain?.id ?? 10,
21
- removeZeros: false
19
+ entryPoint
22
20
  });
23
- const arbGasPriceOracle = getContract({
24
- abi: ArbitrumL1FeeAbi,
25
- address: precompileAddress,
26
- client: {
27
- public: publicClient
28
- }
29
- });
30
- const { result } = await arbGasPriceOracle.simulate.gasEstimateL1Component([
31
- entryPoint,
32
- false,
33
- serializedTx
34
- ]);
35
- const [gasEstimateForL1, ,] = result;
36
21
  return {
37
- gasUsed: gasEstimateForL1,
22
+ gasUsed: gasForL1,
38
23
  // scaling by 10% as recommended by docs.
39
24
  // https://github.com/OffchainLabs/nitro-contracts/blob/bdb8f8c68b2229fe9309fe9c03b37017abd1a2cd/src/node-interface/NodeInterface.sol#L105
40
- gasLimit: scaleBigIntByPercent(gasEstimateForL1, 110n)
25
+ gasLimit: scaleBigIntByPercent(gasForL1, 110n)
41
26
  };
42
27
  }
43
28
  default:
44
29
  return { gasUsed: 0n, gasLimit: 0n };
45
30
  }
46
31
  };
47
- const getBundleGasLimit = async ({ config, userOpBundle, entryPoint, executorAddress }) => {
48
- const { rpcGasEstimate, publicClient } = config;
49
- let gasLimit;
50
- // On some chains we can't rely on local calculations and have to estimate the gasLimit from RPC
51
- if (rpcGasEstimate) {
52
- gasLimit = await publicClient.estimateGas({
53
- to: entryPoint,
54
- account: executorAddress,
55
- data: encodeHandleOpsCalldata({
56
- userOps: userOpBundle.map(({ userOp }) => userOp),
57
- beneficiary: executorAddress
58
- })
59
- });
60
- }
61
- else {
62
- const aa95GasFloor = calculateAA95GasFloor({
63
- userOps: userOpBundle.map(({ userOp }) => userOp),
64
- beneficiary: executorAddress
65
- });
66
- const eip7702UserOpCount = userOpBundle.filter(({ userOp }) => userOp.eip7702Auth).length;
67
- const eip7702Overhead = BigInt(eip7702UserOpCount) * 40000n;
68
- // Add 5% safety margin to local estimates.
69
- gasLimit = scaleBigIntByPercent(aa95GasFloor + eip7702Overhead, 105n);
70
- }
71
- return gasLimit;
72
- };
73
32
  const getFilterOpsResult = async ({ config, userOpBundle, networkBaseFee, beneficiary }) => {
74
33
  const { publicClient, pimlicoSimulationContract, codeOverrideSupport, fixedGasLimitForEstimation } = config;
75
34
  if (!pimlicoSimulationContract) {
@@ -270,15 +229,23 @@ export async function filterOpsAndEstimateGas({ checkEip7702AuthNonces, userOpBu
270
229
  rejectedUserOps: allRejectedUserOps
271
230
  };
272
231
  }
273
- // find overhead that can't be calculated onchain
274
- const bundleGasUsed = filterOpsResult.gasUsed + 21000n + offChainOverhead.gasUsed;
275
232
  // Find gasLimit needed for this bundle
276
233
  const bundleGasLimit = await getBundleGasLimit({
277
234
  config,
278
- userOpBundle: userOpsToBundle,
235
+ userOps: userOpsToBundle.map(({ userOp }) => userOp),
279
236
  entryPoint,
280
237
  executorAddress: beneficiary
281
238
  });
239
+ let bundleGasUsed = 0n;
240
+ if (config.chainType === "monad") {
241
+ // Monad uses the entire tx.gasLimit.
242
+ bundleGasUsed = bundleGasLimit;
243
+ }
244
+ else {
245
+ // Find overhead that can't be calculated onchain.
246
+ bundleGasUsed =
247
+ filterOpsResult.gasUsed + 21000n + offChainOverhead.gasUsed;
248
+ }
282
249
  return {
283
250
  status: "success",
284
251
  userOpsToBundle,
@@ -1 +1 @@
1
- {"version":3,"file":"filterOpsAndEstimateGas.js","sourceRoot":"","sources":["../../executor/filterOpsAndEstimateGas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filterOpsAndEstimateGas.js","sourceRoot":"","sources":["../../executor/filterOpsAndEstimateGas.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,12 @@ import { type Logger } from "../utils/index.js";
3
3
  import { type Account, type Address, type BaseError, type Hex } from "viem";
4
4
  import type { SignedAuthorizationList } from "viem";
5
5
  import type { AltoConfig } from "../createConfig.js";
6
+ export declare const getBundleGasLimit: ({ config, userOps, entryPoint, executorAddress }: {
7
+ config: AltoConfig;
8
+ userOps: UserOperation[];
9
+ entryPoint: Address;
10
+ executorAddress: Address;
11
+ }) => Promise<bigint>;
6
12
  export declare const isTransactionUnderpricedError: (e: BaseError) => boolean;
7
13
  export declare function calculateAA95GasFloor({ userOps, beneficiary }: {
8
14
  userOps: UserOperation[];
@@ -1,8 +1,34 @@
1
1
  import { EntryPointV06Abi, EntryPointV07Abi } from "../types/index.js";
2
- import { isVersion06, isVersion07, toPackedUserOp } from "../utils/index.js";
2
+ import { isVersion06, isVersion07, scaleBigIntByPercent, toPackedUserOp } from "../utils/index.js";
3
3
  import * as sentry from "@sentry/node";
4
4
  import { encodeFunctionData, toBytes } from "viem";
5
5
  import { getEip7702AuthAddress } from "../utils/eip7702.js";
6
+ export const getBundleGasLimit = async ({ config, userOps, entryPoint, executorAddress }) => {
7
+ const { rpcGasEstimate, publicClient } = config;
8
+ let gasLimit;
9
+ // On some chains we can't rely on local calculations and have to estimate the gasLimit from RPC
10
+ if (rpcGasEstimate) {
11
+ gasLimit = await publicClient.estimateGas({
12
+ to: entryPoint,
13
+ account: executorAddress,
14
+ data: encodeHandleOpsCalldata({
15
+ userOps: userOps,
16
+ beneficiary: executorAddress
17
+ })
18
+ });
19
+ }
20
+ else {
21
+ const aa95GasFloor = calculateAA95GasFloor({
22
+ userOps: userOps,
23
+ beneficiary: executorAddress
24
+ });
25
+ const eip7702UserOpCount = userOps.filter((userOp) => userOp.eip7702Auth).length;
26
+ const eip7702Overhead = BigInt(eip7702UserOpCount) * 40000n;
27
+ // Add 5% safety margin to local estimates.
28
+ gasLimit = scaleBigIntByPercent(aa95GasFloor + eip7702Overhead, 105n);
29
+ }
30
+ return gasLimit;
31
+ };
6
32
  export const isTransactionUnderpricedError = (e) => {
7
33
  const transactionUnderPriceError = e.walk((e) => e?.message
8
34
  ?.toLowerCase()
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../executor/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../executor/utils.ts"],"names":[],"mappings":"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"}
@@ -47,11 +47,12 @@ export declare class Mempool {
47
47
  factories: Set<Address>;
48
48
  }>;
49
49
  add(userOp: UserOperation, entryPoint: Address, referencedContracts?: ReferencedCodeHashes): Promise<[boolean, string]>;
50
- shouldSkip({ userOpInfo, paymasterDeposit, stakedEntityCount, knownEntities, senders, storageMap, entryPoint }: {
50
+ shouldSkip({ userOpInfo, paymasterDeposit, touchedEip7702Auth, stakedEntityCount, knownEntities, senders, storageMap, entryPoint }: {
51
51
  userOpInfo: UserOpInfo;
52
52
  paymasterDeposit: {
53
53
  [paymaster: string]: bigint;
54
54
  };
55
+ touchedEip7702Auth: Map<Address, Address>;
55
56
  stakedEntityCount: {
56
57
  [addr: string]: number;
57
58
  };
@@ -69,6 +70,7 @@ export declare class Mempool {
69
70
  paymasterDeposit: {
70
71
  [paymaster: string]: bigint;
71
72
  };
73
+ touchedEip7702Auth: Map<Address, Address>;
72
74
  stakedEntityCount: {
73
75
  [addr: string]: number;
74
76
  };
@@ -1,8 +1,8 @@
1
1
  import { ERC7769Errors, EntryPointV06Abi, EntryPointV07Abi, RpcError } from "../types/index.js";
2
2
  import { getAAError, getAddressFromInitCodeOrPaymasterAndData, getUserOpHash, isVersion06, isVersion07, isVersion08, jsonStringifyWithBigint, scaleBigIntByPercent } from "../utils/index.js";
3
3
  import { getAddress, getContract } from "viem";
4
- import { generatePrivateKey, privateKeyToAddress } from "viem/accounts";
5
4
  import { calculateAA95GasFloor } from "../executor/utils.js";
5
+ import { getEip7702AuthAddress } from "../utils/eip7702.js";
6
6
  import { ReputationStatuses } from "./reputationManager.js";
7
7
  export class Mempool {
8
8
  config;
@@ -214,7 +214,33 @@ export class Mempool {
214
214
  return [true, ""];
215
215
  }
216
216
  // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: <explanation>
217
- async shouldSkip({ userOpInfo, paymasterDeposit, stakedEntityCount, knownEntities, senders, storageMap, entryPoint }) {
217
+ async shouldSkip({ userOpInfo, paymasterDeposit, touchedEip7702Auth, stakedEntityCount, knownEntities, senders, storageMap, entryPoint }) {
218
+ const { userOp, userOpHash, referencedContracts } = userOpInfo;
219
+ // Check conflicting EIP-7702 auths (same sender, different delegate address)
220
+ if (userOp.eip7702Auth) {
221
+ const auth = getEip7702AuthAddress(userOp.eip7702Auth);
222
+ const existingAuth = touchedEip7702Auth.get(userOp.sender);
223
+ if (existingAuth && existingAuth !== auth) {
224
+ this.logger.warn({
225
+ userOpHash,
226
+ conflictingAuth: auth,
227
+ existingAuth
228
+ }, "Conflicting EIP-7702 auths");
229
+ return {
230
+ skip: true,
231
+ removeOutstanding: false,
232
+ paymasterDeposit,
233
+ touchedEip7702Auth,
234
+ stakedEntityCount,
235
+ knownEntities,
236
+ senders,
237
+ storageMap
238
+ };
239
+ }
240
+ if (!existingAuth) {
241
+ touchedEip7702Auth.set(userOp.sender, auth);
242
+ }
243
+ }
218
244
  if (!this.config.safeMode) {
219
245
  return {
220
246
  skip: false,
@@ -222,10 +248,10 @@ export class Mempool {
222
248
  stakedEntityCount,
223
249
  knownEntities,
224
250
  senders,
225
- storageMap
251
+ storageMap,
252
+ touchedEip7702Auth
226
253
  };
227
254
  }
228
- const { userOp, userOpHash, referencedContracts } = userOpInfo;
229
255
  const isUserOpV06 = isVersion06(userOp);
230
256
  const paymaster = isUserOpV06
231
257
  ? getAddressFromInitCodeOrPaymasterAndData(userOp.paymasterAndData)
@@ -244,7 +270,8 @@ export class Mempool {
244
270
  stakedEntityCount,
245
271
  knownEntities,
246
272
  senders,
247
- storageMap
273
+ storageMap,
274
+ touchedEip7702Auth
248
275
  };
249
276
  }
250
277
  if (paymasterStatus === ReputationStatuses.throttled &&
@@ -260,7 +287,8 @@ export class Mempool {
260
287
  stakedEntityCount,
261
288
  knownEntities,
262
289
  senders,
263
- storageMap
290
+ storageMap,
291
+ touchedEip7702Auth
264
292
  };
265
293
  }
266
294
  if (factoryStatus === ReputationStatuses.throttled &&
@@ -276,7 +304,8 @@ export class Mempool {
276
304
  stakedEntityCount,
277
305
  knownEntities,
278
306
  senders,
279
- storageMap
307
+ storageMap,
308
+ touchedEip7702Auth
280
309
  };
281
310
  }
282
311
  if (senders.has(userOp.sender) &&
@@ -291,7 +320,8 @@ export class Mempool {
291
320
  stakedEntityCount,
292
321
  knownEntities,
293
322
  senders,
294
- storageMap
323
+ storageMap,
324
+ touchedEip7702Auth
295
325
  };
296
326
  }
297
327
  let validationResult;
@@ -323,7 +353,8 @@ export class Mempool {
323
353
  stakedEntityCount,
324
354
  knownEntities,
325
355
  senders,
326
- storageMap
356
+ storageMap,
357
+ touchedEip7702Auth
327
358
  };
328
359
  }
329
360
  for (const storageAddress of Object.keys(validationResult.storageMap)) {
@@ -340,7 +371,8 @@ export class Mempool {
340
371
  stakedEntityCount,
341
372
  knownEntities,
342
373
  senders,
343
- storageMap
374
+ storageMap,
375
+ touchedEip7702Auth
344
376
  };
345
377
  }
346
378
  }
@@ -368,7 +400,8 @@ export class Mempool {
368
400
  stakedEntityCount,
369
401
  knownEntities,
370
402
  senders,
371
- storageMap
403
+ storageMap,
404
+ touchedEip7702Auth
372
405
  };
373
406
  }
374
407
  stakedEntityCount[paymaster] =
@@ -385,7 +418,8 @@ export class Mempool {
385
418
  stakedEntityCount,
386
419
  knownEntities,
387
420
  senders,
388
- storageMap
421
+ storageMap,
422
+ touchedEip7702Auth
389
423
  };
390
424
  }
391
425
  async getBundles(maxBundleCount) {
@@ -445,6 +479,7 @@ export class Mempool {
445
479
  submissionAttempts: 0
446
480
  };
447
481
  let gasUsed = 0n;
482
+ let touchedEip7702Auth = new Map();
448
483
  let paymasterDeposit = {};
449
484
  let stakedEntityCount = {};
450
485
  let senders = new Set();
@@ -458,6 +493,7 @@ export class Mempool {
458
493
  // Check if we should skip this operation
459
494
  const skipResult = await this.shouldSkip({
460
495
  userOpInfo: currentUserOp,
496
+ touchedEip7702Auth,
461
497
  paymasterDeposit,
462
498
  stakedEntityCount,
463
499
  knownEntities,
@@ -478,9 +514,7 @@ export class Mempool {
478
514
  }
479
515
  gasUsed += calculateAA95GasFloor({
480
516
  userOps: [userOp],
481
- beneficiary: // Use utility address if set, otherwise generate random beneficiary.
482
- this.config.utilityPrivateKey?.address ||
483
- privateKeyToAddress(generatePrivateKey())
517
+ beneficiary: this.config.utilityWalletAddress
484
518
  });
485
519
  // Break on gas limit
486
520
  if (gasUsed > maxGasLimit) {
@@ -494,6 +528,7 @@ export class Mempool {
494
528
  knownEntities = skipResult.knownEntities;
495
529
  senders = skipResult.senders;
496
530
  storageMap = skipResult.storageMap;
531
+ touchedEip7702Auth = skipResult.touchedEip7702Auth;
497
532
  this.reputationManager.decreaseUserOpCount(userOp);
498
533
  // Track the operation as active (being bundled).
499
534
  await this.store.addProcessing({
@@ -1 +1 @@
1
- {"version":3,"file":"mempool.js","sourceRoot":"","sources":["../../mempool/mempool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mempool.js","sourceRoot":"","sources":["../../mempool/mempool.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import type { GasPriceManager } from "../handlers/index.js";
2
- import { type Address, type UserOperation } from "../types/index.js";
3
- import type { AltoConfig } from "../createConfig.js";
1
+ import type { GasPriceManager } from "../../handlers/index.js";
2
+ import { type Address, type UserOperation } from "../../types/index.js";
3
+ import { type Chain, type PublicClient, type Transport } from "viem";
4
+ import type { AltoConfig } from "../../createConfig.js";
4
5
  export interface GasOverheads {
5
6
  perUserOp: bigint;
6
7
  zeroByte: bigint;
@@ -37,4 +38,19 @@ export declare function getSerializedHandleOpsTx({ userOps, entryPoint, chainId,
37
38
  removeZeros?: boolean;
38
39
  randomizeSignature?: boolean;
39
40
  }): `0x02${string}` | `0x01${string}` | `0x03${string}` | `0x04${string}` | import("viem").TransactionSerializedLegacy;
40
- //# sourceMappingURL=preVerificationGasCalulator.d.ts.map
41
+ export declare function getArbitrumL1GasEstimate({ publicClient, userOps, entryPoint }: {
42
+ publicClient: PublicClient<Transport, Chain | undefined>;
43
+ userOps: UserOperation[];
44
+ entryPoint: Address;
45
+ }): Promise<{
46
+ gasForL1: bigint;
47
+ l2BaseFee: bigint;
48
+ l1BaseFeeEstimate: bigint;
49
+ }>;
50
+ export declare function calcMonadPvg({ userOp, config, entryPoint, validate }: {
51
+ userOp: UserOperation;
52
+ config: AltoConfig;
53
+ entryPoint: Address;
54
+ validate: boolean;
55
+ }): Promise<bigint>;
56
+ //# sourceMappingURL=preVerificationGasCalculator.d.ts.map