@pimlico/alto 0.0.19 → 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 (337) 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/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride09.json +1 -0
  10. package/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -1
  11. package/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -1
  12. package/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -1
  13. package/contracts/EntryPointSimulations.sol/EntryPointSimulations09.json +1 -0
  14. package/contracts/Exec.sol/Exec.json +1 -1
  15. package/contracts/IAccount.sol/IAccount.json +1 -1
  16. package/contracts/IAccountExecute.sol/IAccountExecute.json +1 -1
  17. package/contracts/IAggregator.sol/IAggregator.json +1 -1
  18. package/contracts/IERC165.sol/IERC165.json +1 -1
  19. package/contracts/IERC5267.sol/IERC5267.json +1 -1
  20. package/contracts/IEntryPoint.sol/IEntryPoint.json +1 -1
  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 -1
  24. package/contracts/INonceManager.sol/INonceManager.json +1 -1
  25. package/contracts/IPaymaster.sol/IPaymaster.json +1 -1
  26. package/contracts/ISenderCreator.sol/ISenderCreator.json +1 -1
  27. package/contracts/IStakeManager.sol/IStakeManager.json +1 -1
  28. package/contracts/LibBytes.sol/LibBytes.json +1 -1
  29. package/contracts/Math.sol/Math.json +1 -1
  30. package/contracts/MessageHashUtils.sol/MessageHashUtils.json +1 -1
  31. package/contracts/NonceManager.sol/NonceManager.json +1 -1
  32. package/contracts/Panic.sol/Panic.json +1 -1
  33. package/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -1
  34. package/contracts/ReentrancyGuard.sol/ReentrancyGuard.json +1 -1
  35. package/contracts/ReentrancyGuardTransient.sol/ReentrancyGuardTransient.json +1 -1
  36. package/contracts/SafeCast.sol/SafeCast.json +1 -1
  37. package/contracts/SenderCreator.sol/SenderCreator.json +1 -1
  38. package/contracts/ShortStrings.sol/ShortStrings.json +1 -1
  39. package/contracts/SignedMath.sol/SignedMath.json +1 -1
  40. package/contracts/SimulationOverrideHelper.sol/SimulationOverrideHelper.json +1 -0
  41. package/contracts/StakeManager.sol/StakeManager.json +1 -1
  42. package/contracts/StorageSlot.sol/StorageSlot.json +1 -1
  43. package/contracts/Strings.sol/Strings.json +1 -1
  44. package/contracts/TransientSlot.sol/TransientSlot.json +1 -1
  45. package/contracts/UserOperation.sol/UserOperationLib.json +1 -1
  46. package/contracts/UserOperationLib.sol/UserOperationLib.json +1 -1
  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/{880955d5786bfdae.json → 8dbf8a4ad39019b5.json} +1 -1
  54. package/contracts/contracts/interfaces/IAggregator.sol/IAggregator.json +1 -1
  55. package/contracts/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -1
  56. package/contracts/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -1
  57. package/contracts/contracts/interfaces/IStakeManager.sol/IStakeManager.json +1 -1
  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 -1
  66. package/contracts/interfaces/IEntryPoint.sol/IEntryPoint.json +1 -1
  67. package/contracts/interfaces/INonceManager.sol/INonceManager.json +1 -1
  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 -1
  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 -1
  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 +13 -6
  80. package/esm/cli/alto.js.map +1 -1
  81. package/esm/cli/config/bundler.d.ts +190 -148
  82. package/esm/cli/config/bundler.js +72 -83
  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 +105 -68
  86. package/esm/cli/config/options.js.map +1 -1
  87. package/esm/cli/customTransport.d.ts +3 -3
  88. package/esm/cli/deploySimulationsContract.d.ts +1 -0
  89. package/esm/cli/deploySimulationsContract.js +41 -5
  90. package/esm/cli/deploySimulationsContract.js.map +1 -1
  91. package/esm/cli/handler.js +48 -52
  92. package/esm/cli/handler.js.map +1 -1
  93. package/esm/cli/setupServer.js +46 -47
  94. package/esm/cli/setupServer.js.map +1 -1
  95. package/esm/cli/shutDown.d.ts +20 -0
  96. package/esm/cli/shutDown.js +260 -0
  97. package/esm/cli/shutDown.js.map +1 -0
  98. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride06.json +1 -1
  99. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride07.json +1 -1
  100. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride08.json +1 -1
  101. package/esm/contracts/EntryPointFilterOpsOverride.sol/EntryPointFilterOpsOverride09.json +1 -0
  102. package/esm/contracts/EntryPointGasEstimationOverride.sol/EntryPointGasEstimationOverride06.json +1 -1
  103. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations07.json +1 -1
  104. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations08.json +1 -1
  105. package/esm/contracts/EntryPointSimulations.sol/EntryPointSimulations09.json +1 -0
  106. package/esm/contracts/PimlicoSimulations.sol/PimlicoSimulations.json +1 -1
  107. package/esm/createConfig.d.ts +9 -2
  108. package/esm/createConfig.js.map +1 -1
  109. package/esm/executor/{userOpMonitor.d.ts → bundleManager.d.ts} +38 -32
  110. package/esm/executor/{userOpMonitor.js → bundleManager.js} +127 -99
  111. package/esm/executor/bundleManager.js.map +1 -0
  112. package/esm/executor/executor.d.ts +4 -3
  113. package/esm/executor/executor.js +33 -20
  114. package/esm/executor/executor.js.map +1 -1
  115. package/esm/executor/executorManager.d.ts +17 -15
  116. package/esm/executor/executorManager.js +130 -55
  117. package/esm/executor/executorManager.js.map +1 -1
  118. package/esm/executor/filterOpsAndEstimateGas.d.ts +17 -2
  119. package/esm/executor/filterOpsAndEstimateGas.js +100 -77
  120. package/esm/executor/filterOpsAndEstimateGas.js.map +1 -1
  121. package/esm/executor/index.d.ts +1 -0
  122. package/esm/executor/index.js +1 -0
  123. package/esm/executor/index.js.map +1 -1
  124. package/esm/executor/senderManager/createMemorySenderManager.js +13 -0
  125. package/esm/executor/senderManager/createMemorySenderManager.js.map +1 -1
  126. package/esm/executor/senderManager/createRedisSenderManager.d.ts +2 -1
  127. package/esm/executor/senderManager/createRedisSenderManager.js +3 -6
  128. package/esm/executor/senderManager/createRedisSenderManager.js.map +1 -1
  129. package/esm/executor/senderManager/flushOnStartUp.js +4 -4
  130. package/esm/executor/senderManager/flushOnStartUp.js.map +1 -1
  131. package/esm/executor/senderManager/index.d.ts +1 -0
  132. package/esm/executor/senderManager/index.js +6 -2
  133. package/esm/executor/senderManager/index.js.map +1 -1
  134. package/esm/executor/senderManager/validateAndRefill.js +2 -2
  135. package/esm/executor/senderManager/validateAndRefill.js.map +1 -1
  136. package/esm/executor/utilityWalletMonitor.d.ts +4 -4
  137. package/esm/executor/utilityWalletMonitor.js +1 -1
  138. package/esm/executor/utilityWalletMonitor.js.map +1 -1
  139. package/esm/executor/utils.d.ts +7 -2
  140. package/esm/executor/utils.js +57 -26
  141. package/esm/executor/utils.js.map +1 -1
  142. package/esm/handlers/arbitrumGasPriceManager.d.ts +3 -2
  143. package/esm/handlers/arbitrumGasPriceManager.js +6 -2
  144. package/esm/handlers/arbitrumGasPriceManager.js.map +1 -1
  145. package/esm/handlers/eventManager.d.ts +9 -9
  146. package/esm/handlers/eventManager.js +59 -60
  147. package/esm/handlers/eventManager.js.map +1 -1
  148. package/esm/handlers/gasPriceManager.d.ts +8 -9
  149. package/esm/handlers/gasPriceManager.js +68 -80
  150. package/esm/handlers/gasPriceManager.js.map +1 -1
  151. package/esm/handlers/mantleGasPriceManager.d.ts +4 -4
  152. package/esm/handlers/mantleGasPriceManager.js +4 -4
  153. package/esm/handlers/mantleGasPriceManager.js.map +1 -1
  154. package/esm/handlers/optimismManager.d.ts +1 -1
  155. package/esm/handlers/optimismManager.js +1 -1
  156. package/esm/handlers/optimismManager.js.map +1 -1
  157. package/esm/mempool/index.d.ts +1 -1
  158. package/esm/mempool/index.js +1 -1
  159. package/esm/mempool/index.js.map +1 -1
  160. package/esm/mempool/mempool.d.ts +57 -22
  161. package/esm/mempool/mempool.js +180 -134
  162. package/esm/mempool/mempool.js.map +1 -1
  163. package/esm/mempool/reputationManager.d.ts +14 -14
  164. package/esm/mempool/reputationManager.js +36 -39
  165. package/esm/mempool/reputationManager.js.map +1 -1
  166. package/esm/mempool/statusManager.d.ts +20 -0
  167. package/esm/mempool/statusManager.js +143 -0
  168. package/esm/mempool/statusManager.js.map +1 -0
  169. package/esm/receiptCache/createMemoryReceiptCache.d.ts +3 -0
  170. package/esm/receiptCache/createMemoryReceiptCache.js +30 -0
  171. package/esm/receiptCache/createMemoryReceiptCache.js.map +1 -0
  172. package/esm/receiptCache/createRedisReceiptCache.d.ts +10 -0
  173. package/esm/receiptCache/createRedisReceiptCache.js +56 -0
  174. package/esm/receiptCache/createRedisReceiptCache.js.map +1 -0
  175. package/esm/receiptCache/index.d.ts +11 -0
  176. package/esm/receiptCache/index.js +21 -0
  177. package/esm/receiptCache/index.js.map +1 -0
  178. package/esm/rpc/createMethodHandler.js.map +1 -1
  179. package/esm/rpc/estimation/gasEstimationHandler.d.ts +2 -4
  180. package/esm/rpc/estimation/gasEstimationHandler.js.map +1 -1
  181. package/esm/rpc/estimation/gasEstimations06.d.ts +6 -7
  182. package/esm/rpc/estimation/gasEstimations06.js +1 -5
  183. package/esm/rpc/estimation/gasEstimations06.js.map +1 -1
  184. package/esm/rpc/estimation/gasEstimations07.d.ts +13 -41
  185. package/esm/rpc/estimation/gasEstimations07.js +27 -34
  186. package/esm/rpc/estimation/gasEstimations07.js.map +1 -1
  187. package/esm/{utils/preVerificationGasCalulator.d.ts → rpc/estimation/preVerificationGasCalculator.d.ts} +20 -6
  188. package/esm/{utils/preVerificationGasCalulator.js → rpc/estimation/preVerificationGasCalculator.js} +95 -47
  189. package/esm/rpc/estimation/preVerificationGasCalculator.js.map +1 -0
  190. package/esm/rpc/estimation/types.d.ts +4 -2
  191. package/esm/rpc/estimation/utils.d.ts +10 -8
  192. package/esm/rpc/estimation/utils.js +54 -48
  193. package/esm/rpc/estimation/utils.js.map +1 -1
  194. package/esm/rpc/methods/boost_sendUserOperation.d.ts +304 -0
  195. package/esm/rpc/methods/debug_bundler_clearReputation.js +1 -1
  196. package/esm/rpc/methods/debug_bundler_clearReputation.js.map +1 -1
  197. package/esm/rpc/methods/debug_bundler_clearState.js +1 -1
  198. package/esm/rpc/methods/debug_bundler_clearState.js.map +1 -1
  199. package/esm/rpc/methods/debug_bundler_dumpMempool.d.ts +338 -0
  200. package/esm/rpc/methods/debug_bundler_dumpReputation.js +1 -1
  201. package/esm/rpc/methods/debug_bundler_dumpReputation.js.map +1 -1
  202. package/esm/rpc/methods/eth_estimateUserOperationGas.d.ts +622 -14
  203. package/esm/rpc/methods/eth_estimateUserOperationGas.js +50 -29
  204. package/esm/rpc/methods/eth_estimateUserOperationGas.js.map +1 -1
  205. package/esm/rpc/methods/eth_getUserOperationByHash.d.ts +621 -11
  206. package/esm/rpc/methods/eth_getUserOperationByHash.js.map +1 -1
  207. package/esm/rpc/methods/eth_getUserOperationReceipt.d.ts +26 -26
  208. package/esm/rpc/methods/eth_getUserOperationReceipt.js +1 -1
  209. package/esm/rpc/methods/eth_sendUserOperation.d.ts +305 -1
  210. package/esm/rpc/methods/eth_sendUserOperation.js +132 -36
  211. package/esm/rpc/methods/eth_sendUserOperation.js.map +1 -1
  212. package/esm/rpc/methods/pimlico_getUserOperationStatus.js +1 -1
  213. package/esm/rpc/methods/pimlico_getUserOperationStatus.js.map +1 -1
  214. package/esm/rpc/methods/pimlico_sendUserOperationNow.d.ts +330 -26
  215. package/esm/rpc/methods/pimlico_sendUserOperationNow.js +15 -27
  216. package/esm/rpc/methods/pimlico_sendUserOperationNow.js.map +1 -1
  217. package/esm/rpc/methods/pimlico_simulateAssetChange.d.ts +620 -12
  218. package/esm/rpc/methods/pimlico_simulateAssetChange.js +14 -19
  219. package/esm/rpc/methods/pimlico_simulateAssetChange.js.map +1 -1
  220. package/esm/rpc/rpcHandler.d.ts +21 -22
  221. package/esm/rpc/rpcHandler.js +15 -17
  222. package/esm/rpc/rpcHandler.js.map +1 -1
  223. package/esm/rpc/server.d.ts +5 -5
  224. package/esm/rpc/server.js +15 -11
  225. package/esm/rpc/server.js.map +1 -1
  226. package/esm/rpc/validation/BundlerCollectorTracerV06.js +1 -1
  227. package/esm/rpc/validation/BundlerCollectorTracerV06.js.map +1 -1
  228. package/esm/rpc/validation/BundlerCollectorTracerV07.js +1 -1
  229. package/esm/rpc/validation/BundlerCollectorTracerV07.js.map +1 -1
  230. package/esm/rpc/validation/SafeValidator.d.ts +13 -14
  231. package/esm/rpc/validation/SafeValidator.js +24 -24
  232. package/esm/rpc/validation/SafeValidator.js.map +1 -1
  233. package/esm/rpc/validation/TracerResultParserV06.d.ts +2 -2
  234. package/esm/rpc/validation/TracerResultParserV06.js +11 -11
  235. package/esm/rpc/validation/TracerResultParserV06.js.map +1 -1
  236. package/esm/rpc/validation/TracerResultParserV07.d.ts +2 -2
  237. package/esm/rpc/validation/TracerResultParserV07.js +13 -13
  238. package/esm/rpc/validation/TracerResultParserV07.js.map +1 -1
  239. package/esm/rpc/validation/UnsafeValidator.d.ts +18 -14
  240. package/esm/rpc/validation/UnsafeValidator.js +71 -40
  241. package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
  242. package/esm/store/createMempoolStore.d.ts +1 -1
  243. package/esm/store/createMempoolStore.js +63 -139
  244. package/esm/store/createMempoolStore.js.map +1 -1
  245. package/esm/store/index.d.ts +4 -75
  246. package/esm/store/index.js +4 -1
  247. package/esm/store/index.js.map +1 -1
  248. package/esm/store/outstanding/index.d.ts +13 -0
  249. package/esm/store/outstanding/index.js +16 -0
  250. package/esm/store/outstanding/index.js.map +1 -0
  251. package/esm/store/{createMemoryOutstandingStore.d.ts → outstanding/memory.d.ts} +14 -13
  252. package/esm/store/outstanding/memory.js +263 -0
  253. package/esm/store/outstanding/memory.js.map +1 -0
  254. package/esm/store/outstanding/redis.d.ts +11 -0
  255. package/esm/store/outstanding/redis.js +229 -0
  256. package/esm/store/outstanding/redis.js.map +1 -0
  257. package/esm/store/outstanding/types.d.ts +19 -0
  258. package/esm/store/outstanding/types.js +2 -0
  259. package/esm/store/outstanding/types.js.map +1 -0
  260. package/esm/store/processing/index.d.ts +11 -0
  261. package/esm/store/processing/index.js +17 -0
  262. package/esm/store/processing/index.js.map +1 -0
  263. package/esm/store/processing/memory.d.ts +16 -0
  264. package/esm/store/processing/memory.js +58 -0
  265. package/esm/store/processing/memory.js.map +1 -0
  266. package/esm/store/processing/redis.d.ts +23 -0
  267. package/esm/store/processing/redis.js +85 -0
  268. package/esm/store/processing/redis.js.map +1 -0
  269. package/esm/store/processing/types.d.ts +10 -0
  270. package/esm/store/processing/types.js +2 -0
  271. package/esm/store/processing/types.js.map +1 -0
  272. package/esm/store/types.d.ts +50 -0
  273. package/esm/store/types.js +2 -0
  274. package/esm/store/types.js.map +1 -0
  275. package/esm/types/contracts/PimlicoSimulations.d.ts +81 -0
  276. package/esm/types/contracts/PimlicoSimulations.js +105 -0
  277. package/esm/types/contracts/PimlicoSimulations.js.map +1 -1
  278. package/esm/types/gasPrice.js +0 -18
  279. package/esm/types/gasPrice.js.map +1 -1
  280. package/esm/types/interfaces.d.ts +15 -10
  281. package/esm/types/mempool.d.ts +3 -0
  282. package/esm/types/schemas.d.ts +13174 -4732
  283. package/esm/types/schemas.js +113 -25
  284. package/esm/types/schemas.js.map +1 -1
  285. package/esm/types/utils.d.ts +2 -5
  286. package/esm/types/utils.js +16 -18
  287. package/esm/types/utils.js.map +1 -1
  288. package/esm/types/validation.d.ts +7646 -6912
  289. package/esm/types/validation.js +122 -152
  290. package/esm/types/validation.js.map +1 -1
  291. package/esm/utils/eip7702.d.ts +2 -1
  292. package/esm/utils/eip7702.js +14 -8
  293. package/esm/utils/eip7702.js.map +1 -1
  294. package/esm/utils/entryPointOverrides.js +18 -4
  295. package/esm/utils/entryPointOverrides.js.map +1 -1
  296. package/esm/utils/helpers.d.ts +2 -1
  297. package/esm/utils/helpers.js +30 -11
  298. package/esm/utils/helpers.js.map +1 -1
  299. package/esm/utils/index.d.ts +0 -1
  300. package/esm/utils/index.js +0 -1
  301. package/esm/utils/index.js.map +1 -1
  302. package/esm/utils/metrics.d.ts +2 -1
  303. package/esm/utils/metrics.js +15 -8
  304. package/esm/utils/metrics.js.map +1 -1
  305. package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.js +8 -9
  306. package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.js.map +1 -1
  307. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.d.ts +24 -2
  308. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js +85 -64
  309. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js.map +1 -1
  310. package/esm/utils/minMaxQueue/index.d.ts +2 -2
  311. package/esm/utils/minMaxQueue/index.js +4 -3
  312. package/esm/utils/minMaxQueue/index.js.map +1 -1
  313. package/esm/utils/rpc-reply.d.ts +3 -3
  314. package/esm/utils/rpc-reply.js.map +1 -1
  315. package/esm/utils/toViemStateOverrides.js +7 -7
  316. package/esm/utils/toViemStateOverrides.js.map +1 -1
  317. package/esm/utils/userop.d.ts +87 -55
  318. package/esm/utils/userop.js +138 -248
  319. package/esm/utils/userop.js.map +1 -1
  320. package/package.json +4 -2
  321. package/contracts/build-info/7710b5a048396e70.json +0 -1
  322. package/esm/executor/userOpMonitor.js.map +0 -1
  323. package/esm/mempool/monitoring.d.ts +0 -15
  324. package/esm/mempool/monitoring.js +0 -118
  325. package/esm/mempool/monitoring.js.map +0 -1
  326. package/esm/store/createMemoryOutstandingStore.js +0 -240
  327. package/esm/store/createMemoryOutstandingStore.js.map +0 -1
  328. package/esm/store/createRedisOutstandingStore.d.ts +0 -27
  329. package/esm/store/createRedisOutstandingStore.js +0 -344
  330. package/esm/store/createRedisOutstandingStore.js.map +0 -1
  331. package/esm/store/createRedisStore.d.ts +0 -9
  332. package/esm/store/createRedisStore.js +0 -131
  333. package/esm/store/createRedisStore.js.map +0 -1
  334. package/esm/store/createStore.d.ts +0 -6
  335. package/esm/store/createStore.js +0 -66
  336. package/esm/store/createStore.js.map +0 -1
  337. package/esm/utils/preVerificationGasCalulator.js.map +0 -1
@@ -128,6 +128,12 @@ export function createMetrics(registry, register = true) {
128
128
  labelNames: [],
129
129
  registers
130
130
  });
131
+ const userOpsDropped = new Counter({
132
+ name: "alto_user_operations_dropped_total",
133
+ help: "Number of user operations dropped from mempool",
134
+ labelNames: ["reason"],
135
+ registers
136
+ });
131
137
  const userOpsSubmissionAttempts = new Histogram({
132
138
  name: "alto_user_operations_attempts_before_inclusion",
133
139
  help: "Number of submission attempts needed before a user operation was included on-chain",
@@ -158,18 +164,18 @@ export function createMetrics(registry, register = true) {
158
164
  labelNames: [],
159
165
  registers
160
166
  });
161
- const emittedOpEvents = new Counter({
162
- name: "alto_emitted_user_operation_events",
163
- help: "Total number of emitted UserOperation status events",
164
- labelNames: ["event_type", "status"],
165
- registers
166
- });
167
167
  const walletsProcessingTime = new Histogram({
168
168
  name: "alto_executor_wallets_processing_duration_seconds",
169
169
  help: "Time spent processing user operations by executor wallets",
170
170
  labelNames: [],
171
171
  registers
172
172
  });
173
+ const altoSecondValidationFailed = new Counter({
174
+ name: "alto_second_validation_failed",
175
+ help: "Number of times alto's second estimation failed during eth_estimateUserOperationGas and we returned 2x gas limits",
176
+ labelNames: [],
177
+ registers
178
+ });
173
179
  return {
174
180
  httpRequests,
175
181
  httpRequestsDuration,
@@ -188,13 +194,14 @@ export function createMetrics(registry, register = true) {
188
194
  verificationGasLimitEstimationCount,
189
195
  replacedTransactions,
190
196
  userOpsResubmitted,
197
+ userOpsDropped,
191
198
  utilityWalletBalance,
192
199
  utilityWalletInsufficientBalance,
193
200
  executorWalletsBalances,
194
201
  executorWalletsMinBalance,
195
- emittedOpEvents,
196
202
  walletsProcessingTime,
197
- userOpsSubmissionAttempts
203
+ userOpsSubmissionAttempts,
204
+ altoSecondValidationFailed
198
205
  };
199
206
  }
200
207
  //# sourceMappingURL=metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../utils/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../utils/metrics.ts"],"names":[],"mappings":"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"}
@@ -30,24 +30,23 @@ export const createMemoryMinMaxQueue = ({ config }) => {
30
30
  let maxDeque = [];
31
31
  let latestValue = null;
32
32
  return {
33
- saveValue: (value) => {
33
+ saveValue: async (value) => {
34
34
  if (value === 0n) {
35
- return Promise.resolve();
35
+ return;
36
36
  }
37
37
  const result = updateQueues(value, queueValidity, minDeque, maxDeque);
38
38
  minDeque = result.minDeque;
39
39
  maxDeque = result.maxDeque;
40
40
  latestValue = value;
41
- return Promise.resolve();
42
41
  },
43
- getLatestValue: () => {
44
- return Promise.resolve(latestValue);
42
+ getLatestValue: async () => {
43
+ return latestValue;
45
44
  },
46
- getMinValue: () => {
47
- return Promise.resolve(minDeque.length > 0 ? minDeque[0].value : null);
45
+ getMinValue: async () => {
46
+ return minDeque.length > 0 ? minDeque[0].value : null;
48
47
  },
49
- getMaxValue: () => {
50
- return Promise.resolve(maxDeque.length > 0 ? maxDeque[0].value : null);
48
+ getMaxValue: async () => {
49
+ return maxDeque.length > 0 ? maxDeque[0].value : null;
51
50
  }
52
51
  };
53
52
  };
@@ -1 +1 @@
1
- {"version":3,"file":"createMemoryMinMaxQueue.js","sourceRoot":"","sources":["../../../utils/minMaxQueue/createMemoryMinMaxQueue.ts"],"names":[],"mappings":"AAKA,MAAM,YAAY,GAAG,CACjB,KAAa,EACb,aAAqB,EACrB,QAAsB,EACtB,QAAsB,EAC+C,EAAE;IACvE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA,CAAC,8BAA8B;IACnE,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,CAAA;IAE5C,yBAAyB;IACzB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,UAAU,CAC3C,CAAA;IACD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,UAAU,CAC3C,CAAA;IAED,yBAAyB;IACzB,OACI,gBAAgB,CAAC,MAAM;QACvB,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,EAC9D,CAAC;QACC,gBAAgB,CAAC,GAAG,EAAE,CAAA;IAC1B,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAE3C,yBAAyB;IACzB,OACI,gBAAgB,CAAC,MAAM;QACvB,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,EAC9D,CAAC;QACC,gBAAgB,CAAC,GAAG,EAAE,CAAA;IAC1B,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAE3C,OAAO;QACH,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ,EAAE,gBAAgB;QAC1B,SAAS;KACZ,CAAA;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACpC,MAAM,EACe,EAAe,EAAE;IACtC,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAA;IAE3C,oCAAoC;IACpC,IAAI,QAAQ,GAAiB,EAAE,CAAA;IAC/B,oCAAoC;IACpC,IAAI,QAAQ,GAAiB,EAAE,CAAA;IAC/B,IAAI,WAAW,GAAkB,IAAI,CAAA;IAErC,OAAO;QACH,SAAS,EAAE,CAAC,KAAa,EAAE,EAAE;YACzB,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBACf,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;YAC5B,CAAC;YAED,MAAM,MAAM,GAAG,YAAY,CACvB,KAAK,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,CACX,CAAA;YACD,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;YAC1B,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;YAC1B,WAAW,GAAG,KAAK,CAAA;YACnB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;QAC5B,CAAC;QACD,cAAc,EAAE,GAAG,EAAE;YACjB,OAAO,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACvC,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAClB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CACjD,CAAA;QACL,CAAC;QACD,WAAW,EAAE,GAAG,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAClB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CACjD,CAAA;QACL,CAAC;KACJ,CAAA;AACL,CAAC,CAAA"}
1
+ {"version":3,"file":"createMemoryMinMaxQueue.js","sourceRoot":"","sources":["../../../utils/minMaxQueue/createMemoryMinMaxQueue.ts"],"names":[],"mappings":"AAKA,MAAM,YAAY,GAAG,CACjB,KAAa,EACb,aAAqB,EACrB,QAAsB,EACtB,QAAsB,EAC+C,EAAE;IACvE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA,CAAC,8BAA8B;IACnE,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,CAAA;IAE5C,yBAAyB;IACzB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,UAAU,CAC3C,CAAA;IACD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,UAAU,CAC3C,CAAA;IAED,yBAAyB;IACzB,OACI,gBAAgB,CAAC,MAAM;QACvB,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,EAC9D,CAAC;QACC,gBAAgB,CAAC,GAAG,EAAE,CAAA;IAC1B,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAE3C,yBAAyB;IACzB,OACI,gBAAgB,CAAC,MAAM;QACvB,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,EAC9D,CAAC;QACC,gBAAgB,CAAC,GAAG,EAAE,CAAA;IAC1B,CAAC;IACD,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;IAE3C,OAAO;QACH,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ,EAAE,gBAAgB;QAC1B,SAAS;KACZ,CAAA;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACpC,MAAM,EACe,EAAe,EAAE;IACtC,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAA;IAE3C,oCAAoC;IACpC,IAAI,QAAQ,GAAiB,EAAE,CAAA;IAC/B,oCAAoC;IACpC,IAAI,QAAQ,GAAiB,EAAE,CAAA;IAC/B,IAAI,WAAW,GAAkB,IAAI,CAAA;IAErC,OAAO;QACH,SAAS,EAAE,KAAK,EAAE,KAAa,EAAE,EAAE;YAC/B,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBACf,OAAM;YACV,CAAC;YAED,MAAM,MAAM,GAAG,YAAY,CACvB,KAAK,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,CACX,CAAA;YACD,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;YAC1B,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;YAC1B,WAAW,GAAG,KAAK,CAAA;QACvB,CAAC;QACD,cAAc,EAAE,KAAK,IAAI,EAAE;YACvB,OAAO,WAAW,CAAA;QACtB,CAAC;QACD,WAAW,EAAE,KAAK,IAAI,EAAE;YACpB,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACzD,CAAC;QACD,WAAW,EAAE,KAAK,IAAI,EAAE;YACpB,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACzD,CAAC;KACJ,CAAA;AACL,CAAC,CAAA"}
@@ -1,7 +1,29 @@
1
+ /**
2
+ * MinMaxQueue implementation in Redis using a single sorted set
3
+ *
4
+ * ## Data Structure
5
+ * - Uses a Redis sorted set where:
6
+ * - Score: timestamp when value was added (seconds since epoch)
7
+ * - Member: the actual bigint value (stored as string)
8
+ *
9
+ * ## Flow
10
+ * 1. **Adding values**: New values are added/updated with current timestamp as score
11
+ * 2. **Reading values**: Queries filter out expired entries based on timestamp
12
+ * 3. **Cleanup**: Background process runs every minute to remove expired entries
13
+ *
14
+ * ## Optimization Strategy
15
+ * - Lazy cleanup: expired entries filtered on read, bulk removed by background process (removing is expensive)
16
+ *
17
+ * ## TTL Management
18
+ * - Entries expire based on `queueValidity` (configured via `gasPriceExpiry`)
19
+ * - Background cleanup prevents unbounded growth
20
+ * - Read operations ignore expired entries without removing them
21
+ */
1
22
  import type { MinMaxQueue } from "./index.js";
2
23
  import type { AltoConfig } from "../../createConfig.js";
3
- export declare const createRedisMinMaxQueue: ({ config, keyPrefix }: {
24
+ export declare const createRedisMinMaxQueue: ({ config, queueName, redisEndpoint }: {
4
25
  config: AltoConfig;
5
- keyPrefix: string;
26
+ queueName: string;
27
+ redisEndpoint: string;
6
28
  }) => MinMaxQueue;
7
29
  //# sourceMappingURL=createRedisMinMaxQueue.d.ts.map
@@ -1,108 +1,129 @@
1
+ /**
2
+ * MinMaxQueue implementation in Redis using a single sorted set
3
+ *
4
+ * ## Data Structure
5
+ * - Uses a Redis sorted set where:
6
+ * - Score: timestamp when value was added (seconds since epoch)
7
+ * - Member: the actual bigint value (stored as string)
8
+ *
9
+ * ## Flow
10
+ * 1. **Adding values**: New values are added/updated with current timestamp as score
11
+ * 2. **Reading values**: Queries filter out expired entries based on timestamp
12
+ * 3. **Cleanup**: Background process runs every minute to remove expired entries
13
+ *
14
+ * ## Optimization Strategy
15
+ * - Lazy cleanup: expired entries filtered on read, bulk removed by background process (removing is expensive)
16
+ *
17
+ * ## TTL Management
18
+ * - Entries expire based on `queueValidity` (configured via `gasPriceExpiry`)
19
+ * - Background cleanup prevents unbounded growth
20
+ * - Read operations ignore expired entries without removing them
21
+ */
1
22
  import Redis from "ioredis";
2
23
  import * as sentry from "@sentry/node";
3
- // Sorted TTL queue, one queue to keep track of values and other queue to keep track of TTL.
4
24
  class SortedTtlSet {
5
25
  redis;
6
- valueKey;
7
- timestampKey;
26
+ redisKey; // Single sorted set: score = timestamp, member = value
8
27
  queueValidity;
9
- constructor({ keyPrefix, config }) {
10
- if (!config.redisGasPriceQueueUrl) {
11
- throw new Error("Redis URL not provided");
12
- }
13
- const redis = new Redis(config.redisGasPriceQueueUrl);
28
+ cleanupInterval = null;
29
+ constructor({ queueName, config, redisEndpoint }) {
30
+ const redis = new Redis(redisEndpoint);
14
31
  const queueValidity = config.gasPriceExpiry;
15
- const redisKey = `${config.chainId}:${keyPrefix}`;
16
32
  this.redis = redis;
17
- this.valueKey = `${redisKey}:value`;
18
- this.timestampKey = `${redisKey}:timestamp`;
33
+ this.redisKey = `${config.redisKeyPrefix}:${config.chainId}:${queueName}`;
19
34
  this.queueValidity = queueValidity;
35
+ // Start background cleanup every minute
36
+ this.startBackgroundCleanup();
37
+ }
38
+ startBackgroundCleanup() {
39
+ // Run cleanup every minute
40
+ this.cleanupInterval = setInterval(() => {
41
+ this.cleanup().catch((err) => {
42
+ sentry.captureException(err);
43
+ });
44
+ }, 60 * 1_000);
45
+ // Allow process to exit even if interval is active
46
+ if (this.cleanupInterval.unref) {
47
+ this.cleanupInterval.unref();
48
+ }
49
+ }
50
+ async cleanup() {
51
+ const cutoffTime = Date.now() / 1_000 - this.queueValidity * 5;
52
+ await this.redis.zremrangebyscore(this.redisKey, "-inf", `(${cutoffTime}`);
20
53
  }
21
54
  async add(value, logger) {
22
55
  try {
23
- await this.pruneExpiredEntries(logger);
24
56
  if (value === 0n) {
25
57
  return;
26
58
  }
27
59
  const now = Date.now() / 1_000;
28
60
  const valueStr = value.toString();
29
- // Check if value exists in the value set
30
- const exists = await this.redis.zscore(this.valueKey, valueStr);
31
- if (exists) {
32
- // If value exists, only update its timestamp
33
- const multi = this.redis.multi();
34
- multi.zrem(this.timestampKey, valueStr); // Remove old timestamp
35
- multi.zadd(this.timestampKey, now, valueStr); // Add new timestamp
36
- await multi.exec();
37
- }
38
- else {
39
- // If it's a new value, add entry to timestamp and value queues
40
- const multi = this.redis.multi();
41
- multi.zadd(this.timestampKey, now, valueStr);
42
- multi.zadd(this.valueKey, valueStr, valueStr);
43
- await multi.exec();
44
- }
61
+ // Add or update (if exists) with current timestamp
62
+ await this.redis.zadd(this.redisKey, now, valueStr);
45
63
  }
46
64
  catch (err) {
47
65
  logger.error({ err }, "Failed to save value to minMaxQueue");
48
66
  sentry.captureException(err);
49
67
  }
50
68
  }
51
- async pruneExpiredEntries(logger) {
69
+ getValidCutoffTime() {
70
+ return Date.now() / 1_000 - this.queueValidity;
71
+ }
72
+ async getMin(logger) {
52
73
  try {
53
- const timestamp = Date.now() / 1_000;
54
- const cutoffTime = timestamp - this.queueValidity;
55
- // Get expired unique IDs from time queue
56
- const expiredMembers = await this.redis.zrangebyscore(this.timestampKey, "-inf", `(${cutoffTime}` // exclusive upper bound
57
- );
58
- if (expiredMembers.length) {
59
- const multi = this.redis.multi();
60
- // Remove expired entries from both sets
61
- multi.zrem(this.timestampKey, ...expiredMembers);
62
- multi.zrem(this.valueKey, ...expiredMembers);
63
- await multi.exec();
74
+ // Get all valid (non-expired) values
75
+ const validValues = await this.redis.zrangebyscore(this.redisKey, this.getValidCutoffTime(), "+inf");
76
+ if (validValues.length === 0) {
77
+ return null;
64
78
  }
79
+ // Find minimum value among valid entries
80
+ const bigIntValues = validValues.map(BigInt);
81
+ return bigIntValues.reduce((min, val) => (val < min ? val : min));
65
82
  }
66
83
  catch (err) {
67
- logger.error({ err }, "Failed to prune expired entries");
84
+ logger.error({ err }, "Failed to get min value");
68
85
  sentry.captureException(err);
69
- }
70
- }
71
- async getMin(logger) {
72
- // Prune expired entries
73
- await this.pruneExpiredEntries(logger);
74
- // Get the smallest value from the value set
75
- const values = await this.redis.zrange(this.valueKey, 0, 0);
76
- if (values.length === 0) {
77
86
  return null;
78
87
  }
79
- return BigInt(values[0]);
80
88
  }
81
89
  async getMax(logger) {
82
- // Prune expired entries
83
- await this.pruneExpiredEntries(logger);
84
- // Get the largest value from the value set (using reverse range)
85
- const values = await this.redis.zrange(this.valueKey, -1, -1);
86
- if (values.length === 0) {
90
+ try {
91
+ // Get all valid (non-expired) values
92
+ const validValues = await this.redis.zrangebyscore(this.redisKey, this.getValidCutoffTime(), "+inf");
93
+ if (validValues.length === 0) {
94
+ return null;
95
+ }
96
+ // Find maximum value among valid entries
97
+ const bigIntValues = validValues.map(BigInt);
98
+ return bigIntValues.reduce((max, val) => (val > max ? val : max));
99
+ }
100
+ catch (err) {
101
+ logger.error({ err }, "Failed to get max value");
102
+ sentry.captureException(err);
87
103
  return null;
88
104
  }
89
- return BigInt(values[0]);
90
105
  }
91
106
  async getLatestValue(logger) {
92
- // Prune expired entries
93
- await this.pruneExpiredEntries(logger);
94
- // Get the member with highest TTL (most recent timestamp)
95
- const values = await this.redis.zrange(this.timestampKey, -1, -1);
96
- if (values.length === 0) {
107
+ try {
108
+ // Get the most recently added value (highest timestamp) that's still valid
109
+ const validValues = await this.redis.zrevrangebyscore(this.redisKey, "+inf", this.getValidCutoffTime(), "LIMIT", 0, 1);
110
+ if (validValues.length === 0) {
111
+ return null;
112
+ }
113
+ return BigInt(validValues[0]);
114
+ }
115
+ catch (err) {
116
+ logger.error({ err }, "Failed to get latest value");
117
+ sentry.captureException(err);
97
118
  return null;
98
119
  }
99
- return BigInt(values[0]);
100
120
  }
101
121
  }
102
- export const createRedisMinMaxQueue = ({ config, keyPrefix }) => {
122
+ export const createRedisMinMaxQueue = ({ config, queueName, redisEndpoint }) => {
103
123
  const queue = new SortedTtlSet({
104
124
  config,
105
- keyPrefix: `${keyPrefix}:minMaxQueue`
125
+ redisEndpoint,
126
+ queueName
106
127
  });
107
128
  const logger = config.getLogger({ module: "minMaxQueue" }, {
108
129
  level: config.logLevel
@@ -1 +1 @@
1
- {"version":3,"file":"createRedisMinMaxQueue.js","sourceRoot":"","sources":["../../../utils/minMaxQueue/createRedisMinMaxQueue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createRedisMinMaxQueue.js","sourceRoot":"","sources":["../../../utils/minMaxQueue/createRedisMinMaxQueue.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ export interface MinMaxQueue {
5
5
  getMinValue(): Promise<bigint | null>;
6
6
  getMaxValue(): Promise<bigint | null>;
7
7
  }
8
- export declare const createMinMaxQueue: ({ config, keyPrefix }: {
8
+ export declare const createMinMaxQueue: ({ config, queueName }: {
9
9
  config: AltoConfig;
10
- keyPrefix: string;
10
+ queueName: string;
11
11
  }) => MinMaxQueue;
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1,10 +1,11 @@
1
1
  import { createMemoryMinMaxQueue } from "./createMemoryMinMaxQueue.js";
2
2
  import { createRedisMinMaxQueue } from "./createRedisMinMaxQueue.js";
3
- export const createMinMaxQueue = ({ config, keyPrefix }) => {
4
- if (config.redisGasPriceQueueUrl) {
3
+ export const createMinMaxQueue = ({ config, queueName }) => {
4
+ if (config.enableHorizontalScaling && config.redisEndpoint) {
5
5
  return createRedisMinMaxQueue({
6
6
  config,
7
- keyPrefix
7
+ queueName: queueName,
8
+ redisEndpoint: config.redisEndpoint
8
9
  });
9
10
  }
10
11
  return createMemoryMinMaxQueue({ config });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/minMaxQueue/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AASjE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAC9B,MAAM,EACN,SAAS,EAC+B,EAAe,EAAE;IACzD,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAC/B,OAAO,sBAAsB,CAAC;YAC1B,MAAM;YACN,SAAS;SACZ,CAAC,CAAA;IACN,CAAC;IAED,OAAO,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;AAC9C,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/minMaxQueue/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AASjE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAC9B,MAAM,EACN,SAAS,EAC+B,EAAe,EAAE;IACzD,IAAI,MAAM,CAAC,uBAAuB,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzD,OAAO,sBAAsB,CAAC;YAC1B,MAAM;YACN,SAAS,EAAE,SAAS;YACpB,aAAa,EAAE,MAAM,CAAC,aAAa;SACtC,CAAC,CAAA;IACN,CAAC;IAED,OAAO,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;AAC9C,CAAC,CAAA"}
@@ -2,12 +2,12 @@ import type { FastifyReply } from "fastify";
2
2
  import type * as WebSocket from "ws";
3
3
  import { RpcStatus } from "./fastify-rpc-decorators.js";
4
4
  declare class RpcReply {
5
- private reply;
6
- private websocket;
5
+ private readonly reply;
6
+ private readonly websocket;
7
7
  constructor(reply: FastifyReply | null, websocket: WebSocket.WebSocket | null);
8
8
  status(status: number): this;
9
9
  send(data: any): Promise<void>;
10
- setRpcStatus(status: RpcStatus): RpcReply;
10
+ setRpcStatus(status: RpcStatus): this;
11
11
  static fromHttpReply(reply: FastifyReply): RpcReply;
12
12
  static fromSocket(socket: WebSocket.WebSocket): RpcReply;
13
13
  get rpcStatus(): RpcStatus;
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-reply.js","sourceRoot":"","sources":["../../utils/rpc-reply.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,MAAM,QAAQ;IACF,KAAK,CAAqB;IAC1B,SAAS,CAA4B;IAE7C,YACI,KAA0B,EAC1B,SAAqC;QAErC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC9B,CAAC;IAEM,MAAM,CAAC,MAAc;QACxB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QAE1B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,yCAAyC;IAClC,KAAK,CAAC,IAAI,CAAC,IAAS;QACvB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,CAAC;IACL,CAAC;IAEM,YAAY,CAAC,MAAiB;QACjC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;QAEhC,OAAO,IAAI,CAAA;IACf,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,KAAmB;QACpC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAE1C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAA2B;QACzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE3C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,SAAS,IAAI,SAAS,CAAC,KAAK,CAAA;IACnD,CAAC;CACJ;AAED,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"rpc-reply.js","sourceRoot":"","sources":["../../utils/rpc-reply.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEpD,MAAM,QAAQ;IACO,KAAK,CAAqB;IAC1B,SAAS,CAA4B;IAEtD,YACI,KAA0B,EAC1B,SAAqC;QAErC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC9B,CAAC;IAEM,MAAM,CAAC,MAAc;QACxB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QAE1B,OAAO,IAAI,CAAA;IACf,CAAC;IAED,yCAAyC;IAClC,KAAK,CAAC,IAAI,CAAC,IAAS;QACvB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,CAAC;IACL,CAAC;IAEM,YAAY,CAAC,MAAiB;QACjC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;QAEhC,OAAO,IAAI,CAAA;IACf,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,KAAmB;QACpC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAE1C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,MAA2B;QACzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAE3C,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,KAAK,EAAE,SAAS,IAAI,SAAS,CAAC,KAAK,CAAA;IACnD,CAAC;CACJ;AAED,eAAe,QAAQ,CAAA"}
@@ -12,12 +12,12 @@ export function toViemStateOverrides(stateOverrides) {
12
12
  const validatedAddress = getAddress(address);
13
13
  const entry = {
14
14
  address: validatedAddress,
15
- balance: override.balance !== undefined
16
- ? override.balance
17
- : undefined,
18
- nonce: override.nonce !== undefined
19
- ? Number(override.nonce)
20
- : undefined,
15
+ balance: override.balance === undefined
16
+ ? undefined
17
+ : override.balance,
18
+ nonce: override.nonce === undefined
19
+ ? undefined
20
+ : Number(override.nonce),
21
21
  code: override.code
22
22
  };
23
23
  // Convert state or stateDiff from record to array format
@@ -35,7 +35,7 @@ export function toViemStateOverrides(stateOverrides) {
35
35
  }
36
36
  result.push(entry);
37
37
  }
38
- catch (e) {
38
+ catch {
39
39
  console.warn(`Invalid address in state override: ${address}`);
40
40
  }
41
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"toViemStateOverrides.js","sourceRoot":"","sources":["../../utils/toViemStateOverrides.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACb,MAAM,MAAM,CAAA;AAGb,MAAM,UAAU,oBAAoB,CAChC,cAA+B;IAE/B,MAAM,MAAM,GAAsB,EAAE,CAAA;IAEpC,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/D,gCAAgC;QAChC,IAAI,CAAC,QAAQ;YAAE,SAAQ;QAEvB,IAAI,CAAC;YACD,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;YAC5C,MAAM,KAAK,GAA8B;gBACrC,OAAO,EAAE,gBAAgB;gBACzB,OAAO,EACH,QAAQ,CAAC,OAAO,KAAK,SAAS;oBAC1B,CAAC,CAAC,QAAQ,CAAC,OAAO;oBAClB,CAAC,CAAC,SAAS;gBACnB,KAAK,EACD,QAAQ,CAAC,KAAK,KAAK,SAAS;oBACxB,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;oBACxB,CAAC,CAAC,SAAS;gBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACtB,CAAA;YAED,yDAAyD;YACzD,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAC5C,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBAChB,IAAI,EAAE,IAAW;oBACjB,KAAK,EAAE,KAAY;iBACtB,CAAC,CACL,CAAA;YACL,CAAC;YAED,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACrB,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,GAAG,CACpD,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBAChB,IAAI,EAAE,IAAW;oBACjB,KAAK,EAAE,KAAY;iBACtB,CAAC,CACL,CAAA;YACL,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAA;QACjE,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAA;AACjB,CAAC"}
1
+ {"version":3,"file":"toViemStateOverrides.js","sourceRoot":"","sources":["../../utils/toViemStateOverrides.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACb,MAAM,MAAM,CAAA;AAGb,MAAM,UAAU,oBAAoB,CAChC,cAA+B;IAE/B,MAAM,MAAM,GAAsB,EAAE,CAAA;IAEpC,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,OAAO,MAAM,CAAA;IACjB,CAAC;IAED,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/D,gCAAgC;QAChC,IAAI,CAAC,QAAQ;YAAE,SAAQ;QAEvB,IAAI,CAAC;YACD,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;YAC5C,MAAM,KAAK,GAA8B;gBACrC,OAAO,EAAE,gBAAgB;gBACzB,OAAO,EACH,QAAQ,CAAC,OAAO,KAAK,SAAS;oBAC1B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ,CAAC,OAAO;gBAC1B,KAAK,EACD,QAAQ,CAAC,KAAK,KAAK,SAAS;oBACxB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAChC,IAAI,EAAE,QAAQ,CAAC,IAAI;aACtB,CAAA;YAED,yDAAyD;YACzD,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAC5C,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBAChB,IAAI,EAAE,IAAW;oBACjB,KAAK,EAAE,KAAY;iBACtB,CAAC,CACL,CAAA;YACL,CAAC;YAED,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACrB,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,GAAG,CACpD,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBAChB,IAAI,EAAE,IAAW;oBACjB,KAAK,EAAE,KAAY;iBACtB,CAAC,CACL,CAAA;YACL,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACtB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,CAAC,IAAI,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAA;QACjE,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAA;AACjB,CAAC"}