@pimlico/alto 0.0.0-main.20250303T125310 → 0.0.0-main.20250324T173034
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.
- package/esm/cli/alto.js +5 -3
- package/esm/cli/alto.js.map +1 -1
- package/esm/cli/config/bundler.d.ts +93 -36
- package/esm/cli/config/bundler.js +18 -3
- package/esm/cli/config/bundler.js.map +1 -1
- package/esm/cli/config/options.d.ts +2 -1
- package/esm/cli/config/options.js +65 -5
- package/esm/cli/config/options.js.map +1 -1
- package/esm/cli/handler.js +3 -4
- package/esm/cli/handler.js.map +1 -1
- package/esm/cli/setupServer.d.ts +1 -1
- package/esm/cli/setupServer.js +109 -49
- package/esm/cli/setupServer.js.map +1 -1
- package/esm/createConfig.d.ts +1 -0
- package/esm/createConfig.js +1 -0
- package/esm/createConfig.js.map +1 -1
- package/esm/executor/executor.d.ts +3 -3
- package/esm/executor/executor.js +1 -3
- package/esm/executor/executor.js.map +1 -1
- package/esm/executor/executorManager.d.ts +14 -12
- package/esm/executor/executorManager.js +131 -97
- package/esm/executor/executorManager.js.map +1 -1
- package/esm/executor/index.d.ts +1 -1
- package/esm/executor/index.js +1 -1
- package/esm/executor/senderManager/createMemorySenderManager.d.ts +8 -0
- package/esm/executor/senderManager/createMemorySenderManager.js +41 -0
- package/esm/executor/senderManager/createMemorySenderManager.js.map +1 -0
- package/esm/executor/senderManager/createRedisSenderManager.d.ts +8 -0
- package/esm/executor/senderManager/createRedisSenderManager.js +78 -0
- package/esm/executor/senderManager/createRedisSenderManager.js.map +1 -0
- package/esm/executor/senderManager/flushOnStartUp.d.ts +9 -0
- package/esm/executor/senderManager/flushOnStartUp.js +33 -0
- package/esm/executor/senderManager/flushOnStartUp.js.map +1 -0
- package/esm/executor/senderManager/index.d.ts +15 -0
- package/esm/executor/senderManager/index.js +20 -0
- package/esm/executor/senderManager/index.js.map +1 -0
- package/esm/executor/senderManager/validateAndRefill.d.ts +11 -0
- package/esm/executor/senderManager/validateAndRefill.js +111 -0
- package/esm/executor/senderManager/validateAndRefill.js.map +1 -0
- package/esm/executor/utils.d.ts +8 -2
- package/esm/executor/utils.js +9 -1
- package/esm/executor/utils.js.map +1 -1
- package/esm/handlers/arbitrumGasPriceManager.d.ts +7 -4
- package/esm/handlers/arbitrumGasPriceManager.js +19 -13
- package/esm/handlers/arbitrumGasPriceManager.js.map +1 -1
- package/esm/handlers/eventManager.js +5 -4
- package/esm/handlers/eventManager.js.map +1 -1
- package/esm/handlers/gasPriceManager.d.ts +1 -4
- package/esm/handlers/gasPriceManager.js +81 -48
- package/esm/handlers/gasPriceManager.js.map +1 -1
- package/esm/handlers/mantleGasPriceManager.d.ts +6 -3
- package/esm/handlers/mantleGasPriceManager.js +23 -11
- package/esm/handlers/mantleGasPriceManager.js.map +1 -1
- package/esm/handlers/optimismManager.d.ts +5 -2
- package/esm/handlers/optimismManager.js +8 -5
- package/esm/handlers/optimismManager.js.map +1 -1
- package/esm/mempool/index.d.ts +0 -1
- package/esm/mempool/index.js +0 -1
- package/esm/mempool/index.js.map +1 -1
- package/esm/mempool/mempool.d.ts +95 -27
- package/esm/mempool/mempool.js +132 -252
- package/esm/mempool/mempool.js.map +1 -1
- package/esm/mempool/monitoring.d.ts +8 -4
- package/esm/mempool/monitoring.js +72 -9
- package/esm/mempool/monitoring.js.map +1 -1
- package/esm/rpc/estimation/gasEstimationHandler.d.ts +10 -4
- package/esm/rpc/estimation/gasEstimationHandler.js +16 -19
- package/esm/rpc/estimation/gasEstimationHandler.js.map +1 -1
- package/esm/rpc/estimation/gasEstimationsV07.d.ts +7 -0
- package/esm/rpc/estimation/gasEstimationsV07.js +69 -4
- package/esm/rpc/estimation/gasEstimationsV07.js.map +1 -1
- package/esm/rpc/methods/debug_bundler_clearReputation.js.map +1 -1
- package/esm/rpc/methods/debug_bundler_dumpMempool.js +2 -2
- package/esm/rpc/methods/debug_bundler_dumpMempool.js.map +1 -1
- package/esm/rpc/methods/debug_bundler_setBundlingMode.js.map +1 -1
- package/esm/rpc/methods/eth_chainId.js +1 -1
- package/esm/rpc/methods/eth_chainId.js.map +1 -1
- package/esm/rpc/methods/eth_sendUserOperation.js +2 -2
- package/esm/rpc/methods/eth_sendUserOperation.js.map +1 -1
- package/esm/rpc/methods/index.js +0 -5
- package/esm/rpc/methods/index.js.map +1 -1
- package/esm/rpc/methods/pimlico_sendUserOperationNow.js +2 -3
- package/esm/rpc/methods/pimlico_sendUserOperationNow.js.map +1 -1
- package/esm/rpc/rpcHandler.d.ts +4 -7
- package/esm/rpc/rpcHandler.js +38 -37
- package/esm/rpc/rpcHandler.js.map +1 -1
- package/esm/rpc/validation/SafeValidator.js +2 -2
- package/esm/rpc/validation/SafeValidator.js.map +1 -1
- package/esm/rpc/validation/UnsafeValidator.d.ts +7 -2
- package/esm/rpc/validation/UnsafeValidator.js +20 -4
- package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
- package/esm/store/createMemoryOutstandingStore.d.ts +28 -0
- package/esm/store/createMemoryOutstandingStore.js +221 -0
- package/esm/store/createMemoryOutstandingStore.js.map +1 -0
- package/esm/store/createMempoolStore.d.ts +8 -0
- package/esm/store/createMempoolStore.js +193 -0
- package/esm/store/createMempoolStore.js.map +1 -0
- package/esm/store/createRedisOutstandingStore.d.ts +27 -0
- package/esm/store/createRedisOutstandingStore.js +344 -0
- package/esm/store/createRedisOutstandingStore.js.map +1 -0
- package/esm/store/createRedisStore.d.ts +9 -0
- package/esm/store/createRedisStore.js +131 -0
- package/esm/store/createRedisStore.js.map +1 -0
- package/esm/store/createStore.d.ts +6 -0
- package/esm/store/createStore.js +66 -0
- package/esm/store/createStore.js.map +1 -0
- package/esm/store/index.d.ts +81 -0
- package/esm/store/index.js +2 -0
- package/esm/store/index.js.map +1 -0
- package/esm/types/interfaces.d.ts +7 -3
- package/esm/types/mempool.d.ts +2 -15
- package/esm/types/mempool.js.map +1 -1
- package/esm/types/schemas.d.ts +4617 -7632
- package/esm/types/schemas.js +19 -42
- package/esm/types/schemas.js.map +1 -1
- package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.d.ts +6 -0
- package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.js +53 -0
- package/esm/utils/minMaxQueue/createMemoryMinMaxQueue.js.map +1 -0
- package/esm/utils/minMaxQueue/createRedisMinMaxQueue.d.ts +7 -0
- package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js +98 -0
- package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js.map +1 -0
- package/esm/utils/minMaxQueue/index.d.ts +12 -0
- package/esm/utils/minMaxQueue/index.js +12 -0
- package/esm/utils/minMaxQueue/index.js.map +1 -0
- package/esm/utils/validation.js +8 -10
- package/esm/utils/validation.js.map +1 -1
- package/lib/cli/alto.js +3 -1
- package/lib/cli/alto.js.map +1 -1
- package/lib/cli/config/bundler.d.ts +93 -36
- package/lib/cli/config/bundler.js +19 -4
- package/lib/cli/config/bundler.js.map +1 -1
- package/lib/cli/config/options.d.ts +2 -1
- package/lib/cli/config/options.js +66 -6
- package/lib/cli/config/options.js.map +1 -1
- package/lib/cli/handler.js +3 -4
- package/lib/cli/handler.js.map +1 -1
- package/lib/cli/setupServer.d.ts +1 -1
- package/lib/cli/setupServer.js +108 -48
- package/lib/cli/setupServer.js.map +1 -1
- package/lib/createConfig.d.ts +1 -0
- package/lib/createConfig.js +1 -0
- package/lib/createConfig.js.map +1 -1
- package/lib/executor/executor.d.ts +3 -3
- package/lib/executor/executor.js +1 -3
- package/lib/executor/executor.js.map +1 -1
- package/lib/executor/executorManager.d.ts +14 -12
- package/lib/executor/executorManager.js +131 -97
- package/lib/executor/executorManager.js.map +1 -1
- package/lib/executor/index.d.ts +1 -1
- package/lib/executor/index.js +1 -1
- package/lib/executor/senderManager/createMemorySenderManager.d.ts +8 -0
- package/lib/executor/senderManager/createMemorySenderManager.js +45 -0
- package/lib/executor/senderManager/createMemorySenderManager.js.map +1 -0
- package/lib/executor/senderManager/createRedisSenderManager.d.ts +8 -0
- package/lib/executor/senderManager/createRedisSenderManager.js +85 -0
- package/lib/executor/senderManager/createRedisSenderManager.js.map +1 -0
- package/lib/executor/senderManager/flushOnStartUp.d.ts +9 -0
- package/lib/executor/senderManager/flushOnStartUp.js +37 -0
- package/lib/executor/senderManager/flushOnStartUp.js.map +1 -0
- package/lib/executor/senderManager/index.d.ts +15 -0
- package/lib/executor/senderManager/index.js +25 -0
- package/lib/executor/senderManager/index.js.map +1 -0
- package/lib/executor/senderManager/validateAndRefill.d.ts +11 -0
- package/lib/executor/senderManager/validateAndRefill.js +115 -0
- package/lib/executor/senderManager/validateAndRefill.js.map +1 -0
- package/lib/executor/utils.d.ts +8 -2
- package/lib/executor/utils.js +9 -1
- package/lib/executor/utils.js.map +1 -1
- package/lib/handlers/arbitrumGasPriceManager.d.ts +7 -4
- package/lib/handlers/arbitrumGasPriceManager.js +19 -13
- package/lib/handlers/arbitrumGasPriceManager.js.map +1 -1
- package/lib/handlers/eventManager.js +5 -4
- package/lib/handlers/eventManager.js.map +1 -1
- package/lib/handlers/gasPriceManager.d.ts +1 -4
- package/lib/handlers/gasPriceManager.js +81 -48
- package/lib/handlers/gasPriceManager.js.map +1 -1
- package/lib/handlers/mantleGasPriceManager.d.ts +6 -3
- package/lib/handlers/mantleGasPriceManager.js +23 -11
- package/lib/handlers/mantleGasPriceManager.js.map +1 -1
- package/lib/handlers/optimismManager.d.ts +5 -2
- package/lib/handlers/optimismManager.js +8 -5
- package/lib/handlers/optimismManager.js.map +1 -1
- package/lib/mempool/index.d.ts +0 -1
- package/lib/mempool/index.js +0 -1
- package/lib/mempool/index.js.map +1 -1
- package/lib/mempool/mempool.d.ts +95 -27
- package/lib/mempool/mempool.js +133 -253
- package/lib/mempool/mempool.js.map +1 -1
- package/lib/mempool/monitoring.d.ts +8 -4
- package/lib/mempool/monitoring.js +72 -9
- package/lib/mempool/monitoring.js.map +1 -1
- package/lib/rpc/estimation/gasEstimationHandler.d.ts +10 -4
- package/lib/rpc/estimation/gasEstimationHandler.js +15 -18
- package/lib/rpc/estimation/gasEstimationHandler.js.map +1 -1
- package/lib/rpc/estimation/gasEstimationsV07.d.ts +7 -0
- package/lib/rpc/estimation/gasEstimationsV07.js +69 -4
- package/lib/rpc/estimation/gasEstimationsV07.js.map +1 -1
- package/lib/rpc/methods/debug_bundler_clearReputation.js.map +1 -1
- package/lib/rpc/methods/debug_bundler_dumpMempool.js +2 -2
- package/lib/rpc/methods/debug_bundler_dumpMempool.js.map +1 -1
- package/lib/rpc/methods/debug_bundler_setBundlingMode.js.map +1 -1
- package/lib/rpc/methods/eth_chainId.js +1 -1
- package/lib/rpc/methods/eth_chainId.js.map +1 -1
- package/lib/rpc/methods/eth_sendUserOperation.js +2 -2
- package/lib/rpc/methods/eth_sendUserOperation.js.map +1 -1
- package/lib/rpc/methods/index.js +0 -5
- package/lib/rpc/methods/index.js.map +1 -1
- package/lib/rpc/methods/pimlico_sendUserOperationNow.js +2 -3
- package/lib/rpc/methods/pimlico_sendUserOperationNow.js.map +1 -1
- package/lib/rpc/rpcHandler.d.ts +4 -7
- package/lib/rpc/rpcHandler.js +38 -37
- package/lib/rpc/rpcHandler.js.map +1 -1
- package/lib/rpc/validation/SafeValidator.js +2 -2
- package/lib/rpc/validation/SafeValidator.js.map +1 -1
- package/lib/rpc/validation/UnsafeValidator.d.ts +7 -2
- package/lib/rpc/validation/UnsafeValidator.js +20 -4
- package/lib/rpc/validation/UnsafeValidator.js.map +1 -1
- package/lib/store/createMemoryOutstandingStore.d.ts +28 -0
- package/lib/store/createMemoryOutstandingStore.js +226 -0
- package/lib/store/createMemoryOutstandingStore.js.map +1 -0
- package/lib/store/createMempoolStore.d.ts +8 -0
- package/lib/store/createMempoolStore.js +197 -0
- package/lib/store/createMempoolStore.js.map +1 -0
- package/lib/store/createRedisOutstandingStore.d.ts +27 -0
- package/lib/store/createRedisOutstandingStore.js +349 -0
- package/lib/store/createRedisOutstandingStore.js.map +1 -0
- package/lib/store/createRedisStore.d.ts +9 -0
- package/lib/store/createRedisStore.js +138 -0
- package/lib/store/createRedisStore.js.map +1 -0
- package/lib/store/createStore.d.ts +6 -0
- package/lib/store/createStore.js +70 -0
- package/lib/store/createStore.js.map +1 -0
- package/lib/store/index.d.ts +81 -0
- package/lib/store/index.js +6 -0
- package/lib/store/index.js.map +1 -0
- package/lib/types/interfaces.d.ts +7 -3
- package/lib/types/mempool.d.ts +2 -15
- package/lib/types/mempool.js.map +1 -1
- package/lib/types/schemas.d.ts +4617 -7632
- package/lib/types/schemas.js +24 -47
- package/lib/types/schemas.js.map +1 -1
- package/lib/utils/minMaxQueue/createMemoryMinMaxQueue.d.ts +6 -0
- package/lib/utils/minMaxQueue/createMemoryMinMaxQueue.js +57 -0
- package/lib/utils/minMaxQueue/createMemoryMinMaxQueue.js.map +1 -0
- package/lib/utils/minMaxQueue/createRedisMinMaxQueue.d.ts +7 -0
- package/lib/utils/minMaxQueue/createRedisMinMaxQueue.js +105 -0
- package/lib/utils/minMaxQueue/createRedisMinMaxQueue.js.map +1 -0
- package/lib/utils/minMaxQueue/index.d.ts +12 -0
- package/lib/utils/minMaxQueue/index.js +16 -0
- package/lib/utils/minMaxQueue/index.js.map +1 -0
- package/lib/utils/validation.js +8 -10
- package/lib/utils/validation.js.map +1 -1
- package/package.json +2 -2
- package/esm/executor/senderManager.d.ts +0 -26
- package/esm/executor/senderManager.js +0 -216
- package/esm/executor/senderManager.js.map +0 -1
- package/esm/mempool/nonceQueuer.d.ts +0 -32
- package/esm/mempool/nonceQueuer.js +0 -143
- package/esm/mempool/nonceQueuer.js.map +0 -1
- package/esm/mempool/store.d.ts +0 -22
- package/esm/mempool/store.js +0 -124
- package/esm/mempool/store.js.map +0 -1
- package/esm/rpc/methods/pimlico_experimental_estimateUserOperationGas7702.d.ts +0 -979
- package/esm/rpc/methods/pimlico_experimental_estimateUserOperationGas7702.js +0 -22
- package/esm/rpc/methods/pimlico_experimental_estimateUserOperationGas7702.js.map +0 -1
- package/esm/rpc/methods/pimlico_experimental_sendUserOperation7702.d.ts +0 -422
- package/esm/rpc/methods/pimlico_experimental_sendUserOperation7702.js +0 -19
- package/esm/rpc/methods/pimlico_experimental_sendUserOperation7702.js.map +0 -1
- package/esm/utils/slidingWindowTimedQueue.d.ts +0 -12
- package/esm/utils/slidingWindowTimedQueue.js +0 -48
- package/esm/utils/slidingWindowTimedQueue.js.map +0 -1
- package/lib/executor/senderManager.d.ts +0 -26
- package/lib/executor/senderManager.js +0 -220
- package/lib/executor/senderManager.js.map +0 -1
- package/lib/mempool/nonceQueuer.d.ts +0 -32
- package/lib/mempool/nonceQueuer.js +0 -147
- package/lib/mempool/nonceQueuer.js.map +0 -1
- package/lib/mempool/store.d.ts +0 -22
- package/lib/mempool/store.js +0 -128
- package/lib/mempool/store.js.map +0 -1
- package/lib/rpc/methods/pimlico_experimental_estimateUserOperationGas7702.d.ts +0 -979
- package/lib/rpc/methods/pimlico_experimental_estimateUserOperationGas7702.js +0 -25
- package/lib/rpc/methods/pimlico_experimental_estimateUserOperationGas7702.js.map +0 -1
- package/lib/rpc/methods/pimlico_experimental_sendUserOperation7702.d.ts +0 -422
- package/lib/rpc/methods/pimlico_experimental_sendUserOperation7702.js +0 -22
- package/lib/rpc/methods/pimlico_experimental_sendUserOperation7702.js.map +0 -1
- package/lib/utils/slidingWindowTimedQueue.d.ts +0 -12
- package/lib/utils/slidingWindowTimedQueue.js +0 -52
- package/lib/utils/slidingWindowTimedQueue.js.map +0 -1
package/esm/mempool/mempool.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { EntryPointV06Abi, EntryPointV07Abi, RpcError, ValidationErrors } from "../types/index.js";
|
|
2
|
-
import { getAddressFromInitCodeOrPaymasterAndData,
|
|
2
|
+
import { getAddressFromInitCodeOrPaymasterAndData, getUserOperationHash, isVersion06, isVersion07, scaleBigIntByPercent } from "../utils/index.js";
|
|
3
3
|
import { getAddress, getContract } from "viem";
|
|
4
4
|
import { ReputationStatuses } from "./reputationManager.js";
|
|
5
|
-
|
|
6
|
-
export class MemoryMempool {
|
|
5
|
+
export class Mempool {
|
|
7
6
|
config;
|
|
8
7
|
monitor;
|
|
9
8
|
reputationManager;
|
|
@@ -12,7 +11,8 @@ export class MemoryMempool {
|
|
|
12
11
|
logger;
|
|
13
12
|
validator;
|
|
14
13
|
eventManager;
|
|
15
|
-
constructor({ config, monitor, reputationManager, validator,
|
|
14
|
+
constructor({ config, monitor, reputationManager, validator, store, eventManager }) {
|
|
15
|
+
this.store = store;
|
|
16
16
|
this.config = config;
|
|
17
17
|
this.reputationManager = reputationManager;
|
|
18
18
|
this.monitor = monitor;
|
|
@@ -20,63 +20,68 @@ export class MemoryMempool {
|
|
|
20
20
|
this.logger = config.getLogger({ module: "mempool" }, {
|
|
21
21
|
level: config.logLevel
|
|
22
22
|
});
|
|
23
|
-
this.store = new MemoryStore(this.logger, metrics);
|
|
24
23
|
this.throttledEntityBundleCount = 4; // we don't have any config for this as of now
|
|
25
24
|
this.eventManager = eventManager;
|
|
26
25
|
}
|
|
27
|
-
replaceSubmitted(userOpInfo, transactionInfo) {
|
|
26
|
+
async replaceSubmitted({ userOpInfo, transactionInfo }) {
|
|
27
|
+
const entryPoint = transactionInfo.bundle.entryPoint;
|
|
28
28
|
const { userOpHash } = userOpInfo;
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
.find((userOpInfo) => userOpInfo.userOpHash === userOpHash);
|
|
29
|
+
const sumbittedUserOps = await this.store.dumpSubmitted(entryPoint);
|
|
30
|
+
const existingUserOpToReplace = sumbittedUserOps.find((userOpInfo) => userOpInfo.userOpHash === userOpHash);
|
|
32
31
|
if (existingUserOpToReplace) {
|
|
33
|
-
this.store.removeSubmitted(userOpHash);
|
|
34
|
-
this.store.addSubmitted({
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
await this.store.removeSubmitted({ entryPoint, userOpHash });
|
|
33
|
+
await this.store.addSubmitted({
|
|
34
|
+
entryPoint,
|
|
35
|
+
submittedUserOp: {
|
|
36
|
+
...userOpInfo,
|
|
37
|
+
transactionInfo
|
|
38
|
+
}
|
|
37
39
|
});
|
|
38
|
-
this.monitor.setUserOperationStatus(userOpHash, {
|
|
40
|
+
await this.monitor.setUserOperationStatus(userOpHash, {
|
|
39
41
|
status: "submitted",
|
|
40
42
|
transactionHash: transactionInfo.transactionHash
|
|
41
43
|
});
|
|
42
44
|
}
|
|
43
45
|
}
|
|
44
|
-
markSubmitted(userOpHash, transactionInfo) {
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
async markSubmitted({ userOpHash, transactionInfo }) {
|
|
47
|
+
const entryPoint = transactionInfo.bundle.entryPoint;
|
|
48
|
+
const processingUserOps = await this.store.dumpProcessing(entryPoint);
|
|
49
|
+
const processingUserOp = processingUserOps.find((userOpInfo) => userOpInfo.userOpHash === userOpHash);
|
|
48
50
|
if (processingUserOp) {
|
|
49
|
-
this.store.removeProcessing(userOpHash);
|
|
50
|
-
this.store.addSubmitted({
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
await this.store.removeProcessing({ entryPoint, userOpHash });
|
|
52
|
+
await this.store.addSubmitted({
|
|
53
|
+
entryPoint,
|
|
54
|
+
submittedUserOp: {
|
|
55
|
+
...processingUserOp,
|
|
56
|
+
transactionInfo
|
|
57
|
+
}
|
|
53
58
|
});
|
|
54
|
-
this.monitor.setUserOperationStatus(userOpHash, {
|
|
59
|
+
await this.monitor.setUserOperationStatus(userOpHash, {
|
|
55
60
|
status: "submitted",
|
|
56
61
|
transactionHash: transactionInfo.transactionHash
|
|
57
62
|
});
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
|
-
dumpOutstanding() {
|
|
61
|
-
return this.store.dumpOutstanding();
|
|
65
|
+
async dumpOutstanding(entryPoint) {
|
|
66
|
+
return await this.store.dumpOutstanding(entryPoint);
|
|
62
67
|
}
|
|
63
|
-
dumpProcessing() {
|
|
64
|
-
return this.store.dumpProcessing();
|
|
68
|
+
async dumpProcessing(entryPoint) {
|
|
69
|
+
return await this.store.dumpProcessing(entryPoint);
|
|
65
70
|
}
|
|
66
|
-
dumpSubmittedOps() {
|
|
67
|
-
return this.store.dumpSubmitted();
|
|
71
|
+
async dumpSubmittedOps(entryPoint) {
|
|
72
|
+
return await this.store.dumpSubmitted(entryPoint);
|
|
68
73
|
}
|
|
69
|
-
removeSubmitted(userOpHash) {
|
|
70
|
-
this.store.removeSubmitted(userOpHash);
|
|
74
|
+
async removeSubmitted({ entryPoint, userOpHash }) {
|
|
75
|
+
await this.store.removeSubmitted({ entryPoint, userOpHash });
|
|
71
76
|
}
|
|
72
|
-
removeProcessing(userOpHash) {
|
|
73
|
-
this.store.removeProcessing(userOpHash);
|
|
77
|
+
async removeProcessing({ entryPoint, userOpHash }) {
|
|
78
|
+
await this.store.removeProcessing({ entryPoint, userOpHash });
|
|
74
79
|
}
|
|
75
|
-
checkEntityMultipleRoleViolation(op) {
|
|
80
|
+
async checkEntityMultipleRoleViolation(entryPoint, op) {
|
|
76
81
|
if (!this.config.safeMode) {
|
|
77
82
|
return Promise.resolve();
|
|
78
83
|
}
|
|
79
|
-
const knownEntities = this.getKnownEntities();
|
|
84
|
+
const knownEntities = await this.getKnownEntities(entryPoint);
|
|
80
85
|
if (knownEntities.paymasters.has(op.sender) ||
|
|
81
86
|
knownEntities.factories.has(op.sender)) {
|
|
82
87
|
throw new RpcError(`The sender address "${op.sender}" is used as a different entity in another UserOperation currently in mempool`, ValidationErrors.OpcodeValidation);
|
|
@@ -99,8 +104,9 @@ export class MemoryMempool {
|
|
|
99
104
|
}
|
|
100
105
|
return Promise.resolve();
|
|
101
106
|
}
|
|
102
|
-
getKnownEntities() {
|
|
103
|
-
|
|
107
|
+
async getKnownEntities(entryPoint) {
|
|
108
|
+
// TODO: this won't work with redis
|
|
109
|
+
const allOps = await this.store.dumpOutstanding(entryPoint);
|
|
104
110
|
const entities = {
|
|
105
111
|
sender: new Set(),
|
|
106
112
|
paymasters: new Set(),
|
|
@@ -125,133 +131,65 @@ export class MemoryMempool {
|
|
|
125
131
|
}
|
|
126
132
|
return entities;
|
|
127
133
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
add(userOp, entryPoint, referencedContracts) {
|
|
131
|
-
const userOpHash = getUserOperationHash(userOp, entryPoint, this.config.publicClient.chain.id);
|
|
132
|
-
const outstandingOps = [...this.store.dumpOutstanding()];
|
|
133
|
-
const processedOrSubmittedOps = [
|
|
134
|
-
...this.store.dumpProcessing(),
|
|
135
|
-
...this.store.dumpSubmitted()
|
|
136
|
-
];
|
|
134
|
+
async add(userOp, entryPoint, referencedContracts) {
|
|
135
|
+
const userOpHash = getUserOperationHash(userOp, entryPoint, this.config.chainId);
|
|
137
136
|
// Check if the exact same userOperation is already in the mempool.
|
|
138
|
-
|
|
139
|
-
...outstandingOps,
|
|
140
|
-
...processedOrSubmittedOps
|
|
141
|
-
].find((userOpInfo) => userOpInfo.userOpHash === userOpHash);
|
|
142
|
-
if (existingUserOperation) {
|
|
137
|
+
if (await this.store.isInMempool({ userOpHash, entryPoint })) {
|
|
143
138
|
return [false, "Already known"];
|
|
144
139
|
}
|
|
145
|
-
if
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
})
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
"AA25 invalid account nonce: User operation is already in mempool and getting processed with same nonce and sender"
|
|
153
|
-
];
|
|
140
|
+
// Check if there is a conflicting userOp already being processed
|
|
141
|
+
const validation = await this.store.validateSubmittedOrProcessing({
|
|
142
|
+
entryPoint,
|
|
143
|
+
userOp
|
|
144
|
+
});
|
|
145
|
+
if (!validation.valid) {
|
|
146
|
+
return [false, validation.reason];
|
|
154
147
|
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
const { userOp: mempoolUserOp } = userOpInfo;
|
|
160
|
-
const isSameSender = mempoolUserOp.sender === userOp.sender;
|
|
161
|
-
if (isSameSender && mempoolUserOp.nonce === userOp.nonce) {
|
|
162
|
-
return true;
|
|
163
|
-
}
|
|
164
|
-
// Check if there is already a userOperation with initCode + same sender (stops rejected ops due to AA10).
|
|
165
|
-
if (isVersion06(mempoolUserOp) &&
|
|
166
|
-
isVersion06(userOp) &&
|
|
167
|
-
userOp.initCode &&
|
|
168
|
-
userOp.initCode !== "0x") {
|
|
169
|
-
return (isSameSender &&
|
|
170
|
-
mempoolUserOp.initCode &&
|
|
171
|
-
mempoolUserOp.initCode !== "0x");
|
|
172
|
-
}
|
|
173
|
-
// Check if there is already a userOperation with factory + same sender (stops rejected ops due to AA10).
|
|
174
|
-
if (isVersion07(mempoolUserOp) &&
|
|
175
|
-
isVersion07(userOp) &&
|
|
176
|
-
userOp.factory &&
|
|
177
|
-
userOp.factory !== "0x") {
|
|
178
|
-
return (isSameSender &&
|
|
179
|
-
mempoolUserOp.factory &&
|
|
180
|
-
mempoolUserOp.factory !== "0x");
|
|
181
|
-
}
|
|
182
|
-
return false;
|
|
148
|
+
// Check if there is a userOp we can replace
|
|
149
|
+
const conflicting = await this.store.popConflictingOustanding({
|
|
150
|
+
entryPoint,
|
|
151
|
+
userOp
|
|
183
152
|
});
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
const
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
}
|
|
192
|
-
// if oldOp is already in processing or submitted mempool, we can't replace it so early exit.
|
|
193
|
-
if (isOldUserOpProcessingOrSubmitted) {
|
|
194
|
-
return [false, reason];
|
|
195
|
-
}
|
|
196
|
-
const oldOp = oldUserOp;
|
|
197
|
-
const newOp = userOp;
|
|
198
|
-
const hasHigherPriorityFee = newOp.maxPriorityFeePerGas >=
|
|
199
|
-
scaleBigIntByPercent(oldOp.maxPriorityFeePerGas, 110n);
|
|
200
|
-
const hasHigherMaxFee = newOp.maxFeePerGas >=
|
|
201
|
-
scaleBigIntByPercent(oldOp.maxFeePerGas, 110n);
|
|
153
|
+
if (conflicting) {
|
|
154
|
+
const { userOpInfo, reason } = conflicting;
|
|
155
|
+
const conflictingUserOp = userOpInfo.userOp;
|
|
156
|
+
const hasHigherPriorityFee = userOp.maxPriorityFeePerGas >=
|
|
157
|
+
scaleBigIntByPercent(conflictingUserOp.maxPriorityFeePerGas, 110n);
|
|
158
|
+
const hasHigherMaxFee = userOp.maxFeePerGas >=
|
|
159
|
+
scaleBigIntByPercent(conflictingUserOp.maxFeePerGas, 110n);
|
|
202
160
|
const hasHigherFees = hasHigherPriorityFee && hasHigherMaxFee;
|
|
203
161
|
if (!hasHigherFees) {
|
|
204
|
-
|
|
162
|
+
const message = reason === "conflicting_deployment"
|
|
163
|
+
? "AA10 sender already constructed: A conflicting userOperation with initCode for this sender is already in the mempool"
|
|
164
|
+
: "AA25 invalid account nonce: User operation already present in mempool";
|
|
165
|
+
// Re-add to outstanding as it wasn't replaced
|
|
166
|
+
await this.store.addOutstanding({
|
|
167
|
+
entryPoint,
|
|
168
|
+
userOpInfo: conflicting.userOpInfo
|
|
169
|
+
});
|
|
170
|
+
return [false, `${message}, bump the gas price by minimum 10%`];
|
|
205
171
|
}
|
|
206
|
-
this.
|
|
207
|
-
this.reputationManager.replaceUserOperationSeenStatus(oldOp, entryPoint);
|
|
208
|
-
}
|
|
209
|
-
this.reputationManager.increaseUserOperationSeenStatus(userOp, entryPoint);
|
|
210
|
-
// Check if mempool already includes max amount of parallel user operations
|
|
211
|
-
const parallelUserOperationsCount = this.store
|
|
212
|
-
.dumpOutstanding()
|
|
213
|
-
.filter((userOpInfo) => {
|
|
214
|
-
const { userOp: mempoolUserOp } = userOpInfo;
|
|
215
|
-
return mempoolUserOp.sender === userOp.sender;
|
|
216
|
-
}).length;
|
|
217
|
-
if (parallelUserOperationsCount > this.config.mempoolMaxParallelOps) {
|
|
218
|
-
return [
|
|
219
|
-
false,
|
|
220
|
-
"AA25 invalid account nonce: Maximum number of parallel user operations for that is allowed for this sender reached"
|
|
221
|
-
];
|
|
172
|
+
await this.reputationManager.replaceUserOperationSeenStatus(conflictingUserOp, entryPoint);
|
|
222
173
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
const queuedUserOperationsCount = this.store
|
|
226
|
-
.dumpOutstanding()
|
|
227
|
-
.filter((userOpInfo) => {
|
|
228
|
-
const { userOp: mempoolUserOp } = userOpInfo;
|
|
229
|
-
const [opNonceKey] = getNonceKeyAndSequence(mempoolUserOp.nonce);
|
|
230
|
-
return (mempoolUserOp.sender === userOp.sender &&
|
|
231
|
-
opNonceKey === nonceKey);
|
|
232
|
-
}).length;
|
|
233
|
-
if (queuedUserOperationsCount > this.config.mempoolMaxQueuedOps) {
|
|
234
|
-
return [
|
|
235
|
-
false,
|
|
236
|
-
"AA25 invalid account nonce: Maximum number of queued user operations reached for this sender and nonce key"
|
|
237
|
-
];
|
|
238
|
-
}
|
|
239
|
-
this.store.addOutstanding({
|
|
240
|
-
userOp,
|
|
174
|
+
await this.reputationManager.increaseUserOperationSeenStatus(userOp, entryPoint);
|
|
175
|
+
await this.store.addOutstanding({
|
|
241
176
|
entryPoint,
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
177
|
+
userOpInfo: {
|
|
178
|
+
userOp,
|
|
179
|
+
userOpHash,
|
|
180
|
+
referencedContracts,
|
|
181
|
+
addedToMempool: Date.now()
|
|
182
|
+
}
|
|
245
183
|
});
|
|
246
|
-
this.monitor.setUserOperationStatus(userOpHash, {
|
|
184
|
+
await this.monitor.setUserOperationStatus(userOpHash, {
|
|
247
185
|
status: "not_submitted",
|
|
248
186
|
transactionHash: null
|
|
249
187
|
});
|
|
250
|
-
this.eventManager.emitAddedToMempool(userOpHash);
|
|
188
|
+
await this.eventManager.emitAddedToMempool(userOpHash);
|
|
251
189
|
return [true, ""];
|
|
252
190
|
}
|
|
253
191
|
// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: <explanation>
|
|
254
|
-
async shouldSkip(userOpInfo, paymasterDeposit, stakedEntityCount, knownEntities, senders, storageMap) {
|
|
192
|
+
async shouldSkip({ userOpInfo, paymasterDeposit, stakedEntityCount, knownEntities, senders, storageMap, entryPoint }) {
|
|
255
193
|
if (!this.config.safeMode) {
|
|
256
194
|
return {
|
|
257
195
|
skip: false,
|
|
@@ -262,7 +200,7 @@ export class MemoryMempool {
|
|
|
262
200
|
storageMap
|
|
263
201
|
};
|
|
264
202
|
}
|
|
265
|
-
const { userOp,
|
|
203
|
+
const { userOp, userOpHash, referencedContracts } = userOpInfo;
|
|
266
204
|
const isUserOpV06 = isVersion06(userOp);
|
|
267
205
|
const paymaster = isUserOpV06
|
|
268
206
|
? getAddressFromInitCodeOrPaymasterAndData(userOp.paymasterAndData)
|
|
@@ -274,7 +212,7 @@ export class MemoryMempool {
|
|
|
274
212
|
const factoryStatus = this.reputationManager.getStatus(entryPoint, factory);
|
|
275
213
|
if (paymasterStatus === ReputationStatuses.banned ||
|
|
276
214
|
factoryStatus === ReputationStatuses.banned) {
|
|
277
|
-
this.store.removeOutstanding(userOpHash);
|
|
215
|
+
await this.store.removeOutstanding({ entryPoint, userOpHash });
|
|
278
216
|
return {
|
|
279
217
|
skip: true,
|
|
280
218
|
paymasterDeposit,
|
|
@@ -335,7 +273,10 @@ export class MemoryMempool {
|
|
|
335
273
|
try {
|
|
336
274
|
let queuedUserOperations = [];
|
|
337
275
|
if (!isUserOpV06) {
|
|
338
|
-
queuedUserOperations = await this.
|
|
276
|
+
queuedUserOperations = await this.getQueuedOustandingUserOps({
|
|
277
|
+
userOp,
|
|
278
|
+
entryPoint
|
|
279
|
+
});
|
|
339
280
|
}
|
|
340
281
|
validationResult = await this.validator.validateUserOperation({
|
|
341
282
|
shouldCheckPrefund: false,
|
|
@@ -350,7 +291,7 @@ export class MemoryMempool {
|
|
|
350
291
|
userOpHash,
|
|
351
292
|
error: JSON.stringify(e)
|
|
352
293
|
}, "2nd Validation error");
|
|
353
|
-
this.store.removeOutstanding(userOpHash);
|
|
294
|
+
this.store.removeOutstanding({ entryPoint, userOpHash });
|
|
354
295
|
this.reputationManager.decreaseUserOperationSeenStatus(userOp, entryPoint, e instanceof RpcError ? e.message : JSON.stringify(e));
|
|
355
296
|
return {
|
|
356
297
|
skip: true,
|
|
@@ -438,67 +379,53 @@ export class MemoryMempool {
|
|
|
438
379
|
}
|
|
439
380
|
// Returns a bundle of userOperations in array format.
|
|
440
381
|
async process({ maxGasLimit, entryPoint, minOpsPerBundle, maxBundleCount }) {
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
.sort((aUserOpInfo, bUserOpInfo) => {
|
|
445
|
-
// Sort userops before the execution
|
|
446
|
-
// Decide the order of the userops based on the sender and nonce
|
|
447
|
-
// If sender is the same, sort by nonce key
|
|
448
|
-
const aUserOp = aUserOpInfo.userOp;
|
|
449
|
-
const bUserOp = bUserOpInfo.userOp;
|
|
450
|
-
if (aUserOp.sender === bUserOp.sender) {
|
|
451
|
-
const [aNonceKey, aNonceValue] = getNonceKeyAndSequence(aUserOp.nonce);
|
|
452
|
-
const [bNonceKey, bNonceValue] = getNonceKeyAndSequence(bUserOp.nonce);
|
|
453
|
-
if (aNonceKey === bNonceKey) {
|
|
454
|
-
return Number(aNonceValue - bNonceValue);
|
|
455
|
-
}
|
|
456
|
-
return Number(aNonceKey - bNonceKey);
|
|
457
|
-
}
|
|
458
|
-
return 0;
|
|
459
|
-
})
|
|
460
|
-
.slice();
|
|
461
|
-
if (outstandingUserOps.length === 0)
|
|
382
|
+
// Check if there are any operations in the store
|
|
383
|
+
const firstOp = await this.store.peekOutstanding(entryPoint);
|
|
384
|
+
if (!firstOp) {
|
|
462
385
|
return [];
|
|
463
|
-
// Get EntryPoint version. (Ideally version should be derived from CLI flags)
|
|
464
|
-
const isV6 = isVersion06(outstandingUserOps[0].userOp);
|
|
465
|
-
const allSameVersion = outstandingUserOps.every((userOpInfo) => {
|
|
466
|
-
const { userOp } = userOpInfo;
|
|
467
|
-
return isVersion06(userOp) === isV6;
|
|
468
|
-
});
|
|
469
|
-
if (!allSameVersion) {
|
|
470
|
-
throw new Error("All user operations from same EntryPoint must be of the same version");
|
|
471
386
|
}
|
|
387
|
+
// Get EntryPoint version
|
|
388
|
+
const isV6 = isVersion06(firstOp.userOp);
|
|
472
389
|
const bundles = [];
|
|
473
|
-
// Process
|
|
474
|
-
while (
|
|
475
|
-
// If maxBundles is set and we reached the limit, break
|
|
390
|
+
// Process operations until no more are available or we hit maxBundleCount
|
|
391
|
+
while (await this.store.peekOutstanding(entryPoint)) {
|
|
392
|
+
// If maxBundles is set and we reached the limit, break
|
|
476
393
|
if (maxBundleCount && bundles.length >= maxBundleCount) {
|
|
477
394
|
break;
|
|
478
395
|
}
|
|
479
|
-
// Setup for next bundle
|
|
396
|
+
// Setup for next bundle
|
|
480
397
|
const currentBundle = {
|
|
481
398
|
entryPoint,
|
|
482
399
|
version: isV6 ? "0.6" : "0.7",
|
|
483
400
|
userOps: []
|
|
484
401
|
};
|
|
485
402
|
let gasUsed = 0n;
|
|
486
|
-
let paymasterDeposit = {};
|
|
487
|
-
let stakedEntityCount = {};
|
|
488
|
-
let senders = new Set();
|
|
489
|
-
let knownEntities = this.getKnownEntities();
|
|
403
|
+
let paymasterDeposit = {};
|
|
404
|
+
let stakedEntityCount = {};
|
|
405
|
+
let senders = new Set();
|
|
406
|
+
let knownEntities = await this.getKnownEntities(entryPoint);
|
|
490
407
|
let storageMap = {};
|
|
491
|
-
// Keep adding ops to current bundle
|
|
492
|
-
while (
|
|
493
|
-
const userOpInfo =
|
|
408
|
+
// Keep adding ops to current bundle
|
|
409
|
+
while (await this.store.peekOutstanding(entryPoint)) {
|
|
410
|
+
const userOpInfo = await this.store.popOutstanding(entryPoint);
|
|
494
411
|
if (!userOpInfo)
|
|
495
412
|
break;
|
|
496
|
-
const { userOp
|
|
497
|
-
//
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
413
|
+
const { userOp } = userOpInfo;
|
|
414
|
+
// Check if we should skip this operation
|
|
415
|
+
const skipResult = await this.shouldSkip({
|
|
416
|
+
userOpInfo,
|
|
417
|
+
paymasterDeposit,
|
|
418
|
+
stakedEntityCount,
|
|
419
|
+
knownEntities,
|
|
420
|
+
senders,
|
|
421
|
+
storageMap,
|
|
422
|
+
entryPoint
|
|
423
|
+
});
|
|
424
|
+
if (skipResult.skip) {
|
|
425
|
+
// Re-add to outstanding
|
|
426
|
+
await this.store.addOutstanding({ entryPoint, userOpInfo });
|
|
501
427
|
continue;
|
|
428
|
+
}
|
|
502
429
|
gasUsed +=
|
|
503
430
|
userOp.callGasLimit +
|
|
504
431
|
userOp.verificationGasLimit +
|
|
@@ -506,10 +433,11 @@ export class MemoryMempool {
|
|
|
506
433
|
? (userOp.paymasterPostOpGasLimit || 0n) +
|
|
507
434
|
(userOp.paymasterVerificationGasLimit || 0n)
|
|
508
435
|
: 0n);
|
|
509
|
-
// Only break on gas limit if we've hit minOpsPerBundle
|
|
436
|
+
// Only break on gas limit if we've hit minOpsPerBundle
|
|
510
437
|
if (gasUsed > maxGasLimit &&
|
|
511
438
|
currentBundle.userOps.length >= minOpsPerBundle) {
|
|
512
|
-
|
|
439
|
+
// Put the operation back in the store
|
|
440
|
+
await this.store.addOutstanding({ entryPoint, userOpInfo });
|
|
513
441
|
break;
|
|
514
442
|
}
|
|
515
443
|
// Update state based on skip result
|
|
@@ -519,8 +447,7 @@ export class MemoryMempool {
|
|
|
519
447
|
senders = skipResult.senders;
|
|
520
448
|
storageMap = skipResult.storageMap;
|
|
521
449
|
this.reputationManager.decreaseUserOperationCount(userOp);
|
|
522
|
-
this.store.
|
|
523
|
-
this.store.addProcessing(userOpInfo);
|
|
450
|
+
this.store.addProcessing({ entryPoint, userOpInfo });
|
|
524
451
|
// Add op to current bundle
|
|
525
452
|
currentBundle.userOps.push(userOpInfo);
|
|
526
453
|
}
|
|
@@ -530,60 +457,13 @@ export class MemoryMempool {
|
|
|
530
457
|
}
|
|
531
458
|
return bundles;
|
|
532
459
|
}
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
async getQueuedUserOperations(userOp, entryPoint, _currentNonceValue) {
|
|
537
|
-
const entryPointContract = getContract({
|
|
538
|
-
address: entryPoint,
|
|
539
|
-
abi: isVersion06(userOp) ? EntryPointV06Abi : EntryPointV07Abi,
|
|
540
|
-
client: {
|
|
541
|
-
public: this.config.publicClient
|
|
542
|
-
}
|
|
543
|
-
});
|
|
544
|
-
const [nonceKey, nonceSequence] = getNonceKeyAndSequence(userOp.nonce);
|
|
545
|
-
let currentNonceSequence = BigInt(0);
|
|
546
|
-
if (_currentNonceValue) {
|
|
547
|
-
currentNonceSequence = _currentNonceValue;
|
|
548
|
-
}
|
|
549
|
-
else {
|
|
550
|
-
const getNonceResult = await entryPointContract.read.getNonce([userOp.sender, nonceKey], {
|
|
551
|
-
blockTag: "latest"
|
|
552
|
-
});
|
|
553
|
-
currentNonceSequence = getNonceKeyAndSequence(getNonceResult)[1];
|
|
460
|
+
clear() {
|
|
461
|
+
for (const entryPoint of this.config.entrypoints) {
|
|
462
|
+
this.store.clearOutstanding(entryPoint);
|
|
554
463
|
}
|
|
555
|
-
const outstanding = this.store
|
|
556
|
-
.dumpOutstanding()
|
|
557
|
-
.filter((userOpInfo) => {
|
|
558
|
-
const { userOp: mempoolUserOp } = userOpInfo;
|
|
559
|
-
const [mempoolNonceKey, mempoolNonceSequence] = getNonceKeyAndSequence(mempoolUserOp.nonce);
|
|
560
|
-
let isPaymasterSame = false;
|
|
561
|
-
if (isVersion07(userOp) && isVersion07(mempoolUserOp)) {
|
|
562
|
-
isPaymasterSame =
|
|
563
|
-
mempoolUserOp.paymaster === userOp.paymaster &&
|
|
564
|
-
!(mempoolUserOp.sender === userOp.sender &&
|
|
565
|
-
mempoolNonceKey === nonceKey &&
|
|
566
|
-
mempoolNonceSequence === nonceSequence) &&
|
|
567
|
-
userOp.paymaster !== null;
|
|
568
|
-
}
|
|
569
|
-
return ((mempoolUserOp.sender === userOp.sender &&
|
|
570
|
-
mempoolNonceKey === nonceKey &&
|
|
571
|
-
mempoolNonceSequence >= currentNonceSequence &&
|
|
572
|
-
mempoolNonceSequence < nonceSequence) ||
|
|
573
|
-
isPaymasterSame);
|
|
574
|
-
});
|
|
575
|
-
return outstanding
|
|
576
|
-
.sort((a, b) => {
|
|
577
|
-
const aUserOp = a.userOp;
|
|
578
|
-
const bUserOp = b.userOp;
|
|
579
|
-
const [, aNonceValue] = getNonceKeyAndSequence(aUserOp.nonce);
|
|
580
|
-
const [, bNonceValue] = getNonceKeyAndSequence(bUserOp.nonce);
|
|
581
|
-
return Number(aNonceValue - bNonceValue);
|
|
582
|
-
})
|
|
583
|
-
.map((userOpInfo) => userOpInfo.userOp);
|
|
584
464
|
}
|
|
585
|
-
|
|
586
|
-
this.store.
|
|
465
|
+
async getQueuedOustandingUserOps(args) {
|
|
466
|
+
return await this.store.getQueuedOutstandingUserOps(args);
|
|
587
467
|
}
|
|
588
468
|
}
|
|
589
469
|
//# sourceMappingURL=mempool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mempool.js","sourceRoot":"","sources":["../../mempool/mempool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mempool.js","sourceRoot":"","sources":["../../mempool/mempool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import type { HexData32, UserOperationStatus } from "../types/index.js";
|
|
2
|
+
import { AltoConfig } from "../createConfig.js";
|
|
2
3
|
export declare class Monitor {
|
|
3
|
-
private
|
|
4
|
+
private statusStore;
|
|
4
5
|
private userOperationTimeouts;
|
|
5
6
|
private timeout;
|
|
6
|
-
constructor(timeout
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
constructor({ config, timeout }: {
|
|
8
|
+
config: AltoConfig;
|
|
9
|
+
timeout?: number;
|
|
10
|
+
});
|
|
11
|
+
setUserOperationStatus(userOperation: HexData32, status: UserOperationStatus): Promise<void>;
|
|
12
|
+
getUserOperationStatus(userOperation: HexData32): Promise<UserOperationStatus>;
|
|
9
13
|
}
|
|
10
14
|
//# sourceMappingURL=monitoring.d.ts.map
|