@pimlico/alto 0.0.18 → 0.0.20

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 (749) hide show
  1. package/contracts/EIP712.sol/EIP712.json +1 -0
  2. package/contracts/ERC165.sol/ERC165.json +1 -0
  3. package/contracts/ERC20.sol/ERC20.json +1 -0
  4. package/contracts/Eip7702Support.sol/Eip7702Support.json +1 -0
  5. package/contracts/EntryPoint.sol/EntryPoint.json +1 -0
  6. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -0
  7. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -0
  8. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -0
  9. package/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride09.json +1 -0
  10. package/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -0
  11. package/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -0
  12. package/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -0
  13. package/contracts/EntryPointSimulations.sol/EntryPointSimulations09.json +1 -0
  14. package/contracts/Exec.sol/Exec.json +1 -0
  15. package/contracts/IAccount.sol/IAccount.json +1 -0
  16. package/contracts/IAccountExecute.sol/IAccountExecute.json +1 -0
  17. package/contracts/IAggregator.sol/IAggregator.json +1 -0
  18. package/contracts/IERC165.sol/IERC165.json +1 -0
  19. package/contracts/IERC5267.sol/IERC5267.json +1 -0
  20. package/contracts/IEntryPoint.sol/IEntryPoint.json +1 -0
  21. package/contracts/IEntryPointFilterOpsOverride.sol/IEntryPointFilterOpsOverride08.json +1 -0
  22. package/contracts/IEntryPointFilterOpsOverride.sol/IEntryPointFilterOpsOverride09.json +1 -0
  23. package/contracts/IEntryPointSimulations.sol/IEntryPointSimulations.json +1 -0
  24. package/contracts/INonceManager.sol/INonceManager.json +1 -0
  25. package/contracts/IPaymaster.sol/IPaymaster.json +1 -0
  26. package/contracts/ISenderCreator.sol/ISenderCreator.json +1 -0
  27. package/contracts/IStakeManager.sol/IStakeManager.json +1 -0
  28. package/contracts/LibBytes.sol/LibBytes.json +1 -0
  29. package/contracts/Math.sol/Math.json +1 -0
  30. package/contracts/MessageHashUtils.sol/MessageHashUtils.json +1 -0
  31. package/contracts/NonceManager.sol/NonceManager.json +1 -0
  32. package/contracts/Panic.sol/Panic.json +1 -0
  33. package/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -0
  34. package/contracts/ReentrancyGuard.sol/ReentrancyGuard.json +1 -0
  35. package/contracts/ReentrancyGuardTransient.sol/ReentrancyGuardTransient.json +1 -0
  36. package/contracts/SafeCast.sol/SafeCast.json +1 -0
  37. package/contracts/SenderCreator.sol/SenderCreator.json +1 -0
  38. package/contracts/ShortStrings.sol/ShortStrings.json +1 -0
  39. package/contracts/SignedMath.sol/SignedMath.json +1 -0
  40. package/contracts/SimulationOverrideHelper.sol/SimulationOverrideHelper.json +1 -0
  41. package/contracts/StakeManager.sol/StakeManager.json +1 -0
  42. package/contracts/StorageSlot.sol/StorageSlot.json +1 -0
  43. package/contracts/Strings.sol/Strings.json +1 -0
  44. package/contracts/TransientSlot.sol/TransientSlot.json +1 -0
  45. package/contracts/UserOperation.sol/UserOperationLib.json +1 -0
  46. package/contracts/UserOperationLib.sol/UserOperationLib.json +1 -0
  47. package/contracts/account-abstraction-v9/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -0
  48. package/contracts/account-abstraction-v9/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -0
  49. package/contracts/account-abstraction-v9/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -0
  50. package/contracts/account-abstraction-v9/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -0
  51. package/contracts/build-info/338795fc743ca612.json +1 -0
  52. package/contracts/build-info/44a9648cfe32a468.json +1 -0
  53. package/contracts/build-info/8dbf8a4ad39019b5.json +1 -0
  54. package/contracts/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -0
  55. package/contracts/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -0
  56. package/contracts/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -0
  57. package/contracts/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -0
  58. package/contracts/core/Eip7702Support.sol/Eip7702Support.json +1 -0
  59. package/contracts/core/NonceManager.sol/NonceManager.json +1 -0
  60. package/contracts/core/SenderCreator.sol/SenderCreator.json +1 -0
  61. package/contracts/core/StakeManager.sol/StakeManager.json +1 -0
  62. package/contracts/core/UserOperationLib.sol/UserOperationLib.json +1 -0
  63. package/contracts/interfaces/IAccount.sol/IAccount.json +1 -0
  64. package/contracts/interfaces/IAccountExecute.sol/IAccountExecute.json +1 -0
  65. package/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -0
  66. package/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -0
  67. package/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -0
  68. package/contracts/interfaces/IPaymaster.sol/IPaymaster.json +1 -0
  69. package/contracts/interfaces/ISenderCreator.sol/ISenderCreator.json +1 -0
  70. package/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -0
  71. package/contracts/overrides/Eip7702Support.sol/Eip7702Support.json +1 -0
  72. package/contracts/overrides/NonceManager.sol/NonceManager.json +1 -0
  73. package/contracts/overrides/SenderCreator.sol/SenderCreator.json +1 -0
  74. package/contracts/overrides/StakeManager.sol/StakeManager.json +1 -0
  75. package/contracts/overrides/UserOperationLib.sol/UserOperationLib.json +1 -0
  76. package/contracts/utils/Exec.sol/Exec.json +1 -0
  77. package/contracts/utils/StorageSlot.sol/StorageSlot.json +1 -0
  78. package/contracts/v09/EntryPoint.sol/EntryPoint.json +1 -0
  79. package/esm/cli/alto.js +16 -7
  80. package/esm/cli/alto.js.map +1 -1
  81. package/esm/cli/config/bundler.d.ts +690 -540
  82. package/esm/cli/config/bundler.js +101 -66
  83. package/esm/cli/config/bundler.js.map +1 -1
  84. package/esm/cli/config/options.d.ts +2 -1
  85. package/esm/cli/config/options.js +207 -59
  86. package/esm/cli/config/options.js.map +1 -1
  87. package/esm/cli/customTransport.d.ts +3 -3
  88. package/esm/cli/customTransport.js +4 -3
  89. package/esm/cli/customTransport.js.map +1 -1
  90. package/esm/cli/deploySimulationsContract.d.ts +5 -2
  91. package/esm/cli/deploySimulationsContract.js +108 -40
  92. package/esm/cli/deploySimulationsContract.js.map +1 -1
  93. package/esm/cli/handler.js +94 -22
  94. package/esm/cli/handler.js.map +1 -1
  95. package/esm/cli/instrumentation.js +7 -1
  96. package/esm/cli/instrumentation.js.map +1 -1
  97. package/esm/cli/parseArgs.js.map +1 -1
  98. package/esm/cli/setupServer.js +63 -63
  99. package/esm/cli/setupServer.js.map +1 -1
  100. package/esm/cli/shutDown.d.ts +20 -0
  101. package/esm/cli/shutDown.js +260 -0
  102. package/esm/cli/shutDown.js.map +1 -0
  103. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -0
  104. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -0
  105. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -0
  106. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride09.json +1 -0
  107. package/esm/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -0
  108. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -0
  109. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -0
  110. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations09.json +1 -0
  111. package/esm/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -0
  112. package/esm/createConfig.d.ts +12 -4
  113. package/esm/createConfig.js +2 -0
  114. package/esm/createConfig.js.map +1 -1
  115. package/esm/executor/bundleManager.d.ts +111 -0
  116. package/esm/executor/bundleManager.js +354 -0
  117. package/esm/executor/bundleManager.js.map +1 -0
  118. package/esm/executor/executor.d.ts +18 -23
  119. package/esm/executor/executor.js +183 -119
  120. package/esm/executor/executor.js.map +1 -1
  121. package/esm/executor/executorManager.d.ts +39 -88
  122. package/esm/executor/executorManager.js +325 -550
  123. package/esm/executor/executorManager.js.map +1 -1
  124. package/esm/executor/filterOpsAndEstimateGas.d.ts +39 -0
  125. package/esm/executor/filterOpsAndEstimateGas.js +280 -0
  126. package/esm/executor/filterOpsAndEstimateGas.js.map +1 -0
  127. package/esm/executor/getBundleStatus.d.ts +25 -0
  128. package/esm/executor/getBundleStatus.js +35 -0
  129. package/esm/executor/getBundleStatus.js.map +1 -0
  130. package/esm/executor/index.d.ts +1 -0
  131. package/esm/executor/index.js +1 -0
  132. package/esm/executor/index.js.map +1 -1
  133. package/esm/executor/senderManager/createMemorySenderManager.d.ts +3 -3
  134. package/esm/executor/senderManager/createMemorySenderManager.js +14 -1
  135. package/esm/executor/senderManager/createMemorySenderManager.js.map +1 -1
  136. package/esm/executor/senderManager/createRedisSenderManager.d.ts +5 -4
  137. package/esm/executor/senderManager/createRedisSenderManager.js +4 -7
  138. package/esm/executor/senderManager/createRedisSenderManager.js.map +1 -1
  139. package/esm/executor/senderManager/flushOnStartUp.d.ts +3 -3
  140. package/esm/executor/senderManager/flushOnStartUp.js +4 -4
  141. package/esm/executor/senderManager/flushOnStartUp.js.map +1 -1
  142. package/esm/executor/senderManager/index.d.ts +4 -3
  143. package/esm/executor/senderManager/index.js +6 -2
  144. package/esm/executor/senderManager/index.js.map +1 -1
  145. package/esm/executor/senderManager/validateAndRefill.d.ts +4 -4
  146. package/esm/executor/senderManager/validateAndRefill.js +3 -3
  147. package/esm/executor/senderManager/validateAndRefill.js.map +1 -1
  148. package/esm/executor/utilityWalletMonitor.d.ts +5 -5
  149. package/esm/executor/utilityWalletMonitor.js +1 -1
  150. package/esm/executor/utilityWalletMonitor.js.map +1 -1
  151. package/esm/executor/utils.d.ts +14 -6
  152. package/esm/executor/utils.js +68 -37
  153. package/esm/executor/utils.js.map +1 -1
  154. package/esm/handlers/arbitrumGasPriceManager.d.ts +4 -3
  155. package/esm/handlers/arbitrumGasPriceManager.js +9 -5
  156. package/esm/handlers/arbitrumGasPriceManager.js.map +1 -1
  157. package/esm/handlers/eventManager.d.ts +19 -18
  158. package/esm/handlers/eventManager.js +81 -61
  159. package/esm/handlers/eventManager.js.map +1 -1
  160. package/esm/handlers/gasPriceManager.d.ts +12 -10
  161. package/esm/handlers/gasPriceManager.js +79 -125
  162. package/esm/handlers/gasPriceManager.js.map +1 -1
  163. package/esm/handlers/mantleGasPriceManager.d.ts +5 -5
  164. package/esm/handlers/mantleGasPriceManager.js +4 -4
  165. package/esm/handlers/mantleGasPriceManager.js.map +1 -1
  166. package/esm/handlers/optimismManager.d.ts +2 -2
  167. package/esm/handlers/optimismManager.js +1 -1
  168. package/esm/handlers/optimismManager.js.map +1 -1
  169. package/esm/mempool/index.d.ts +1 -1
  170. package/esm/mempool/index.js +1 -1
  171. package/esm/mempool/index.js.map +1 -1
  172. package/esm/mempool/mempool.d.ts +71 -33
  173. package/esm/mempool/mempool.js +231 -155
  174. package/esm/mempool/mempool.js.map +1 -1
  175. package/esm/mempool/reputationManager.d.ts +36 -36
  176. package/esm/mempool/reputationManager.js +93 -97
  177. package/esm/mempool/reputationManager.js.map +1 -1
  178. package/esm/mempool/statusManager.d.ts +20 -0
  179. package/esm/mempool/statusManager.js +143 -0
  180. package/esm/mempool/statusManager.js.map +1 -0
  181. package/esm/receiptCache/createMemoryReceiptCache.d.ts +3 -0
  182. package/esm/receiptCache/createMemoryReceiptCache.js +30 -0
  183. package/esm/receiptCache/createMemoryReceiptCache.js.map +1 -0
  184. package/esm/receiptCache/createRedisReceiptCache.d.ts +10 -0
  185. package/esm/receiptCache/createRedisReceiptCache.js +56 -0
  186. package/esm/receiptCache/createRedisReceiptCache.js.map +1 -0
  187. package/esm/receiptCache/index.d.ts +11 -0
  188. package/esm/receiptCache/index.js +21 -0
  189. package/esm/receiptCache/index.js.map +1 -0
  190. package/esm/rpc/createMethodHandler.d.ts +2 -2
  191. package/esm/rpc/createMethodHandler.js.map +1 -1
  192. package/esm/rpc/estimation/gasEstimationHandler.d.ts +15 -16
  193. package/esm/rpc/estimation/gasEstimationHandler.js +24 -24
  194. package/esm/rpc/estimation/gasEstimationHandler.js.map +1 -1
  195. package/esm/rpc/estimation/gasEstimations06.d.ts +18 -0
  196. package/esm/rpc/estimation/gasEstimations06.js +45 -0
  197. package/esm/rpc/estimation/gasEstimations06.js.map +1 -0
  198. package/esm/rpc/estimation/gasEstimations07.d.ts +63 -0
  199. package/esm/rpc/estimation/gasEstimations07.js +384 -0
  200. package/esm/rpc/estimation/gasEstimations07.js.map +1 -0
  201. package/esm/rpc/estimation/preVerificationGasCalculator.d.ts +56 -0
  202. package/esm/rpc/estimation/preVerificationGasCalculator.js +467 -0
  203. package/esm/rpc/estimation/preVerificationGasCalculator.js.map +1 -0
  204. package/esm/rpc/estimation/types.d.ts +25 -111
  205. package/esm/rpc/estimation/types.js +5 -121
  206. package/esm/rpc/estimation/types.js.map +1 -1
  207. package/esm/rpc/estimation/utils.d.ts +69 -0
  208. package/esm/rpc/estimation/utils.js +240 -0
  209. package/esm/rpc/estimation/utils.js.map +1 -0
  210. package/{lib/rpc/methods/pimlico_sendUserOperationNow.d.ts → esm/rpc/methods/boost_sendUserOperation.d.ts} +299 -385
  211. package/esm/rpc/methods/boost_sendUserOperation.js +57 -0
  212. package/esm/rpc/methods/boost_sendUserOperation.js.map +1 -0
  213. package/esm/rpc/methods/debug_bundler_clearReputation.js +2 -2
  214. package/esm/rpc/methods/debug_bundler_clearReputation.js.map +1 -1
  215. package/esm/rpc/methods/debug_bundler_clearState.js +2 -2
  216. package/esm/rpc/methods/debug_bundler_clearState.js.map +1 -1
  217. package/esm/rpc/methods/debug_bundler_dumpMempool.d.ts +338 -0
  218. package/esm/rpc/methods/debug_bundler_dumpMempool.js +1 -1
  219. package/esm/rpc/methods/debug_bundler_dumpMempool.js.map +1 -1
  220. package/esm/rpc/methods/debug_bundler_dumpReputation.js +2 -2
  221. package/esm/rpc/methods/debug_bundler_dumpReputation.js.map +1 -1
  222. package/esm/rpc/methods/debug_bundler_getStakeStatus.js +1 -2
  223. package/esm/rpc/methods/debug_bundler_getStakeStatus.js.map +1 -1
  224. package/esm/rpc/methods/debug_bundler_sendBundleNow.js +10 -2
  225. package/esm/rpc/methods/debug_bundler_sendBundleNow.js.map +1 -1
  226. package/esm/rpc/methods/debug_bundler_setBundlingMode.js +1 -1
  227. package/esm/rpc/methods/debug_bundler_setBundlingMode.js.map +1 -1
  228. package/esm/rpc/methods/debug_bundler_setReputation.js +1 -1
  229. package/esm/rpc/methods/debug_bundler_setReputation.js.map +1 -1
  230. package/esm/rpc/methods/eth_chainId.js +1 -1
  231. package/esm/rpc/methods/eth_chainId.js.map +1 -1
  232. package/esm/rpc/methods/eth_estimateUserOperationGas.d.ts +910 -301
  233. package/esm/rpc/methods/eth_estimateUserOperationGas.js +228 -12
  234. package/esm/rpc/methods/eth_estimateUserOperationGas.js.map +1 -1
  235. package/esm/rpc/methods/eth_getUserOperationByHash.d.ts +621 -11
  236. package/esm/rpc/methods/eth_getUserOperationByHash.js +8 -8
  237. package/esm/rpc/methods/eth_getUserOperationByHash.js.map +1 -1
  238. package/esm/rpc/methods/eth_getUserOperationReceipt.d.ts +26 -26
  239. package/esm/rpc/methods/eth_getUserOperationReceipt.js +10 -4
  240. package/esm/rpc/methods/eth_getUserOperationReceipt.js.map +1 -1
  241. package/esm/rpc/methods/eth_sendUserOperation.d.ts +319 -2
  242. package/esm/rpc/methods/eth_sendUserOperation.js +223 -20
  243. package/esm/rpc/methods/eth_sendUserOperation.js.map +1 -1
  244. package/esm/rpc/methods/eth_supportedEntryPoints.js +1 -1
  245. package/esm/rpc/methods/eth_supportedEntryPoints.js.map +1 -1
  246. package/esm/rpc/methods/index.js +11 -6
  247. package/esm/rpc/methods/index.js.map +1 -1
  248. package/esm/rpc/methods/pimlico_getUserOperationGasPrice.js +1 -1
  249. package/esm/rpc/methods/pimlico_getUserOperationGasPrice.js.map +1 -1
  250. package/esm/rpc/methods/pimlico_getUserOperationStatus.d.ts +6 -6
  251. package/esm/rpc/methods/pimlico_getUserOperationStatus.js +3 -3
  252. package/esm/rpc/methods/pimlico_getUserOperationStatus.js.map +1 -1
  253. package/esm/rpc/methods/pimlico_sendUserOperationNow.d.ts +330 -26
  254. package/esm/rpc/methods/pimlico_sendUserOperationNow.js +27 -24
  255. package/esm/rpc/methods/pimlico_sendUserOperationNow.js.map +1 -1
  256. package/{lib/rpc/methods/eth_estimateUserOperationGas.d.ts → esm/rpc/methods/pimlico_simulateAssetChange.d.ts} +891 -333
  257. package/esm/rpc/methods/pimlico_simulateAssetChange.js +113 -0
  258. package/esm/rpc/methods/pimlico_simulateAssetChange.js.map +1 -0
  259. package/esm/rpc/rpcHandler.d.ts +30 -54
  260. package/esm/rpc/rpcHandler.js +137 -315
  261. package/esm/rpc/rpcHandler.js.map +1 -1
  262. package/esm/rpc/server.d.ts +5 -5
  263. package/esm/rpc/server.js +15 -11
  264. package/esm/rpc/server.js.map +1 -1
  265. package/esm/rpc/validation/BundlerCollectorTracerV06.js +2 -2
  266. package/esm/rpc/validation/BundlerCollectorTracerV06.js.map +1 -1
  267. package/esm/rpc/validation/BundlerCollectorTracerV07.js +1 -1
  268. package/esm/rpc/validation/BundlerCollectorTracerV07.js.map +1 -1
  269. package/esm/rpc/validation/SafeValidator.d.ts +20 -22
  270. package/esm/rpc/validation/SafeValidator.js +87 -100
  271. package/esm/rpc/validation/SafeValidator.js.map +1 -1
  272. package/esm/rpc/validation/TracerResultParserV06.d.ts +3 -3
  273. package/esm/rpc/validation/TracerResultParserV06.js +19 -19
  274. package/esm/rpc/validation/TracerResultParserV06.js.map +1 -1
  275. package/esm/rpc/validation/TracerResultParserV07.d.ts +3 -3
  276. package/esm/rpc/validation/TracerResultParserV07.js +25 -25
  277. package/esm/rpc/validation/TracerResultParserV07.js.map +1 -1
  278. package/esm/rpc/validation/UnsafeValidator.d.ts +32 -33
  279. package/esm/rpc/validation/UnsafeValidator.js +117 -101
  280. package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
  281. package/esm/rpc/validation/tracer.d.ts +1 -1
  282. package/esm/store/createMempoolStore.d.ts +3 -3
  283. package/esm/store/createMempoolStore.js +100 -113
  284. package/esm/store/createMempoolStore.js.map +1 -1
  285. package/esm/store/index.d.ts +4 -80
  286. package/esm/store/index.js +4 -1
  287. package/esm/store/index.js.map +1 -1
  288. package/esm/store/outstanding/index.d.ts +13 -0
  289. package/esm/store/outstanding/index.js +16 -0
  290. package/esm/store/outstanding/index.js.map +1 -0
  291. package/esm/store/outstanding/memory.d.ts +29 -0
  292. package/esm/store/outstanding/memory.js +263 -0
  293. package/esm/store/outstanding/memory.js.map +1 -0
  294. package/esm/store/outstanding/redis.d.ts +11 -0
  295. package/esm/store/outstanding/redis.js +229 -0
  296. package/esm/store/outstanding/redis.js.map +1 -0
  297. package/esm/store/outstanding/types.d.ts +19 -0
  298. package/esm/store/outstanding/types.js +2 -0
  299. package/esm/store/outstanding/types.js.map +1 -0
  300. package/esm/store/processing/index.d.ts +11 -0
  301. package/esm/store/processing/index.js +17 -0
  302. package/esm/store/processing/index.js.map +1 -0
  303. package/esm/store/processing/memory.d.ts +16 -0
  304. package/esm/store/processing/memory.js +58 -0
  305. package/esm/store/processing/memory.js.map +1 -0
  306. package/esm/store/processing/redis.d.ts +23 -0
  307. package/esm/store/processing/redis.js +85 -0
  308. package/esm/store/processing/redis.js.map +1 -0
  309. package/esm/store/processing/types.d.ts +10 -0
  310. package/esm/store/processing/types.js +2 -0
  311. package/esm/store/processing/types.js.map +1 -0
  312. package/esm/store/types.d.ts +50 -0
  313. package/esm/store/types.js +2 -0
  314. package/esm/store/types.js.map +1 -0
  315. package/esm/types/contracts/PimlicoSimulations.d.ts +1661 -0
  316. package/esm/types/contracts/{EntryPointSimulationsV7.js → PimlicoSimulations.js} +1104 -1788
  317. package/esm/types/contracts/PimlicoSimulations.js.map +1 -0
  318. package/esm/types/contracts/index.d.ts +1 -3
  319. package/esm/types/contracts/index.js +1 -3
  320. package/esm/types/contracts/index.js.map +1 -1
  321. package/esm/types/gasPrice.js +0 -18
  322. package/esm/types/gasPrice.js.map +1 -1
  323. package/esm/types/interfaces.d.ts +26 -26
  324. package/esm/types/mempool.d.ts +14 -28
  325. package/esm/types/mempool.js +1 -7
  326. package/esm/types/mempool.js.map +1 -1
  327. package/esm/types/schemas.d.ts +26347 -10767
  328. package/esm/types/schemas.js +202 -38
  329. package/esm/types/schemas.js.map +1 -1
  330. package/esm/types/utils.d.ts +2 -5
  331. package/esm/types/utils.js +16 -18
  332. package/esm/types/utils.js.map +1 -1
  333. package/esm/types/validation.d.ts +9447 -8727
  334. package/esm/types/validation.js +123 -161
  335. package/esm/types/validation.js.map +1 -1
  336. package/esm/utils/asyncTimeout.d.ts +5 -0
  337. package/esm/utils/asyncTimeout.js +23 -0
  338. package/esm/utils/asyncTimeout.js.map +1 -0
  339. package/esm/utils/bigInt.d.ts +9 -0
  340. package/esm/utils/bigInt.js +19 -2
  341. package/esm/utils/bigInt.js.map +1 -1
  342. package/esm/utils/eip7702.d.ts +4 -3
  343. package/esm/utils/eip7702.js +16 -7
  344. package/esm/utils/eip7702.js.map +1 -1
  345. package/esm/utils/entryPointOverrides.d.ts +12 -0
  346. package/esm/utils/entryPointOverrides.js +71 -0
  347. package/esm/utils/entryPointOverrides.js.map +1 -0
  348. package/esm/utils/helpers.d.ts +5 -3
  349. package/esm/utils/helpers.js +36 -13
  350. package/esm/utils/helpers.js.map +1 -1
  351. package/esm/utils/index.d.ts +2 -2
  352. package/esm/utils/index.js +1 -1
  353. package/esm/utils/index.js.map +1 -1
  354. package/esm/utils/metrics.d.ts +11 -9
  355. package/esm/utils/metrics.js +44 -25
  356. package/esm/utils/metrics.js.map +1 -1
  357. package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.d.ts +2 -2
  358. package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.js +2 -2
  359. package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.js.map +1 -1
  360. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.d.ts +26 -4
  361. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js +111 -71
  362. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js.map +1 -1
  363. package/esm/utils/minMaxQueue/index.d.ts +3 -3
  364. package/esm/utils/minMaxQueue/index.js +4 -3
  365. package/esm/utils/minMaxQueue/index.js.map +1 -1
  366. package/esm/utils/rpc-reply.d.ts +3 -3
  367. package/esm/utils/rpc-reply.js.map +1 -1
  368. package/esm/utils/toViemStateOverrides.d.ts +4 -0
  369. package/esm/utils/toViemStateOverrides.js +44 -0
  370. package/esm/utils/toViemStateOverrides.js.map +1 -0
  371. package/esm/utils/userop.d.ts +89 -87
  372. package/esm/utils/userop.js +207 -439
  373. package/esm/utils/userop.js.map +1 -1
  374. package/package.json +12 -7
  375. package/esm/executor/fastlane.d.ts +0 -9
  376. package/esm/executor/fastlane.js +0 -37
  377. package/esm/executor/fastlane.js.map +0 -1
  378. package/esm/executor/filterOpsAndEStimateGas.d.ts +0 -29
  379. package/esm/executor/filterOpsAndEStimateGas.js +0 -198
  380. package/esm/executor/filterOpsAndEStimateGas.js.map +0 -1
  381. package/esm/mempool/monitoring.d.ts +0 -14
  382. package/esm/mempool/monitoring.js +0 -97
  383. package/esm/mempool/monitoring.js.map +0 -1
  384. package/esm/rpc/estimation/gasEstimationsV06.d.ts +0 -19
  385. package/esm/rpc/estimation/gasEstimationsV06.js +0 -144
  386. package/esm/rpc/estimation/gasEstimationsV06.js.map +0 -1
  387. package/esm/rpc/estimation/gasEstimationsV07.d.ts +0 -101
  388. package/esm/rpc/estimation/gasEstimationsV07.js +0 -721
  389. package/esm/rpc/estimation/gasEstimationsV07.js.map +0 -1
  390. package/esm/store/createMemoryOutstandingStore.d.ts +0 -28
  391. package/esm/store/createMemoryOutstandingStore.js +0 -231
  392. package/esm/store/createMemoryOutstandingStore.js.map +0 -1
  393. package/esm/store/createRedisOutstandingStore.d.ts +0 -27
  394. package/esm/store/createRedisOutstandingStore.js +0 -344
  395. package/esm/store/createRedisOutstandingStore.js.map +0 -1
  396. package/esm/store/createRedisStore.d.ts +0 -9
  397. package/esm/store/createRedisStore.js +0 -131
  398. package/esm/store/createRedisStore.js.map +0 -1
  399. package/esm/store/createStore.d.ts +0 -6
  400. package/esm/store/createStore.js +0 -66
  401. package/esm/store/createStore.js.map +0 -1
  402. package/esm/types/contracts/EntryPointSimulationsV6.d.ts +0 -34
  403. package/esm/types/contracts/EntryPointSimulationsV6.js +0 -48
  404. package/esm/types/contracts/EntryPointSimulationsV6.js.map +0 -1
  405. package/esm/types/contracts/EntryPointSimulationsV7.d.ts +0 -2193
  406. package/esm/types/contracts/EntryPointSimulationsV7.js.map +0 -1
  407. package/esm/types/contracts/PimlicoEntryPointSimulations.d.ts +0 -26
  408. package/esm/types/contracts/PimlicoEntryPointSimulations.js +0 -38
  409. package/esm/types/contracts/PimlicoEntryPointSimulations.js.map +0 -1
  410. package/esm/utils/validation.d.ts +0 -76
  411. package/esm/utils/validation.js +0 -484
  412. package/esm/utils/validation.js.map +0 -1
  413. package/lib/cli/alto.d.ts +0 -7
  414. package/lib/cli/alto.js +0 -141
  415. package/lib/cli/alto.js.map +0 -1
  416. package/lib/cli/config/bundler.d.ts +0 -2836
  417. package/lib/cli/config/bundler.js +0 -222
  418. package/lib/cli/config/bundler.js.map +0 -1
  419. package/lib/cli/config/index.d.ts +0 -3
  420. package/lib/cli/config/index.js +0 -19
  421. package/lib/cli/config/index.js.map +0 -1
  422. package/lib/cli/config/options.d.ts +0 -13
  423. package/lib/cli/config/options.js +0 -553
  424. package/lib/cli/config/options.js.map +0 -1
  425. package/lib/cli/customTransport.d.ts +0 -14
  426. package/lib/cli/customTransport.js +0 -94
  427. package/lib/cli/customTransport.js.map +0 -1
  428. package/lib/cli/deploySimulationsContract.d.ts +0 -13
  429. package/lib/cli/deploySimulationsContract.js +0 -112
  430. package/lib/cli/deploySimulationsContract.js.map +0 -1
  431. package/lib/cli/handler.d.ts +0 -3
  432. package/lib/cli/handler.js +0 -157
  433. package/lib/cli/handler.js.map +0 -1
  434. package/lib/cli/index.d.ts +0 -4
  435. package/lib/cli/index.js +0 -20
  436. package/lib/cli/index.js.map +0 -1
  437. package/lib/cli/instrumentation.d.ts +0 -2
  438. package/lib/cli/instrumentation.js +0 -47
  439. package/lib/cli/instrumentation.js.map +0 -1
  440. package/lib/cli/parseArgs.d.ts +0 -8
  441. package/lib/cli/parseArgs.js +0 -25
  442. package/lib/cli/parseArgs.js.map +0 -1
  443. package/lib/cli/setupServer.d.ts +0 -13
  444. package/lib/cli/setupServer.js +0 -266
  445. package/lib/cli/setupServer.js.map +0 -1
  446. package/lib/cli/util.d.ts +0 -22
  447. package/lib/cli/util.js +0 -34
  448. package/lib/cli/util.js.map +0 -1
  449. package/lib/createConfig.d.ts +0 -16
  450. package/lib/createConfig.js +0 -13
  451. package/lib/createConfig.js.map +0 -1
  452. package/lib/executor/executor.d.ts +0 -65
  453. package/lib/executor/executor.js +0 -285
  454. package/lib/executor/executor.js.map +0 -1
  455. package/lib/executor/executorManager.d.ts +0 -107
  456. package/lib/executor/executorManager.js +0 -682
  457. package/lib/executor/executorManager.js.map +0 -1
  458. package/lib/executor/fastlane.d.ts +0 -9
  459. package/lib/executor/fastlane.js +0 -41
  460. package/lib/executor/fastlane.js.map +0 -1
  461. package/lib/executor/filterOpsAndEStimateGas.d.ts +0 -29
  462. package/lib/executor/filterOpsAndEStimateGas.js +0 -225
  463. package/lib/executor/filterOpsAndEStimateGas.js.map +0 -1
  464. package/lib/executor/index.d.ts +0 -5
  465. package/lib/executor/index.js +0 -21
  466. package/lib/executor/index.js.map +0 -1
  467. package/lib/executor/senderManager/createMemorySenderManager.d.ts +0 -8
  468. package/lib/executor/senderManager/createMemorySenderManager.js +0 -45
  469. package/lib/executor/senderManager/createMemorySenderManager.js.map +0 -1
  470. package/lib/executor/senderManager/createRedisSenderManager.d.ts +0 -8
  471. package/lib/executor/senderManager/createRedisSenderManager.js +0 -85
  472. package/lib/executor/senderManager/createRedisSenderManager.js.map +0 -1
  473. package/lib/executor/senderManager/flushOnStartUp.d.ts +0 -9
  474. package/lib/executor/senderManager/flushOnStartUp.js +0 -37
  475. package/lib/executor/senderManager/flushOnStartUp.js.map +0 -1
  476. package/lib/executor/senderManager/index.d.ts +0 -15
  477. package/lib/executor/senderManager/index.js +0 -25
  478. package/lib/executor/senderManager/index.js.map +0 -1
  479. package/lib/executor/senderManager/validateAndRefill.d.ts +0 -11
  480. package/lib/executor/senderManager/validateAndRefill.js +0 -115
  481. package/lib/executor/senderManager/validateAndRefill.js.map +0 -1
  482. package/lib/executor/utilityWalletMonitor.d.ts +0 -19
  483. package/lib/executor/utilityWalletMonitor.js +0 -42
  484. package/lib/executor/utilityWalletMonitor.js.map +0 -1
  485. package/lib/executor/utils.d.ts +0 -31
  486. package/lib/executor/utils.js +0 -170
  487. package/lib/executor/utils.js.map +0 -1
  488. package/lib/handlers/arbitrumGasPriceManager.d.ts +0 -14
  489. package/lib/handlers/arbitrumGasPriceManager.js +0 -39
  490. package/lib/handlers/arbitrumGasPriceManager.js.map +0 -1
  491. package/lib/handlers/eventManager.d.ts +0 -28
  492. package/lib/handlers/eventManager.js +0 -207
  493. package/lib/handlers/eventManager.js.map +0 -1
  494. package/lib/handlers/gasPriceManager.d.ts +0 -36
  495. package/lib/handlers/gasPriceManager.js +0 -423
  496. package/lib/handlers/gasPriceManager.js.map +0 -1
  497. package/lib/handlers/index.d.ts +0 -3
  498. package/lib/handlers/index.js +0 -19
  499. package/lib/handlers/index.js.map +0 -1
  500. package/lib/handlers/mantleGasPriceManager.d.ts +0 -23
  501. package/lib/handlers/mantleGasPriceManager.js +0 -44
  502. package/lib/handlers/mantleGasPriceManager.js.map +0 -1
  503. package/lib/handlers/optimismManager.d.ts +0 -10
  504. package/lib/handlers/optimismManager.js +0 -21
  505. package/lib/handlers/optimismManager.js.map +0 -1
  506. package/lib/index.d.ts +0 -2
  507. package/lib/index.js +0 -4
  508. package/lib/index.js.map +0 -1
  509. package/lib/mempool/index.d.ts +0 -4
  510. package/lib/mempool/index.js +0 -20
  511. package/lib/mempool/index.js.map +0 -1
  512. package/lib/mempool/mempool.d.ts +0 -191
  513. package/lib/mempool/mempool.js +0 -498
  514. package/lib/mempool/mempool.js.map +0 -1
  515. package/lib/mempool/monitoring.d.ts +0 -14
  516. package/lib/mempool/monitoring.js +0 -101
  517. package/lib/mempool/monitoring.js.map +0 -1
  518. package/lib/mempool/reputationManager.d.ts +0 -121
  519. package/lib/mempool/reputationManager.js +0 -472
  520. package/lib/mempool/reputationManager.js.map +0 -1
  521. package/lib/rpc/createMethodHandler.d.ts +0 -31
  522. package/lib/rpc/createMethodHandler.js +0 -34
  523. package/lib/rpc/createMethodHandler.js.map +0 -1
  524. package/lib/rpc/estimation/gasEstimationHandler.d.ts +0 -30
  525. package/lib/rpc/estimation/gasEstimationHandler.js +0 -50
  526. package/lib/rpc/estimation/gasEstimationHandler.js.map +0 -1
  527. package/lib/rpc/estimation/gasEstimationsV06.d.ts +0 -19
  528. package/lib/rpc/estimation/gasEstimationsV06.js +0 -148
  529. package/lib/rpc/estimation/gasEstimationsV06.js.map +0 -1
  530. package/lib/rpc/estimation/gasEstimationsV07.d.ts +0 -101
  531. package/lib/rpc/estimation/gasEstimationsV07.js +0 -727
  532. package/lib/rpc/estimation/gasEstimationsV07.js.map +0 -1
  533. package/lib/rpc/estimation/types.d.ts +0 -120
  534. package/lib/rpc/estimation/types.js +0 -125
  535. package/lib/rpc/estimation/types.js.map +0 -1
  536. package/lib/rpc/index.d.ts +0 -4
  537. package/lib/rpc/index.js +0 -20
  538. package/lib/rpc/index.js.map +0 -1
  539. package/lib/rpc/methods/debug_bundler_clearReputation.d.ts +0 -22
  540. package/lib/rpc/methods/debug_bundler_clearReputation.js +0 -15
  541. package/lib/rpc/methods/debug_bundler_clearReputation.js.map +0 -1
  542. package/lib/rpc/methods/debug_bundler_clearState.d.ts +0 -22
  543. package/lib/rpc/methods/debug_bundler_clearState.js +0 -16
  544. package/lib/rpc/methods/debug_bundler_clearState.js.map +0 -1
  545. package/lib/rpc/methods/debug_bundler_dumpMempool.d.ts +0 -973
  546. package/lib/rpc/methods/debug_bundler_dumpMempool.js +0 -16
  547. package/lib/rpc/methods/debug_bundler_dumpMempool.js.map +0 -1
  548. package/lib/rpc/methods/debug_bundler_dumpReputation.d.ts +0 -57
  549. package/lib/rpc/methods/debug_bundler_dumpReputation.js +0 -16
  550. package/lib/rpc/methods/debug_bundler_dumpReputation.js.map +0 -1
  551. package/lib/rpc/methods/debug_bundler_getStakeStatus.d.ts +0 -79
  552. package/lib/rpc/methods/debug_bundler_getStakeStatus.js +0 -25
  553. package/lib/rpc/methods/debug_bundler_getStakeStatus.js.map +0 -1
  554. package/lib/rpc/methods/debug_bundler_sendBundleNow.d.ts +0 -22
  555. package/lib/rpc/methods/debug_bundler_sendBundleNow.js +0 -15
  556. package/lib/rpc/methods/debug_bundler_sendBundleNow.js.map +0 -1
  557. package/lib/rpc/methods/debug_bundler_setBundlingMode.d.ts +0 -22
  558. package/lib/rpc/methods/debug_bundler_setBundlingMode.js +0 -16
  559. package/lib/rpc/methods/debug_bundler_setBundlingMode.js.map +0 -1
  560. package/lib/rpc/methods/debug_bundler_setReputation.d.ts +0 -46
  561. package/lib/rpc/methods/debug_bundler_setReputation.js +0 -16
  562. package/lib/rpc/methods/debug_bundler_setReputation.js.map +0 -1
  563. package/lib/rpc/methods/eth_chainId.d.ts +0 -22
  564. package/lib/rpc/methods/eth_chainId.js +0 -13
  565. package/lib/rpc/methods/eth_chainId.js.map +0 -1
  566. package/lib/rpc/methods/eth_estimateUserOperationGas.js +0 -26
  567. package/lib/rpc/methods/eth_estimateUserOperationGas.js.map +0 -1
  568. package/lib/rpc/methods/eth_getUserOperationByHash.d.ts +0 -1775
  569. package/lib/rpc/methods/eth_getUserOperationByHash.js +0 -101
  570. package/lib/rpc/methods/eth_getUserOperationByHash.js.map +0 -1
  571. package/lib/rpc/methods/eth_getUserOperationReceipt.d.ts +0 -412
  572. package/lib/rpc/methods/eth_getUserOperationReceipt.js +0 -14
  573. package/lib/rpc/methods/eth_getUserOperationReceipt.js.map +0 -1
  574. package/lib/rpc/methods/eth_sendUserOperation.d.ts +0 -878
  575. package/lib/rpc/methods/eth_sendUserOperation.js +0 -44
  576. package/lib/rpc/methods/eth_sendUserOperation.js.map +0 -1
  577. package/lib/rpc/methods/eth_supportedEntryPoints.d.ts +0 -22
  578. package/lib/rpc/methods/eth_supportedEntryPoints.js +0 -13
  579. package/lib/rpc/methods/eth_supportedEntryPoints.js.map +0 -1
  580. package/lib/rpc/methods/index.d.ts +0 -3
  581. package/lib/rpc/methods/index.js +0 -44
  582. package/lib/rpc/methods/index.js.map +0 -1
  583. package/lib/rpc/methods/pimlico_getUserOperationGasPrice.d.ts +0 -131
  584. package/lib/rpc/methods/pimlico_getUserOperationGasPrice.js +0 -33
  585. package/lib/rpc/methods/pimlico_getUserOperationGasPrice.js.map +0 -1
  586. package/lib/rpc/methods/pimlico_getUserOperationStatus.d.ts +0 -43
  587. package/lib/rpc/methods/pimlico_getUserOperationStatus.js +0 -14
  588. package/lib/rpc/methods/pimlico_getUserOperationStatus.js.map +0 -1
  589. package/lib/rpc/methods/pimlico_sendUserOperationNow.js +0 -53
  590. package/lib/rpc/methods/pimlico_sendUserOperationNow.js.map +0 -1
  591. package/lib/rpc/rpcHandler.d.ts +0 -75
  592. package/lib/rpc/rpcHandler.js +0 -408
  593. package/lib/rpc/rpcHandler.js.map +0 -1
  594. package/lib/rpc/server.d.ts +0 -26
  595. package/lib/rpc/server.js +0 -283
  596. package/lib/rpc/server.js.map +0 -1
  597. package/lib/rpc/validation/BundlerCollectorTracerV06.d.ts +0 -102
  598. package/lib/rpc/validation/BundlerCollectorTracerV06.js +0 -262
  599. package/lib/rpc/validation/BundlerCollectorTracerV06.js.map +0 -1
  600. package/lib/rpc/validation/BundlerCollectorTracerV07.d.ts +0 -102
  601. package/lib/rpc/validation/BundlerCollectorTracerV07.js +0 -261
  602. package/lib/rpc/validation/BundlerCollectorTracerV07.js.map +0 -1
  603. package/lib/rpc/validation/SafeValidator.d.ts +0 -52
  604. package/lib/rpc/validation/SafeValidator.js +0 -350
  605. package/lib/rpc/validation/SafeValidator.js.map +0 -1
  606. package/lib/rpc/validation/TracerResultParserV06.d.ts +0 -13
  607. package/lib/rpc/validation/TracerResultParserV06.js +0 -582
  608. package/lib/rpc/validation/TracerResultParserV06.js.map +0 -1
  609. package/lib/rpc/validation/TracerResultParserV07.d.ts +0 -33
  610. package/lib/rpc/validation/TracerResultParserV07.js +0 -599
  611. package/lib/rpc/validation/TracerResultParserV07.js.map +0 -1
  612. package/lib/rpc/validation/UnsafeValidator.d.ts +0 -98
  613. package/lib/rpc/validation/UnsafeValidator.js +0 -326
  614. package/lib/rpc/validation/UnsafeValidator.js.map +0 -1
  615. package/lib/rpc/validation/index.d.ts +0 -3
  616. package/lib/rpc/validation/index.js +0 -19
  617. package/lib/rpc/validation/index.js.map +0 -1
  618. package/lib/rpc/validation/tracer.d.ts +0 -125
  619. package/lib/rpc/validation/tracer.js +0 -112
  620. package/lib/rpc/validation/tracer.js.map +0 -1
  621. package/lib/store/createMemoryOutstandingStore.d.ts +0 -28
  622. package/lib/store/createMemoryOutstandingStore.js +0 -236
  623. package/lib/store/createMemoryOutstandingStore.js.map +0 -1
  624. package/lib/store/createMempoolStore.d.ts +0 -8
  625. package/lib/store/createMempoolStore.js +0 -199
  626. package/lib/store/createMempoolStore.js.map +0 -1
  627. package/lib/store/createRedisOutstandingStore.d.ts +0 -27
  628. package/lib/store/createRedisOutstandingStore.js +0 -349
  629. package/lib/store/createRedisOutstandingStore.js.map +0 -1
  630. package/lib/store/createRedisStore.d.ts +0 -9
  631. package/lib/store/createRedisStore.js +0 -138
  632. package/lib/store/createRedisStore.js.map +0 -1
  633. package/lib/store/createStore.d.ts +0 -6
  634. package/lib/store/createStore.js +0 -70
  635. package/lib/store/createStore.js.map +0 -1
  636. package/lib/store/index.d.ts +0 -81
  637. package/lib/store/index.js +0 -6
  638. package/lib/store/index.js.map +0 -1
  639. package/lib/types/contracts/ArbitrumL1FeeAbi.d.ts +0 -32
  640. package/lib/types/contracts/ArbitrumL1FeeAbi.js +0 -45
  641. package/lib/types/contracts/ArbitrumL1FeeAbi.js.map +0 -1
  642. package/lib/types/contracts/CallEngine.d.ts +0 -28
  643. package/lib/types/contracts/CallEngine.js +0 -40
  644. package/lib/types/contracts/CallEngine.js.map +0 -1
  645. package/lib/types/contracts/CodeHashGetter.d.ts +0 -37
  646. package/lib/types/contracts/CodeHashGetter.js +0 -48
  647. package/lib/types/contracts/CodeHashGetter.js.map +0 -1
  648. package/lib/types/contracts/EntryPoint.d.ts +0 -1789
  649. package/lib/types/contracts/EntryPoint.js +0 -2307
  650. package/lib/types/contracts/EntryPoint.js.map +0 -1
  651. package/lib/types/contracts/EntryPointSimulationsV6.d.ts +0 -34
  652. package/lib/types/contracts/EntryPointSimulationsV6.js +0 -51
  653. package/lib/types/contracts/EntryPointSimulationsV6.js.map +0 -1
  654. package/lib/types/contracts/EntryPointSimulationsV7.d.ts +0 -2193
  655. package/lib/types/contracts/EntryPointSimulationsV7.js +0 -2828
  656. package/lib/types/contracts/EntryPointSimulationsV7.js.map +0 -1
  657. package/lib/types/contracts/IAccountExecute.d.ts +0 -53
  658. package/lib/types/contracts/IAccountExecute.js +0 -71
  659. package/lib/types/contracts/IAccountExecute.js.map +0 -1
  660. package/lib/types/contracts/IPaymaster.d.ts +0 -3
  661. package/lib/types/contracts/IPaymaster.js +0 -120
  662. package/lib/types/contracts/IPaymaster.js.map +0 -1
  663. package/lib/types/contracts/MantleBvmGasPriceOracle.d.ts +0 -219
  664. package/lib/types/contracts/MantleBvmGasPriceOracle.js +0 -180
  665. package/lib/types/contracts/MantleBvmGasPriceOracle.js.map +0 -1
  666. package/lib/types/contracts/OpL1FeeAbi.d.ts +0 -114
  667. package/lib/types/contracts/OpL1FeeAbi.js +0 -77
  668. package/lib/types/contracts/OpL1FeeAbi.js.map +0 -1
  669. package/lib/types/contracts/PimlicoEntryPointSimulations.d.ts +0 -26
  670. package/lib/types/contracts/PimlicoEntryPointSimulations.js +0 -41
  671. package/lib/types/contracts/PimlicoEntryPointSimulations.js.map +0 -1
  672. package/lib/types/contracts/SenderCreator.d.ts +0 -4
  673. package/lib/types/contracts/SenderCreator.js +0 -26
  674. package/lib/types/contracts/SenderCreator.js.map +0 -1
  675. package/lib/types/contracts/SimpleAccountFactory.d.ts +0 -57
  676. package/lib/types/contracts/SimpleAccountFactory.js +0 -79
  677. package/lib/types/contracts/SimpleAccountFactory.js.map +0 -1
  678. package/lib/types/contracts/TestOpcodesAccount.d.ts +0 -4
  679. package/lib/types/contracts/TestOpcodesAccount.js +0 -284
  680. package/lib/types/contracts/TestOpcodesAccount.js.map +0 -1
  681. package/lib/types/contracts/TestOpcodesAccountFactory.d.ts +0 -4
  682. package/lib/types/contracts/TestOpcodesAccountFactory.js +0 -26
  683. package/lib/types/contracts/TestOpcodesAccountFactory.js.map +0 -1
  684. package/lib/types/contracts/TestStorageAccount.d.ts +0 -4
  685. package/lib/types/contracts/TestStorageAccount.js +0 -316
  686. package/lib/types/contracts/TestStorageAccount.js.map +0 -1
  687. package/lib/types/contracts/index.d.ts +0 -17
  688. package/lib/types/contracts/index.js +0 -33
  689. package/lib/types/contracts/index.js.map +0 -1
  690. package/lib/types/gasPrice.d.ts +0 -110
  691. package/lib/types/gasPrice.js +0 -55
  692. package/lib/types/gasPrice.js.map +0 -1
  693. package/lib/types/index.d.ts +0 -11
  694. package/lib/types/index.js +0 -27
  695. package/lib/types/index.js.map +0 -1
  696. package/lib/types/interfaces.d.ts +0 -59
  697. package/lib/types/interfaces.js +0 -3
  698. package/lib/types/interfaces.js.map +0 -1
  699. package/lib/types/mempool.d.ts +0 -60
  700. package/lib/types/mempool.js +0 -11
  701. package/lib/types/mempool.js.map +0 -1
  702. package/lib/types/schemas.d.ts +0 -20779
  703. package/lib/types/schemas.js +0 -638
  704. package/lib/types/schemas.js.map +0 -1
  705. package/lib/types/utils.d.ts +0 -25
  706. package/lib/types/utils.js +0 -35
  707. package/lib/types/utils.js.map +0 -1
  708. package/lib/types/validation.d.ts +0 -14327
  709. package/lib/types/validation.js +0 -312
  710. package/lib/types/validation.js.map +0 -1
  711. package/lib/utils/bigInt.d.ts +0 -4
  712. package/lib/utils/bigInt.js +0 -19
  713. package/lib/utils/bigInt.js.map +0 -1
  714. package/lib/utils/eip7702.d.ts +0 -4
  715. package/lib/utils/eip7702.js +0 -21
  716. package/lib/utils/eip7702.js.map +0 -1
  717. package/lib/utils/fastify-rpc-decorators.d.ts +0 -19
  718. package/lib/utils/fastify-rpc-decorators.js +0 -23
  719. package/lib/utils/fastify-rpc-decorators.js.map +0 -1
  720. package/lib/utils/helpers.d.ts +0 -15
  721. package/lib/utils/helpers.js +0 -59
  722. package/lib/utils/helpers.js.map +0 -1
  723. package/lib/utils/index.d.ts +0 -8
  724. package/lib/utils/index.js +0 -23
  725. package/lib/utils/index.js.map +0 -1
  726. package/lib/utils/logger.d.ts +0 -6
  727. package/lib/utils/logger.js +0 -85
  728. package/lib/utils/logger.js.map +0 -1
  729. package/lib/utils/metrics.d.ts +0 -28
  730. package/lib/utils/metrics.js +0 -192
  731. package/lib/utils/metrics.js.map +0 -1
  732. package/lib/utils/minMaxQueue/createMemoryMinMaxQueue.d.ts +0 -6
  733. package/lib/utils/minMaxQueue/createMemoryMinMaxQueue.js +0 -57
  734. package/lib/utils/minMaxQueue/createMemoryMinMaxQueue.js.map +0 -1
  735. package/lib/utils/minMaxQueue/createRedisMinMaxQueue.d.ts +0 -7
  736. package/lib/utils/minMaxQueue/createRedisMinMaxQueue.js +0 -105
  737. package/lib/utils/minMaxQueue/createRedisMinMaxQueue.js.map +0 -1
  738. package/lib/utils/minMaxQueue/index.d.ts +0 -12
  739. package/lib/utils/minMaxQueue/index.js +0 -16
  740. package/lib/utils/minMaxQueue/index.js.map +0 -1
  741. package/lib/utils/rpc-reply.d.ts +0 -16
  742. package/lib/utils/rpc-reply.js +0 -41
  743. package/lib/utils/rpc-reply.js.map +0 -1
  744. package/lib/utils/userop.d.ts +0 -138
  745. package/lib/utils/userop.js +0 -620
  746. package/lib/utils/userop.js.map +0 -1
  747. package/lib/utils/validation.d.ts +0 -76
  748. package/lib/utils/validation.js +0 -500
  749. package/lib/utils/validation.js.map +0 -1
@@ -1,111 +1,168 @@
1
- import { maxBigInt, parseViemError, scaleBigIntByPercent } from "../utils/index.js";
1
+ import { jsonStringifyWithBigint, maxBigInt, minBigInt, roundUpBigInt, scaleBigIntByPercent } from "../utils/index.js";
2
2
  import * as sentry from "@sentry/node";
3
- import { IntrinsicGasTooLowError, NonceTooLowError, TransactionExecutionError, NonceTooHighError, BaseError } from "viem";
4
- import { calculateAA95GasFloor, encodeHandleOpsCalldata, getAuthorizationList, getUserOpHashes, isTransactionUnderpricedError } from "./utils.js";
5
- import { sendPflConditional } from "./fastlane.js";
6
- import { filterOpsAndEstimateGas } from "./filterOpsAndEStimateGas.js";
3
+ import { BaseError, ContractFunctionExecutionError, FeeCapTooLowError, InsufficientFundsError, IntrinsicGasTooLowError, NonceTooHighError, NonceTooLowError, TransactionExecutionError } from "viem";
4
+ import { filterOpsAndEstimateGas } from "./filterOpsAndEstimateGas.js";
5
+ import { encodeHandleOpsCalldata, getAuthorizationList, getUserOpHashes, isTransactionUnderpricedError } from "./utils.js";
7
6
  export class Executor {
8
7
  config;
9
8
  logger;
10
- metrics;
11
- reputationManager;
12
- gasPriceManager;
13
- mempool;
14
9
  eventManager;
15
- constructor({ config, mempool, reputationManager, metrics, gasPriceManager, eventManager }) {
10
+ constructor({ config, eventManager }) {
16
11
  this.config = config;
17
- this.mempool = mempool;
18
- this.reputationManager = reputationManager;
19
12
  this.logger = config.getLogger({ module: "executor" }, {
20
13
  level: config.executorLogLevel || config.logLevel
21
14
  });
22
- this.metrics = metrics;
23
- this.gasPriceManager = gasPriceManager;
24
15
  this.eventManager = eventManager;
25
16
  }
26
- cancelOps(_entryPoint, _ops) {
27
- throw new Error("Method not implemented.");
17
+ getBundleGasPrice({ bundle, networkGasPrice, networkBaseFee, totalBeneficiaryFees, bundleGasUsed }) {
18
+ const { bundlerInitialCommission, resubmitMultiplierCeiling, legacyTransactions, chainType, arbitrumBaseFeeMultiplier } = this.config;
19
+ // Arbtirum's sequencer orders based on first come first serve.
20
+ // Because of this, maxFee/maxPriorityFee is ignored and the bundler *always* pays the network's baseFee.
21
+ // The bundler need to set a large enough gasBid to account for network baseFee fluctuations.
22
+ // GasBid = min(maxFee, base + priority)
23
+ if (chainType === "arbitrum") {
24
+ const scaledBaseFee = scaleBigIntByPercent(networkBaseFee, 100n + 20n * BigInt(bundle.submissionAttempts));
25
+ return {
26
+ maxFeePerGas: scaleBigIntByPercent(scaledBaseFee, arbitrumBaseFeeMultiplier),
27
+ maxPriorityFeePerGas: scaleBigIntByPercent(scaledBaseFee, arbitrumBaseFeeMultiplier)
28
+ };
29
+ }
30
+ // Increase network gas price for resubmissions to improve tx inclusion
31
+ let [networkMaxFeePerGas, networkMaxPriorityFeePerGas] = [
32
+ networkGasPrice.maxFeePerGas,
33
+ networkGasPrice.maxPriorityFeePerGas
34
+ ];
35
+ if (bundle.submissionAttempts > 0) {
36
+ const multiplier = 100n + BigInt(bundle.submissionAttempts) * 20n;
37
+ networkMaxFeePerGas = scaleBigIntByPercent(networkMaxFeePerGas, minBigInt(multiplier, resubmitMultiplierCeiling));
38
+ networkMaxPriorityFeePerGas = scaleBigIntByPercent(networkMaxPriorityFeePerGas, minBigInt(multiplier, resubmitMultiplierCeiling));
39
+ }
40
+ // The bundler should place a gasBid that is competetive with the network's gasPrice.
41
+ const breakEvenGasPrice = totalBeneficiaryFees / bundleGasUsed;
42
+ // Calculate commission: start at bundlerInitialCommission%, then
43
+ // halve the commission with each resubmission attempt
44
+ const currentCommission = bundlerInitialCommission / 2n ** BigInt(bundle.submissionAttempts);
45
+ const pricingPercent = 100n - currentCommission;
46
+ const bundlingGasPrice = scaleBigIntByPercent(breakEvenGasPrice, pricingPercent);
47
+ if (legacyTransactions) {
48
+ const gasPrice = maxBigInt(bundlingGasPrice, networkMaxFeePerGas);
49
+ return {
50
+ maxFeePerGas: gasPrice,
51
+ maxPriorityFeePerGas: gasPrice
52
+ };
53
+ }
54
+ const effectiveGasPrice = minBigInt(networkMaxFeePerGas, networkBaseFee + networkMaxPriorityFeePerGas);
55
+ if (bundlingGasPrice > effectiveGasPrice) {
56
+ return {
57
+ maxFeePerGas: bundlingGasPrice,
58
+ maxPriorityFeePerGas: bundlingGasPrice
59
+ };
60
+ }
61
+ return {
62
+ maxFeePerGas: networkMaxFeePerGas,
63
+ maxPriorityFeePerGas: networkMaxPriorityFeePerGas
64
+ };
28
65
  }
29
- async sendHandleOpsTransaction({ txParam, gasOpts }) {
30
- const { entryPoint, userOps, account, gas, nonce, isUserOpV06 } = txParam;
66
+ async sendHandleOpsTransaction({ txParam, gasOpts, childLogger, submissionAttempts }) {
67
+ const { executorGasMultiplier, sendHandleOpsRetryCount, transactionUnderpricedMultiplier, walletClients, publicClient, privateEndpointSubmissionAttempts } = this.config;
68
+ // Use private wallet for configured number of attempts if available, then switch to public
69
+ const usePrivateEndpoint = walletClients.private &&
70
+ submissionAttempts < privateEndpointSubmissionAttempts;
71
+ const walletClient = usePrivateEndpoint
72
+ ? walletClients.private
73
+ : walletClients.public;
74
+ const { entryPoint, userOps, account, gas, nonce } = txParam;
31
75
  const handleOpsCalldata = encodeHandleOpsCalldata({
32
- userOps,
76
+ userOps: userOps.map(({ userOp }) => userOp),
33
77
  beneficiary: account.address
34
78
  });
35
79
  const request = {
36
80
  to: entryPoint,
37
81
  data: handleOpsCalldata,
38
82
  from: account.address,
83
+ chain: publicClient.chain,
39
84
  gas,
40
85
  account,
41
86
  nonce,
42
87
  ...gasOpts
43
88
  };
44
- request.gas = scaleBigIntByPercent(request.gas, this.config.executorGasMultiplier);
89
+ request.gas = scaleBigIntByPercent(request.gas, executorGasMultiplier);
45
90
  let attempts = 0;
46
91
  let transactionHash;
47
- const maxAttempts = 3;
92
+ const maxAttempts = sendHandleOpsRetryCount;
48
93
  // Try sending the transaction and updating relevant fields if there is an error.
49
94
  while (attempts < maxAttempts) {
50
95
  try {
51
- if (this.config.enableFastlane &&
52
- isUserOpV06 &&
53
- !txParam.isReplacementTx &&
54
- attempts === 0) {
55
- const serializedTransaction = await this.config.walletClient.signTransaction(request);
56
- transactionHash = await sendPflConditional({
57
- serializedTransaction,
58
- publicClient: this.config.publicClient,
59
- walletClient: this.config.walletClient,
60
- logger: this.logger
61
- });
62
- break;
63
- }
64
- transactionHash =
65
- await this.config.walletClient.sendTransaction(request);
96
+ // Round up gasLimit to nearest multiple
97
+ request.gas = roundUpBigInt({
98
+ value: request.gas,
99
+ multiple: this.config.gasLimitRoundingMultiple
100
+ });
101
+ transactionHash = await walletClient.sendTransaction(request);
102
+ childLogger.info({
103
+ transactionRequest: {
104
+ executor: request.account.address,
105
+ maxFeePerGas: request.maxFeePerGas,
106
+ maxPriorityFeePerGas: request.maxPriorityFeePerGas,
107
+ nonce: request.nonce
108
+ },
109
+ txHash: transactionHash,
110
+ isPrivate: usePrivateEndpoint
111
+ }, "submitted bundle transaction");
66
112
  break;
67
113
  }
68
114
  catch (e) {
69
115
  if (e instanceof BaseError) {
70
116
  if (isTransactionUnderpricedError(e)) {
71
- this.logger.warn("Transaction underpriced, retrying");
72
- request.nonce =
73
- await this.config.publicClient.getTransactionCount({
74
- address: account.address,
75
- blockTag: "latest"
76
- });
77
- if (request.maxFeePerGas &&
78
- request.maxPriorityFeePerGas) {
79
- request.maxFeePerGas = scaleBigIntByPercent(request.maxFeePerGas, 150n);
80
- request.maxPriorityFeePerGas = scaleBigIntByPercent(request.maxPriorityFeePerGas, 150n);
117
+ childLogger.warn("Transaction underpriced, retrying");
118
+ request.nonce = await publicClient.getTransactionCount({
119
+ address: account.address,
120
+ blockTag: "latest"
121
+ });
122
+ if (request.maxFeePerGas) {
123
+ request.maxFeePerGas = scaleBigIntByPercent(request.maxFeePerGas, transactionUnderpricedMultiplier);
124
+ }
125
+ if (request.maxPriorityFeePerGas) {
126
+ request.maxPriorityFeePerGas = scaleBigIntByPercent(request.maxPriorityFeePerGas, transactionUnderpricedMultiplier);
81
127
  }
82
128
  if (request.gasPrice) {
83
- request.gasPrice = scaleBigIntByPercent(request.gasPrice, 150n);
129
+ request.gasPrice = scaleBigIntByPercent(request.gasPrice, transactionUnderpricedMultiplier);
84
130
  }
85
131
  }
86
132
  }
133
+ if (e instanceof FeeCapTooLowError) {
134
+ childLogger.warn("max fee < basefee, retrying");
135
+ if (request.gasPrice) {
136
+ request.gasPrice = scaleBigIntByPercent(request.gasPrice, 125n);
137
+ }
138
+ if (request.maxFeePerGas) {
139
+ request.maxFeePerGas = scaleBigIntByPercent(request.maxFeePerGas, 125n);
140
+ }
141
+ if (request.maxPriorityFeePerGas) {
142
+ request.maxPriorityFeePerGas = scaleBigIntByPercent(request.maxPriorityFeePerGas, 125n);
143
+ }
144
+ }
87
145
  const error = e;
88
146
  if (error instanceof TransactionExecutionError) {
89
147
  const cause = error.cause;
90
- if (cause instanceof NonceTooLowError ||
91
- cause instanceof NonceTooHighError) {
92
- this.logger.warn("Nonce too low, retrying");
93
- request.nonce =
94
- await this.config.publicClient.getTransactionCount({
95
- address: request.from,
96
- blockTag: "pending"
97
- });
148
+ if (cause instanceof NonceTooLowError) {
149
+ childLogger.warn("Nonce too low, retrying");
150
+ request.nonce = await publicClient.getTransactionCount({
151
+ address: request.from,
152
+ blockTag: "latest"
153
+ });
154
+ }
155
+ if (cause instanceof NonceTooHighError) {
156
+ childLogger.warn("Nonce too high, retrying");
157
+ request.nonce = await publicClient.getTransactionCount({
158
+ address: request.from,
159
+ blockTag: "latest"
160
+ });
98
161
  }
99
162
  if (cause instanceof IntrinsicGasTooLowError) {
100
- this.logger.warn("Intrinsic gas too low, retrying");
163
+ childLogger.warn("Intrinsic gas too low, retrying");
101
164
  request.gas = scaleBigIntByPercent(request.gas, 150n);
102
165
  }
103
- // This is thrown by OP-Stack chains that use proxyd.
104
- // ref: https://github.com/ethereum-optimism/optimism/issues/2618#issuecomment-1630272888
105
- if (cause.details?.includes("no backends available")) {
106
- this.logger.warn("no backends avaiable error, retrying after 500ms");
107
- await new Promise((resolve) => setTimeout(resolve, 500));
108
- }
109
166
  }
110
167
  attempts++;
111
168
  if (attempts === maxAttempts) {
@@ -119,61 +176,56 @@ export class Executor {
119
176
  }
120
177
  return transactionHash;
121
178
  }
122
- async bundle({ executor, userOpBundle, nonce, gasPriceParams, gasLimitSuggestion, isReplacementTx }) {
123
- const { entryPoint, userOps, version } = userOpBundle;
124
- const { maxFeePerGas, maxPriorityFeePerGas } = gasPriceParams;
125
- const isUserOpV06 = version === "0.6";
179
+ async bundle({ executor, userOpBundle, networkGasPrice, networkBaseFee, nonce }) {
180
+ const { entryPoint, userOps } = userOpBundle;
126
181
  let childLogger = this.logger.child({
127
- isReplacementTx,
182
+ submissionAttempts: userOpBundle.submissionAttempts,
128
183
  userOperations: getUserOpHashes(userOps),
129
184
  entryPoint
130
185
  });
131
- let estimateResult = await filterOpsAndEstimateGas({
186
+ const filterOpsResult = await filterOpsAndEstimateGas({
187
+ checkEip7702AuthNonces: false, // Ignore EIP-7702 auth nonce check to save latency.
188
+ networkBaseFee,
132
189
  userOpBundle,
133
- executor,
134
- nonce,
135
- maxFeePerGas,
136
- maxPriorityFeePerGas,
137
- codeOverrideSupport: this.config.codeOverrideSupport,
138
- reputationManager: this.reputationManager,
139
190
  config: this.config,
140
191
  logger: childLogger
141
192
  });
142
- if (estimateResult.status === "unhandled_failure") {
143
- childLogger.error("gas limit simulation encountered unexpected failure");
193
+ if (filterOpsResult.status === "unhandled_error") {
194
+ childLogger.error("encountered unhandled failure during filterOps simulation");
144
195
  return {
145
- status: "unhandled_simulation_failure",
146
- rejectedUserOps: estimateResult.rejectedUserOps,
147
- reason: "INTERNAL FAILURE"
196
+ success: false,
197
+ reason: "filterops_failed",
198
+ rejectedUserOps: filterOpsResult.rejectedUserOps,
199
+ recoverableOps: []
148
200
  };
149
201
  }
150
- if (estimateResult.status === "all_ops_failed_simulation") {
151
- childLogger.warn("all ops failed simulation");
202
+ if (filterOpsResult.status === "all_ops_rejected") {
203
+ childLogger.warn("all ops failed filterOps simulation");
152
204
  return {
153
- status: "all_ops_failed_simulation",
154
- rejectedUserOps: estimateResult.rejectedUserOps
205
+ success: false,
206
+ reason: "filterops_failed",
207
+ rejectedUserOps: filterOpsResult.rejectedUserOps,
208
+ recoverableOps: []
155
209
  };
156
210
  }
157
- let { gasLimit, userOpsToBundle, rejectedUserOps } = estimateResult;
211
+ const { userOpsToBundle, rejectedUserOps, bundleGasUsed, bundleGasLimit, totalBeneficiaryFees } = filterOpsResult;
158
212
  // Update child logger with userOperations being sent for bundling.
159
213
  childLogger = this.logger.child({
160
- isReplacementTx,
161
- userOperations: getUserOpHashes(userOpsToBundle),
214
+ userOps: getUserOpHashes(userOpsToBundle),
215
+ submissionAttempts: userOpBundle.submissionAttempts,
162
216
  entryPoint
163
217
  });
164
- // Ensure that we don't submit with gas too low leading to AA95.
165
- const aa95GasFloor = calculateAA95GasFloor(userOpsToBundle, executor.address);
166
- gasLimit = maxBigInt(gasLimit, aa95GasFloor);
167
- // sometimes the estimation rounds down, adding a fixed constant accounts for this
168
- gasLimit += 10000n;
169
- gasLimit = gasLimitSuggestion
170
- ? maxBigInt(gasLimit, gasLimitSuggestion)
171
- : gasLimit;
218
+ const { maxFeePerGas, maxPriorityFeePerGas } = this.getBundleGasPrice({
219
+ bundle: userOpBundle,
220
+ networkGasPrice,
221
+ networkBaseFee,
222
+ totalBeneficiaryFees,
223
+ bundleGasUsed
224
+ });
172
225
  let transactionHash;
173
226
  try {
174
227
  const isLegacyTransaction = this.config.legacyTransactions;
175
228
  const authorizationList = getAuthorizationList(userOpsToBundle);
176
- const { maxFeePerGas, maxPriorityFeePerGas } = gasPriceParams;
177
229
  let gasOpts;
178
230
  if (isLegacyTransaction) {
179
231
  gasOpts = {
@@ -200,13 +252,13 @@ export class Executor {
200
252
  txParam: {
201
253
  account: executor,
202
254
  nonce,
203
- gas: gasLimit,
255
+ gas: bundleGasLimit,
204
256
  userOps: userOpsToBundle,
205
- isReplacementTx,
206
- isUserOpV06,
207
257
  entryPoint
208
258
  },
209
- gasOpts
259
+ childLogger,
260
+ gasOpts,
261
+ submissionAttempts: userOpBundle.submissionAttempts
210
262
  });
211
263
  this.eventManager.emitSubmitted({
212
264
  userOpHashes: getUserOpHashes(userOpsToBundle),
@@ -214,44 +266,56 @@ export class Executor {
214
266
  });
215
267
  }
216
268
  catch (err) {
217
- const e = parseViemError(err);
218
- const { rejectedUserOps, userOpsToBundle } = estimateResult;
219
- // if unknown error, return INTERNAL FAILURE
220
- if (!e) {
269
+ const { rejectedUserOps, userOpsToBundle } = filterOpsResult;
270
+ const isViemExecutionError = err instanceof ContractFunctionExecutionError ||
271
+ err instanceof TransactionExecutionError;
272
+ // Unknown error, return INTERNAL FAILURE.
273
+ if (!isViemExecutionError) {
221
274
  sentry.captureException(err);
222
- childLogger.error({ error: JSON.stringify(err) }, "error submitting bundle transaction");
275
+ childLogger.error({ err: JSON.stringify(err) }, "unknown error submitting bundle transaction");
276
+ return {
277
+ success: false,
278
+ reason: "generic_error",
279
+ rejectedUserOps,
280
+ recoverableOps: userOpsToBundle
281
+ };
282
+ }
283
+ // Check if executor has insufficient funds
284
+ const isInsufficientFundsError = err.walk((e) => e instanceof InsufficientFundsError);
285
+ if (isInsufficientFundsError) {
286
+ childLogger.warn({
287
+ executor: executor.address,
288
+ err: jsonStringifyWithBigint(err)
289
+ }, "executor has insufficient funds");
223
290
  return {
291
+ success: false,
292
+ reason: "insufficient_funds",
224
293
  rejectedUserOps,
225
- userOpsToBundle,
226
- status: "bundle_submission_failure",
227
- reason: "INTERNAL FAILURE"
294
+ recoverableOps: userOpsToBundle
228
295
  };
229
296
  }
297
+ childLogger.error({
298
+ err: jsonStringifyWithBigint(err)
299
+ }, "error submitting bundle transaction");
230
300
  return {
301
+ success: false,
302
+ reason: "generic_error",
231
303
  rejectedUserOps,
232
- userOpsToBundle,
233
- status: "bundle_submission_failure",
234
- reason: e
304
+ recoverableOps: userOpsToBundle
235
305
  };
236
306
  }
237
307
  const userOpsBundled = userOpsToBundle;
238
308
  const bundleResult = {
239
- status: "bundle_success",
309
+ success: true,
240
310
  userOpsBundled,
241
311
  rejectedUserOps,
242
312
  transactionHash,
243
313
  transactionRequest: {
244
- gas: gasLimit,
245
- maxFeePerGas: gasPriceParams.maxFeePerGas,
246
- maxPriorityFeePerGas: gasPriceParams.maxPriorityFeePerGas,
314
+ maxFeePerGas,
315
+ maxPriorityFeePerGas,
247
316
  nonce
248
317
  }
249
318
  };
250
- childLogger.info({
251
- transactionRequest: bundleResult.transactionRequest,
252
- txHash: transactionHash,
253
- opHashes: getUserOpHashes(userOpsBundled)
254
- }, "submitted bundle transaction");
255
319
  return bundleResult;
256
320
  }
257
321
  }
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../executor/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../executor/executor.ts"],"names":[],"mappings":"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"}
@@ -1,107 +1,58 @@
1
- import type { EventManager, GasPriceManager } from "../handlers/index.js";
2
- import type { InterfaceReputationManager, Mempool, Monitor } from "../mempool/index.js";
3
- import { type BundlingMode, type HexData32, type TransactionInfo, RejectedUserOp, UserOperationBundle, UserOpInfo } from "../types/index.js";
4
- import type { Metrics } from "../utils/index.js";
5
- import { type Address, type Block, type Hash, Hex } from "viem";
6
- import type { Executor } from "./executor.js";
1
+ import type { GasPriceManager } from "../handlers/index.js";
2
+ import type { Mempool } from "../mempool/index.js";
3
+ import type { BundlingMode, GasPriceParameters, SubmittedBundleInfo, UserOperationBundle } from "../types/index.js";
4
+ import { type Metrics } from "../utils/index.js";
5
+ import type { Hex } from "viem";
7
6
  import type { AltoConfig } from "../createConfig.js";
8
- import { SenderManager } from "./senderManager/index.js";
7
+ import type { BundleManager } from "./bundleManager.js";
8
+ import type { Executor } from "./executor.js";
9
+ import type { SenderManager } from "./senderManager/index.js";
9
10
  export declare class ExecutorManager {
10
- private senderManager;
11
- private config;
12
- private executor;
13
- private mempool;
14
- private monitor;
15
- private logger;
16
- private metrics;
17
- private reputationManager;
18
- private unWatch;
19
- private currentlyHandlingBlock;
20
- private gasPriceManager;
21
- private eventManager;
11
+ private readonly senderManager;
12
+ private readonly config;
13
+ private readonly executor;
14
+ private readonly mempool;
15
+ private readonly logger;
16
+ private readonly metrics;
17
+ private readonly gasPriceManager;
18
+ private readonly bundleManager;
22
19
  private opsCount;
23
20
  private bundlingMode;
24
- constructor({ config, executor, mempool, monitor, reputationManager, metrics, gasPriceManager, eventManager, senderManager }: {
21
+ private unWatch;
22
+ private currentlyHandlingBlock;
23
+ constructor({ config, executor, mempool, metrics, gasPriceManager, senderManager, bundleManager }: {
25
24
  config: AltoConfig;
26
25
  executor: Executor;
27
26
  mempool: Mempool;
28
- monitor: Monitor;
29
- reputationManager: InterfaceReputationManager;
30
27
  metrics: Metrics;
31
28
  gasPriceManager: GasPriceManager;
32
- eventManager: EventManager;
33
29
  senderManager: SenderManager;
30
+ bundleManager: BundleManager;
34
31
  });
32
+ start(): void;
35
33
  setBundlingMode(bundleMode: BundlingMode): Promise<void>;
36
34
  autoScalingBundling(): Promise<void>;
37
- sendBundleNow(): Promise<Hash | undefined>;
35
+ startWatchingBlocks(): void;
36
+ getBaseFee(): Promise<bigint>;
38
37
  sendBundleToExecutor(userOpBundle: UserOperationBundle): Promise<Hex | undefined>;
39
- startWatchingBlocks(handleBlock: (block: Block) => void): void;
40
38
  stopWatchingBlocks(): void;
41
- private refreshTransactionStatus;
42
- checkFrontrun({ userOpHash, entryPoint, transactionHash, blockNumber }: {
43
- userOpHash: HexData32;
44
- transactionHash: Hash;
45
- entryPoint: Address;
46
- blockNumber: bigint;
47
- }): Promise<void>;
48
- getUserOperationReceipt(userOperationHash: HexData32): Promise<{
49
- sender: `0x${string}`;
50
- userOpHash: `0x${string}`;
51
- nonce: bigint;
52
- success: boolean;
53
- actualGasCost: bigint;
54
- actualGasUsed: bigint;
55
- entryPoint: `0x${string}`;
56
- logs: {
57
- address: `0x${string}`;
58
- data: `0x${string}`;
59
- logIndex: bigint;
60
- transactionIndex: bigint;
61
- transactionHash: `0x${string}`;
62
- blockHash: `0x${string}`;
63
- blockNumber: bigint;
64
- topics: `0x${string}`[];
65
- }[];
66
- receipt: {
67
- to: `0x${string}` | null;
68
- gasUsed: bigint;
69
- status: bigint | null;
70
- contractAddress: `0x${string}` | null;
71
- transactionIndex: bigint;
72
- transactionHash: `0x${string}`;
73
- blockHash: `0x${string}`;
74
- blockNumber: bigint;
75
- from: `0x${string}`;
76
- cumulativeGasUsed: bigint;
77
- logs: {
78
- address: `0x${string}`;
79
- data: `0x${string}`;
80
- logIndex: bigint;
81
- transactionIndex: bigint;
82
- transactionHash: `0x${string}`;
83
- blockHash: `0x${string}`;
84
- blockNumber: bigint;
85
- topics: `0x${string}`[];
86
- }[];
87
- logsBloom: string;
88
- effectiveGasPrice?: bigint | null | undefined;
39
+ private handleBlock;
40
+ potentiallyResubmitBundle({ blockReceivedTimestamp, submittedBundle, networkGasPrice, networkBaseFee }: {
41
+ blockReceivedTimestamp: number;
42
+ submittedBundle: SubmittedBundleInfo;
43
+ networkGasPrice: {
44
+ maxFeePerGas: bigint;
45
+ maxPriorityFeePerGas: bigint;
89
46
  };
90
- paymaster?: `0x${string}` | undefined;
91
- reason?: `0x${string}` | undefined;
92
- } | null>;
93
- handleBlock(block: Block): Promise<void>;
94
- replaceTransaction(txInfo: TransactionInfo, reason: string): Promise<void>;
95
- markUserOperationsAsSubmitted(userOpInfos: UserOpInfo[], transactionInfo: TransactionInfo): Promise<void>;
96
- resubmitUserOperations(userOps: UserOpInfo[], entryPoint: Address, reason: string): Promise<void>;
97
- failedToReplaceTransaction({ oldTxHash, rejectedUserOps, reason, entryPoint }: {
98
- oldTxHash: Hex;
99
- rejectedUserOps: RejectedUserOp[];
100
- reason: string;
101
- entryPoint: Address;
47
+ networkBaseFee: bigint;
48
+ }): void;
49
+ cancelBundle(submittedBundle: SubmittedBundleInfo): Promise<void>;
50
+ replaceTransaction({ blockReceivedTimestamp, submittedBundle, networkGasPrice, networkBaseFee, reason }: {
51
+ blockReceivedTimestamp: number;
52
+ submittedBundle: SubmittedBundleInfo;
53
+ networkGasPrice: GasPriceParameters;
54
+ networkBaseFee: bigint;
55
+ reason: "gas_price" | "stuck";
102
56
  }): Promise<void>;
103
- removeSubmitted(entryPoint: Address, userOps: UserOpInfo[]): Promise<void>;
104
- markUserOpsIncluded(userOps: UserOpInfo[], entryPoint: Address, blockNumber: bigint, transactionHash: Hash, userOperationDetails: Record<string, any>): Promise<void>;
105
- dropUserOps(entryPoint: Address, rejectedUserOps: RejectedUserOp[]): Promise<void>;
106
57
  }
107
58
  //# sourceMappingURL=executorManager.d.ts.map