@pimlico/alto 0.0.0-main.20240612T111639 → 0.0.0-prool.20240609T211112

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 (107) hide show
  1. package/esm/cli/config/bundler.d.ts +37 -43
  2. package/esm/cli/config/bundler.js +0 -1
  3. package/esm/cli/config/bundler.js.map +1 -1
  4. package/esm/cli/config/options.js +0 -6
  5. package/esm/cli/config/options.js.map +1 -1
  6. package/esm/cli/handler.js +2 -26
  7. package/esm/cli/handler.js.map +1 -1
  8. package/esm/executor/executor.js +2 -15
  9. package/esm/executor/executor.js.map +1 -1
  10. package/esm/index.d.ts +448 -1
  11. package/esm/index.js +63 -1
  12. package/esm/index.js.map +1 -1
  13. package/esm/mempool/mempool.js +7 -5
  14. package/esm/mempool/mempool.js.map +1 -1
  15. package/esm/mempool/reputationManager.js +3 -7
  16. package/esm/mempool/reputationManager.js.map +1 -1
  17. package/esm/rpc/EntryPointSimulationsV07.d.ts +1 -5
  18. package/esm/rpc/EntryPointSimulationsV07.js +2 -2
  19. package/esm/rpc/EntryPointSimulationsV07.js.map +1 -1
  20. package/esm/rpc/gasEstimation.js +3 -7
  21. package/esm/rpc/gasEstimation.js.map +1 -1
  22. package/esm/rpc/rpcHandler.js +8 -19
  23. package/esm/rpc/rpcHandler.js.map +1 -1
  24. package/esm/rpc/server.js +0 -4
  25. package/esm/rpc/server.js.map +1 -1
  26. package/esm/rpc/validation/SafeValidator.d.ts +6 -2
  27. package/esm/rpc/validation/SafeValidator.js +206 -49
  28. package/esm/rpc/validation/SafeValidator.js.map +1 -1
  29. package/esm/rpc/validation/TracerResultParserV07.js +2 -6
  30. package/esm/rpc/validation/TracerResultParserV07.js.map +1 -1
  31. package/esm/rpc/validation/UnsafeValidator.d.ts +1 -2
  32. package/esm/rpc/validation/UnsafeValidator.js +45 -45
  33. package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
  34. package/esm/rpc/validation/tracer.d.ts +1 -1
  35. package/esm/types/contracts/EntryPointSimulations.d.ts +1 -0
  36. package/esm/types/contracts/EntryPointSimulations.js +2 -1941
  37. package/esm/types/contracts/EntryPointSimulations.js.map +1 -1
  38. package/esm/types/contracts/PimlicoEntryPointSimulations.d.ts +1 -1
  39. package/esm/types/contracts/PimlicoEntryPointSimulations.js +1 -1
  40. package/esm/types/contracts/PimlicoEntryPointSimulations.js.map +1 -1
  41. package/esm/types/schemas.d.ts +116 -116
  42. package/esm/types/validation.d.ts +12 -12
  43. package/esm/utils/index.d.ts +1 -0
  44. package/esm/utils/index.js +1 -0
  45. package/esm/utils/index.js.map +1 -1
  46. package/esm/utils/metrics.d.ts +4 -4
  47. package/esm/utils/test.d.ts +1 -1
  48. package/esm/utils/toArgs.d.ts +36 -0
  49. package/esm/utils/toArgs.js +80 -0
  50. package/esm/utils/toArgs.js.map +1 -0
  51. package/esm/utils/userop.d.ts +2 -2
  52. package/esm/utils/userop.js +2 -2
  53. package/esm/utils/userop.js.map +1 -1
  54. package/lib/cli/config/bundler.d.ts +37 -43
  55. package/lib/cli/config/bundler.js +0 -1
  56. package/lib/cli/config/bundler.js.map +1 -1
  57. package/lib/cli/config/options.js +0 -6
  58. package/lib/cli/config/options.js.map +1 -1
  59. package/lib/cli/handler.js +1 -25
  60. package/lib/cli/handler.js.map +1 -1
  61. package/lib/executor/executor.js +2 -15
  62. package/lib/executor/executor.js.map +1 -1
  63. package/lib/index.d.ts +448 -1
  64. package/lib/index.js +64 -1
  65. package/lib/index.js.map +1 -1
  66. package/lib/mempool/mempool.js +7 -5
  67. package/lib/mempool/mempool.js.map +1 -1
  68. package/lib/mempool/reputationManager.js +3 -7
  69. package/lib/mempool/reputationManager.js.map +1 -1
  70. package/lib/rpc/EntryPointSimulationsV07.d.ts +1 -5
  71. package/lib/rpc/EntryPointSimulationsV07.js +2 -3
  72. package/lib/rpc/EntryPointSimulationsV07.js.map +1 -1
  73. package/lib/rpc/gasEstimation.js +3 -7
  74. package/lib/rpc/gasEstimation.js.map +1 -1
  75. package/lib/rpc/rpcHandler.js +7 -18
  76. package/lib/rpc/rpcHandler.js.map +1 -1
  77. package/lib/rpc/server.js +0 -4
  78. package/lib/rpc/server.js.map +1 -1
  79. package/lib/rpc/validation/SafeValidator.d.ts +6 -2
  80. package/lib/rpc/validation/SafeValidator.js +205 -48
  81. package/lib/rpc/validation/SafeValidator.js.map +1 -1
  82. package/lib/rpc/validation/TracerResultParserV07.js +2 -6
  83. package/lib/rpc/validation/TracerResultParserV07.js.map +1 -1
  84. package/lib/rpc/validation/UnsafeValidator.d.ts +1 -2
  85. package/lib/rpc/validation/UnsafeValidator.js +68 -45
  86. package/lib/rpc/validation/UnsafeValidator.js.map +1 -1
  87. package/lib/rpc/validation/tracer.d.ts +1 -1
  88. package/lib/types/contracts/EntryPointSimulations.d.ts +1 -0
  89. package/lib/types/contracts/EntryPointSimulations.js +3 -1942
  90. package/lib/types/contracts/EntryPointSimulations.js.map +1 -1
  91. package/lib/types/contracts/PimlicoEntryPointSimulations.d.ts +1 -1
  92. package/lib/types/contracts/PimlicoEntryPointSimulations.js +2 -2
  93. package/lib/types/contracts/PimlicoEntryPointSimulations.js.map +1 -1
  94. package/lib/types/schemas.d.ts +116 -116
  95. package/lib/types/validation.d.ts +12 -12
  96. package/lib/utils/index.d.ts +1 -0
  97. package/lib/utils/index.js +1 -0
  98. package/lib/utils/index.js.map +1 -1
  99. package/lib/utils/metrics.d.ts +4 -4
  100. package/lib/utils/test.d.ts +1 -1
  101. package/lib/utils/toArgs.d.ts +36 -0
  102. package/lib/utils/toArgs.js +87 -0
  103. package/lib/utils/toArgs.js.map +1 -0
  104. package/lib/utils/userop.d.ts +2 -2
  105. package/lib/utils/userop.js +25 -2
  106. package/lib/utils/userop.js.map +1 -1
  107. package/package.json +3 -2
package/lib/index.d.ts CHANGED
@@ -1,2 +1,449 @@
1
- import "./cli/alto.js";
1
+ export type AltoParameters = {
2
+ /**
3
+ * API version (used for internal Pimlico versioning compatibility).
4
+ */
5
+ apiVersion?: readonly string[] | undefined;
6
+ /**
7
+ * Override the sender native token balance during estimation
8
+ */
9
+ balanceOverride?: boolean | undefined;
10
+ /**
11
+ * Binary path of the `alto` executable.
12
+ */
13
+ binary?: string | undefined;
14
+ /**
15
+ * Address of the `BundleBulker` contract.
16
+ */
17
+ bundleBulkerAddress?: `0x${string}` | undefined;
18
+ /**
19
+ * Set if the bundler bundle user operations automatically or only when calling `debug_bundler_sendBundleNow`.
20
+ * @default "auto"
21
+ */
22
+ bundleMode?: "auto" | "manual" | undefined;
23
+ /**
24
+ * Indicates weather the chain is a OP stack chain, arbitrum chain, or default EVM chain.
25
+ */
26
+ chainType?: "default" | "op-stack" | "arbitrum" | undefined;
27
+ /**
28
+ * Path to JSON config file.
29
+ */
30
+ config?: string | undefined;
31
+ /**
32
+ * Skip user operation validation, use with caution.
33
+ */
34
+ dangerousSkipUserOperationValidation?: boolean | undefined;
35
+ /**
36
+ * Default API version.
37
+ */
38
+ defaultApiVersion?: string | undefined;
39
+ /**
40
+ * Enable debug endpoints.
41
+ * @default false
42
+ */
43
+ enableDebugEndpoints?: boolean | undefined;
44
+ /**
45
+ * Include user ops with the same sender in the single bundle.
46
+ * @default true
47
+ */
48
+ enforceUniqueSendersPerBundle?: boolean | undefined;
49
+ /**
50
+ * EntryPoint contract addresses.
51
+ */
52
+ entrypoints: readonly `0x${string}`[];
53
+ /**
54
+ * Address of the EntryPoint simulations contract.
55
+ */
56
+ entrypointSimulationContract?: `0x${string}` | undefined;
57
+ /**
58
+ * Private keys of the executor accounts.
59
+ */
60
+ executorPrivateKeys?: readonly `0x${string}`[];
61
+ /**
62
+ * Interval to refill the signer balance (seconds).
63
+ * @default 1200
64
+ */
65
+ executorRefillInterval?: number | undefined;
66
+ /**
67
+ * Should the node make expiration checks.
68
+ * @default true
69
+ */
70
+ expirationCheck?: boolean | undefined;
71
+ /**
72
+ * Amount to multiply the gas prices fetched from the node.
73
+ * @default "100"
74
+ */
75
+ gasPriceBump?: string | undefined;
76
+ /**
77
+ * Maximum that the gas prices fetched using pimlico_getUserOperationGasPrice will be accepted for (seconds).
78
+ * @default 10
79
+ */
80
+ gasPriceExpiry?: number | undefined;
81
+ /**
82
+ * The minimum percentage of incoming user operation gas prices compared to the gas price used by the bundler to submit bundles.
83
+ * @default 101
84
+ */
85
+ gasPriceFloorPercent?: number | undefined;
86
+ /**
87
+ * Amount to multiply the gas prices fetched using `pimlico_getUserOperationGasPrice`.
88
+ * @default "105,110,115"
89
+ */
90
+ gasPriceMultipliers?: readonly string[] | undefined;
91
+ /**
92
+ * Use a fixed value for gas limits during bundle transaction gas limit estimations
93
+ */
94
+ fixedGasLimitForEstimation?: string | undefined;
95
+ /**
96
+ * Flush stuck transactions with old nonces during bundler startup.
97
+ */
98
+ flushStuckTransactionsDuringStartup?: boolean | undefined;
99
+ /**
100
+ * Log in JSON format.
101
+ */
102
+ json?: boolean | undefined;
103
+ /**
104
+ * Send legacy transactions instead of an EIP-1559 transactions.
105
+ * @default false
106
+ */
107
+ legacyTransactions?: boolean | undefined;
108
+ /**
109
+ * Calculate the bundle transaction gas limits locally instead of using the RPC gas limit estimation.
110
+ */
111
+ localGasLimitCalculation?: boolean | undefined;
112
+ /**
113
+ * Default log level.
114
+ */
115
+ logLevel?: "trace" | "debug" | "info" | "warn" | "error" | "fatal" | undefined;
116
+ /**
117
+ * Max block range for `eth_getLogs` calls.
118
+ */
119
+ maxBlockRange?: number | undefined;
120
+ /**
121
+ * Maximum number of operations allowed in the mempool before a bundle is submitted.
122
+ * @default 10
123
+ */
124
+ maxBundleSize?: number | undefined;
125
+ /**
126
+ * Maximum time to wait for a bundle to be submitted (ms).
127
+ * @default 1000
128
+ */
129
+ maxBundleWait?: number | undefined;
130
+ /**
131
+ * Maximum amount of gas per bundle.
132
+ * @default "5000000"
133
+ */
134
+ maxGasPerBundle?: string | undefined;
135
+ /**
136
+ * Maximum number of executor accounts to use from the list of executor private keys.
137
+ */
138
+ maxExecutors?: number | undefined;
139
+ /**
140
+ * Maximum amount of parallel user ops to keep in the meempool (same sender, different nonce keys).
141
+ * @default 10
142
+ */
143
+ mempoolMaxParallelOps?: number | undefined;
144
+ /**
145
+ * Maximum amount of sequential user ops to keep in the mempool (same sender and nonce key, different nonce values).
146
+ * @default 0
147
+ */
148
+ mempoolMaxQueuedOps?: number | undefined;
149
+ /**
150
+ * Minimum stake required for a relay (in 10e18).
151
+ * @default 1
152
+ */
153
+ minEntityStake?: number | undefined;
154
+ /**
155
+ * Minimum unstake delay (seconds).
156
+ * @default 1
157
+ */
158
+ minEntityUnstakeDelay?: number | undefined;
159
+ /**
160
+ * Minimum balance required for each executor account (below which the utility account will refill).
161
+ */
162
+ minExecutorBalance?: string | undefined;
163
+ /**
164
+ * Name of the network (used for metrics).
165
+ * @default "localhost"
166
+ */
167
+ networkName?: string | undefined;
168
+ /**
169
+ * Amount to multiply the paymaster gas limits fetched from simulations.
170
+ */
171
+ paymasterGasLimitMultiplier?: string | undefined;
172
+ /**
173
+ * Address of the `PerOpInflator` contract.
174
+ */
175
+ perOpInflatorAddress?: `0x${string}` | undefined;
176
+ /**
177
+ * Polling interval for querying for new blocks (ms).
178
+ * @default 1000
179
+ */
180
+ pollingInterval?: number | undefined;
181
+ /**
182
+ * Port to listen on.
183
+ * @default 3000
184
+ */
185
+ port?: number | undefined;
186
+ /**
187
+ * RPC url to connect to.
188
+ */
189
+ rpcUrl: string;
190
+ /**
191
+ * Enable safe mode (enforcing all ERC-4337 rules).
192
+ * @default true
193
+ */
194
+ safeMode?: boolean | undefined;
195
+ /**
196
+ * RPC url to send transactions to (e.g. flashbots relay).
197
+ */
198
+ sendTransactionRpcUrl?: string | undefined;
199
+ /**
200
+ * Timeout for incoming requests (in ms).
201
+ */
202
+ timeout?: number | undefined;
203
+ /**
204
+ * Private key of the utility account.
205
+ */
206
+ utilityPrivateKey?: string | undefined;
207
+ /**
208
+ * Maximum payload size for websocket messages in bytes (default to 1MB).
209
+ */
210
+ websocketMaxPayloadSize?: number | undefined;
211
+ /**
212
+ * Enable websocket server.
213
+ */
214
+ websocket?: boolean | undefined;
215
+ };
216
+ /**
217
+ * Defines an Alto instance.
218
+ *
219
+ * @example
220
+ * ```ts
221
+ * const instance = alto({
222
+ * entrypoints: ['0x0000000071727De22E5E9d8BAf0edAc6f37da032'],
223
+ * rpcUrl: `http://localhost:8545`,
224
+ * executorPrivateKeys: ['0x...'],
225
+ * })
226
+ * await instance.start()
227
+ * // ...
228
+ * await instance.stop()
229
+ * ```
230
+ */
231
+ export declare const alto: import("prool").DefineInstanceReturnType<{
232
+ args: {
233
+ /**
234
+ * API version (used for internal Pimlico versioning compatibility).
235
+ */
236
+ apiVersion?: readonly string[] | undefined;
237
+ /**
238
+ * Override the sender native token balance during estimation
239
+ */
240
+ balanceOverride?: boolean | undefined;
241
+ /**
242
+ * Binary path of the `alto` executable.
243
+ */
244
+ binary?: string | undefined;
245
+ /**
246
+ * Address of the `BundleBulker` contract.
247
+ */
248
+ bundleBulkerAddress?: `0x${string}` | undefined;
249
+ /**
250
+ * Set if the bundler bundle user operations automatically or only when calling `debug_bundler_sendBundleNow`.
251
+ * @default "auto"
252
+ */
253
+ bundleMode?: "auto" | "manual" | undefined;
254
+ /**
255
+ * Indicates weather the chain is a OP stack chain, arbitrum chain, or default EVM chain.
256
+ */
257
+ chainType?: "default" | "op-stack" | "arbitrum" | undefined;
258
+ /**
259
+ * Path to JSON config file.
260
+ */
261
+ config?: string | undefined;
262
+ /**
263
+ * Skip user operation validation, use with caution.
264
+ */
265
+ dangerousSkipUserOperationValidation?: boolean | undefined;
266
+ /**
267
+ * Default API version.
268
+ */
269
+ defaultApiVersion?: string | undefined;
270
+ /**
271
+ * Enable debug endpoints.
272
+ * @default false
273
+ */
274
+ enableDebugEndpoints?: boolean | undefined;
275
+ /**
276
+ * Include user ops with the same sender in the single bundle.
277
+ * @default true
278
+ */
279
+ enforceUniqueSendersPerBundle?: boolean | undefined;
280
+ /**
281
+ * EntryPoint contract addresses.
282
+ */
283
+ entrypoints: readonly `0x${string}`[];
284
+ /**
285
+ * Address of the EntryPoint simulations contract.
286
+ */
287
+ entrypointSimulationContract?: `0x${string}` | undefined;
288
+ /**
289
+ * Private keys of the executor accounts.
290
+ */
291
+ executorPrivateKeys?: readonly `0x${string}`[] | undefined;
292
+ /**
293
+ * Interval to refill the signer balance (seconds).
294
+ * @default 1200
295
+ */
296
+ executorRefillInterval?: number | undefined;
297
+ /**
298
+ * Should the node make expiration checks.
299
+ * @default true
300
+ */
301
+ expirationCheck?: boolean | undefined;
302
+ /**
303
+ * Amount to multiply the gas prices fetched from the node.
304
+ * @default "100"
305
+ */
306
+ gasPriceBump?: string | undefined;
307
+ /**
308
+ * Maximum that the gas prices fetched using pimlico_getUserOperationGasPrice will be accepted for (seconds).
309
+ * @default 10
310
+ */
311
+ gasPriceExpiry?: number | undefined;
312
+ /**
313
+ * The minimum percentage of incoming user operation gas prices compared to the gas price used by the bundler to submit bundles.
314
+ * @default 101
315
+ */
316
+ gasPriceFloorPercent?: number | undefined;
317
+ /**
318
+ * Amount to multiply the gas prices fetched using `pimlico_getUserOperationGasPrice`.
319
+ * @default "105,110,115"
320
+ */
321
+ gasPriceMultipliers?: readonly string[] | undefined;
322
+ /**
323
+ * Use a fixed value for gas limits during bundle transaction gas limit estimations
324
+ */
325
+ fixedGasLimitForEstimation?: string | undefined;
326
+ /**
327
+ * Flush stuck transactions with old nonces during bundler startup.
328
+ */
329
+ flushStuckTransactionsDuringStartup?: boolean | undefined;
330
+ /**
331
+ * Log in JSON format.
332
+ */
333
+ json?: boolean | undefined;
334
+ /**
335
+ * Send legacy transactions instead of an EIP-1559 transactions.
336
+ * @default false
337
+ */
338
+ legacyTransactions?: boolean | undefined;
339
+ /**
340
+ * Calculate the bundle transaction gas limits locally instead of using the RPC gas limit estimation.
341
+ */
342
+ localGasLimitCalculation?: boolean | undefined;
343
+ /**
344
+ * Default log level.
345
+ */
346
+ logLevel?: "trace" | "debug" | "info" | "warn" | "error" | "fatal" | undefined;
347
+ /**
348
+ * Max block range for `eth_getLogs` calls.
349
+ */
350
+ maxBlockRange?: number | undefined;
351
+ /**
352
+ * Maximum number of operations allowed in the mempool before a bundle is submitted.
353
+ * @default 10
354
+ */
355
+ maxBundleSize?: number | undefined;
356
+ /**
357
+ * Maximum time to wait for a bundle to be submitted (ms).
358
+ * @default 1000
359
+ */
360
+ maxBundleWait?: number | undefined;
361
+ /**
362
+ * Maximum amount of gas per bundle.
363
+ * @default "5000000"
364
+ */
365
+ maxGasPerBundle?: string | undefined;
366
+ /**
367
+ * Maximum number of executor accounts to use from the list of executor private keys.
368
+ */
369
+ maxExecutors?: number | undefined;
370
+ /**
371
+ * Maximum amount of parallel user ops to keep in the meempool (same sender, different nonce keys).
372
+ * @default 10
373
+ */
374
+ mempoolMaxParallelOps?: number | undefined;
375
+ /**
376
+ * Maximum amount of sequential user ops to keep in the mempool (same sender and nonce key, different nonce values).
377
+ * @default 0
378
+ */
379
+ mempoolMaxQueuedOps?: number | undefined;
380
+ /**
381
+ * Minimum stake required for a relay (in 10e18).
382
+ * @default 1
383
+ */
384
+ minEntityStake?: number | undefined;
385
+ /**
386
+ * Minimum unstake delay (seconds).
387
+ * @default 1
388
+ */
389
+ minEntityUnstakeDelay?: number | undefined;
390
+ /**
391
+ * Minimum balance required for each executor account (below which the utility account will refill).
392
+ */
393
+ minExecutorBalance?: string | undefined;
394
+ /**
395
+ * Name of the network (used for metrics).
396
+ * @default "localhost"
397
+ */
398
+ networkName?: string | undefined;
399
+ /**
400
+ * Amount to multiply the paymaster gas limits fetched from simulations.
401
+ */
402
+ paymasterGasLimitMultiplier?: string | undefined;
403
+ /**
404
+ * Address of the `PerOpInflator` contract.
405
+ */
406
+ perOpInflatorAddress?: `0x${string}` | undefined;
407
+ /**
408
+ * Polling interval for querying for new blocks (ms).
409
+ * @default 1000
410
+ */
411
+ pollingInterval?: number | undefined;
412
+ /**
413
+ * Port to listen on.
414
+ * @default 3000
415
+ */
416
+ port?: number | undefined;
417
+ /**
418
+ * RPC url to connect to.
419
+ */
420
+ rpcUrl: string;
421
+ /**
422
+ * Enable safe mode (enforcing all ERC-4337 rules).
423
+ * @default true
424
+ */
425
+ safeMode?: boolean | undefined;
426
+ /**
427
+ * RPC url to send transactions to (e.g. flashbots relay).
428
+ */
429
+ sendTransactionRpcUrl?: string | undefined;
430
+ /**
431
+ * Timeout for incoming requests (in ms).
432
+ */
433
+ timeout?: number | undefined;
434
+ /**
435
+ * Private key of the utility account.
436
+ */
437
+ utilityPrivateKey?: string | undefined;
438
+ /**
439
+ * Maximum payload size for websocket messages in bytes (default to 1MB).
440
+ */
441
+ websocketMaxPayloadSize?: number | undefined;
442
+ /**
443
+ * Enable websocket server.
444
+ */
445
+ websocket?: boolean | undefined;
446
+ };
447
+ readonly process: import("prool/processes/execa").Process_internal;
448
+ }, AltoParameters | undefined>;
2
449
  //# sourceMappingURL=index.d.ts.map
package/lib/index.js CHANGED
@@ -1,4 +1,67 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- require("./cli/alto.js");
3
+ exports.alto = void 0;
4
+ const node_path_1 = require("node:path");
5
+ const prool_1 = require("prool");
6
+ const processes_1 = require("prool/exports/processes");
7
+ const utils_1 = require("./utils/index.js");
8
+ /**
9
+ * Defines an Alto instance.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const instance = alto({
14
+ * entrypoints: ['0x0000000071727De22E5E9d8BAf0edAc6f37da032'],
15
+ * rpcUrl: `http://localhost:8545`,
16
+ * executorPrivateKeys: ['0x...'],
17
+ * })
18
+ * await instance.start()
19
+ * // ...
20
+ * await instance.stop()
21
+ * ```
22
+ */
23
+ exports.alto = (0, prool_1.defineInstance)((parameters) => {
24
+ const { ...args } = (parameters || {});
25
+ const name = "alto";
26
+ const process = (0, processes_1.execa)({ name });
27
+ return {
28
+ _internal: {
29
+ args,
30
+ get process() {
31
+ return process._internal.process;
32
+ }
33
+ },
34
+ host: "localhost",
35
+ name,
36
+ port: args.port ?? 3000,
37
+ async start({ port = args.port ?? 3000 }, options) {
38
+ const binary = (() => {
39
+ if (args.binary) {
40
+ return [args.binary];
41
+ }
42
+ return ["node", (0, node_path_1.resolve)(__dirname, "./cli/alto.js")];
43
+ })();
44
+ await process.start(($) => $ `${binary} ${(0, utils_1.toArgs)({
45
+ port,
46
+ ...args,
47
+ safeMode: args.safeMode ?? false
48
+ })}`, {
49
+ ...options,
50
+ // Resolve when the process is listening via a "Server listening at" message.
51
+ resolver({ process, reject, resolve }) {
52
+ process.stdout.on("data", (data) => {
53
+ const message = data.toString();
54
+ if (message.includes("Server listening at")) {
55
+ resolve();
56
+ }
57
+ });
58
+ process.stderr.on("data", reject);
59
+ }
60
+ });
61
+ },
62
+ async stop() {
63
+ await process.stop();
64
+ }
65
+ };
66
+ });
4
67
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;AAAA,sBAAmB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,yCAAmC;AACnC,iCAAsC;AACtC,uDAA+C;AAC/C,mCAAgC;AAiOhC;;;;;;;;;;;;;;GAcG;AACU,QAAA,IAAI,GAAG,IAAA,sBAAc,EAAC,CAAC,UAA2B,EAAE,EAAE;IAC/D,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE,CAAmB,CAAA;IAExD,MAAM,IAAI,GAAG,MAAM,CAAA;IACnB,MAAM,OAAO,GAAG,IAAA,iBAAK,EAAC,EAAE,IAAI,EAAE,CAAC,CAAA;IAE/B,OAAO;QACH,SAAS,EAAE;YACP,IAAI;YACJ,IAAI,OAAO;gBACP,OAAO,OAAO,CAAC,SAAS,CAAC,OAAO,CAAA;YACpC,CAAC;SACJ;QACD,IAAI,EAAE,WAAW;QACjB,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;QACvB,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,EAAE,OAAO;YAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;gBACjB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACxB,CAAC;gBACD,OAAO,CAAC,MAAM,EAAE,IAAA,mBAAO,EAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAA;YACxD,CAAC,CAAC,EAAE,CAAA;YAEJ,MAAM,OAAO,CAAC,KAAK,CACf,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,CAAA,GAAG,MAAM,IAAI,IAAA,cAAM,EAAC;gBACjB,IAAI;gBACJ,GAAG,IAAI;gBACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK;aACnC,CAAC,EAAE,EACR;gBACI,GAAG,OAAO;gBACV,6EAA6E;gBAC7E,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE;oBACjC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;wBAC/B,IAAI,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;4BAC1C,OAAO,EAAE,CAAA;wBACb,CAAC;oBACL,CAAC,CAAC,CAAA;oBACF,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;gBACrC,CAAC;aACJ,CACJ,CAAA;QACL,CAAC;QACD,KAAK,CAAC,IAAI;YACN,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;QACxB,CAAC;KACJ,CAAA;AACL,CAAC,CAAC,CAAA"}
@@ -178,19 +178,21 @@ class MemoryMempool {
178
178
  .filter((userOpInfo) => {
179
179
  const userOp = (0, types_1.deriveUserOperation)(userOpInfo.mempoolUserOperation);
180
180
  return userOp.sender === op.sender;
181
- }).length;
181
+ })
182
+ .length;
182
183
  if (parallellUserOperationsCount > this.parallelUserOpsMaxSize) {
183
184
  return false;
184
185
  }
185
186
  // Check if mempool already includes max amount of queued user operations
186
- const [nonceKey] = (0, utils_1.getNonceKeyAndValue)(op.nonce);
187
+ const [nonceKey,] = (0, utils_1.getNonceKeyAndValue)(op.nonce);
187
188
  const queuedUserOperationsCount = this.store
188
189
  .dumpOutstanding()
189
190
  .filter((userOpInfo) => {
190
191
  const userOp = (0, types_1.deriveUserOperation)(userOpInfo.mempoolUserOperation);
191
- const [opNonceKey] = (0, utils_1.getNonceKeyAndValue)(userOp.nonce);
192
- return userOp.sender === op.sender && opNonceKey === nonceKey;
193
- }).length;
192
+ const [opNonceKey,] = (0, utils_1.getNonceKeyAndValue)(userOp.nonce);
193
+ return (userOp.sender === op.sender && opNonceKey === nonceKey);
194
+ })
195
+ .length;
194
196
  if (queuedUserOperationsCount > this.queuedUserOpsMaxSize) {
195
197
  return false;
196
198
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mempool.js","sourceRoot":"","sources":["../../mempool/mempool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mempool.js","sourceRoot":"","sources":["../../mempool/mempool.ts"],"names":[],"mappings":"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"}
@@ -118,9 +118,7 @@ class ReputationManager {
118
118
  }));
119
119
  }
120
120
  clear() {
121
- for (const entryPoint of Object.keys(this.entries)) {
122
- this.entries[entryPoint] = {};
123
- }
121
+ this.entries = {};
124
122
  this.entityCount = {};
125
123
  }
126
124
  clearEntityCount() {
@@ -168,14 +166,13 @@ class ReputationManager {
168
166
  return this.entityCount[address] ?? 0;
169
167
  }
170
168
  increaseSeen(entryPoint, address) {
171
- let entry = this.entries[entryPoint][address];
169
+ const entry = this.entries[entryPoint][address];
172
170
  if (!entry) {
173
171
  this.entries[entryPoint][address] = {
174
172
  address,
175
173
  opsSeen: 0n,
176
174
  opsIncluded: 0n
177
175
  };
178
- entry = this.entries[entryPoint][address];
179
176
  }
180
177
  entry.opsSeen++;
181
178
  }
@@ -219,14 +216,13 @@ class ReputationManager {
219
216
  }
220
217
  }
221
218
  updateIncludedStatus(entryPoint, address) {
222
- let entry = this.entries[entryPoint][address];
219
+ const entry = this.entries[entryPoint][address];
223
220
  if (!entry) {
224
221
  this.entries[entryPoint][address] = {
225
222
  address,
226
223
  opsSeen: 0n,
227
224
  opsIncluded: 0n
228
225
  };
229
- entry = this.entries[entryPoint][address];
230
226
  }
231
227
  entry.opsIncluded++;
232
228
  }