@pimlico/alto 0.0.0-main.20250908T105720 → 0.0.0-main.20250930T125129

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 (99) hide show
  1. package/esm/cli/config/bundler.d.ts +12 -0
  2. package/esm/cli/config/bundler.js +2 -0
  3. package/esm/cli/config/bundler.js.map +1 -1
  4. package/esm/cli/config/options.js +11 -0
  5. package/esm/cli/config/options.js.map +1 -1
  6. package/esm/cli/setupServer.js +11 -11
  7. package/esm/cli/setupServer.js.map +1 -1
  8. package/esm/cli/shutDown.d.ts +5 -5
  9. package/esm/cli/shutDown.js +20 -60
  10. package/esm/cli/shutDown.js.map +1 -1
  11. package/esm/executor/{userOpMonitor.d.ts → bundleManager.d.ts} +4 -4
  12. package/esm/executor/{userOpMonitor.js → bundleManager.js} +50 -37
  13. package/esm/executor/bundleManager.js.map +1 -0
  14. package/esm/executor/executorManager.d.ts +4 -4
  15. package/esm/executor/executorManager.js +23 -24
  16. package/esm/executor/executorManager.js.map +1 -1
  17. package/esm/executor/index.d.ts +1 -1
  18. package/esm/executor/index.js +1 -1
  19. package/esm/executor/senderManager/createRedisSenderManager.js +1 -2
  20. package/esm/executor/senderManager/createRedisSenderManager.js.map +1 -1
  21. package/esm/handlers/arbitrumGasPriceManager.js +2 -2
  22. package/esm/handlers/gasPriceManager.js +3 -3
  23. package/esm/handlers/mantleGasPriceManager.js +4 -4
  24. package/esm/handlers/optimismManager.js +1 -1
  25. package/esm/mempool/mempool.d.ts +3 -11
  26. package/esm/mempool/mempool.js +91 -93
  27. package/esm/mempool/mempool.js.map +1 -1
  28. package/esm/mempool/monitoring.d.ts +1 -1
  29. package/esm/mempool/monitoring.js +30 -21
  30. package/esm/mempool/monitoring.js.map +1 -1
  31. package/esm/receiptCache/createMemoryReceiptCache.js +8 -5
  32. package/esm/receiptCache/createMemoryReceiptCache.js.map +1 -1
  33. package/esm/receiptCache/createRedisReceiptCache.js +13 -11
  34. package/esm/receiptCache/createRedisReceiptCache.js.map +1 -1
  35. package/esm/receiptCache/index.d.ts +4 -1
  36. package/esm/receiptCache/index.js.map +1 -1
  37. package/esm/rpc/methods/eth_getUserOperationReceipt.js +1 -1
  38. package/esm/rpc/methods/pimlico_sendUserOperationNow.js +4 -1
  39. package/esm/rpc/methods/pimlico_sendUserOperationNow.js.map +1 -1
  40. package/esm/rpc/rpcHandler.d.ts +4 -4
  41. package/esm/rpc/rpcHandler.js +3 -3
  42. package/esm/store/createMempoolStore.d.ts +1 -1
  43. package/esm/store/createMempoolStore.js +51 -143
  44. package/esm/store/createMempoolStore.js.map +1 -1
  45. package/esm/store/index.d.ts +4 -75
  46. package/esm/store/index.js +4 -1
  47. package/esm/store/index.js.map +1 -1
  48. package/esm/store/outstanding/index.d.ts +13 -0
  49. package/esm/store/outstanding/index.js +16 -0
  50. package/esm/store/outstanding/index.js.map +1 -0
  51. package/esm/store/{createMemoryOutstandingStore.d.ts → outstanding/memory.d.ts} +11 -10
  52. package/esm/store/outstanding/memory.js +249 -0
  53. package/esm/store/outstanding/memory.js.map +1 -0
  54. package/esm/store/outstanding/redis.d.ts +11 -0
  55. package/esm/store/outstanding/redis.js +201 -0
  56. package/esm/store/outstanding/redis.js.map +1 -0
  57. package/esm/store/outstanding/types.d.ts +18 -0
  58. package/esm/store/outstanding/types.js +2 -0
  59. package/esm/store/outstanding/types.js.map +1 -0
  60. package/esm/store/processing/index.d.ts +11 -0
  61. package/esm/store/processing/index.js +17 -0
  62. package/esm/store/processing/index.js.map +1 -0
  63. package/esm/store/processing/memory.d.ts +14 -0
  64. package/esm/store/processing/memory.js +46 -0
  65. package/esm/store/processing/memory.js.map +1 -0
  66. package/esm/store/processing/redis.d.ts +21 -0
  67. package/esm/store/processing/redis.js +69 -0
  68. package/esm/store/processing/redis.js.map +1 -0
  69. package/esm/store/processing/types.d.ts +9 -0
  70. package/esm/store/processing/types.js +2 -0
  71. package/esm/store/processing/types.js.map +1 -0
  72. package/esm/store/types.d.ts +49 -0
  73. package/esm/store/types.js +2 -0
  74. package/esm/store/types.js.map +1 -0
  75. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.d.ts +23 -2
  76. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js +83 -60
  77. package/esm/utils/minMaxQueue/createRedisMinMaxQueue.js.map +1 -1
  78. package/esm/utils/minMaxQueue/index.d.ts +2 -2
  79. package/esm/utils/minMaxQueue/index.js +2 -2
  80. package/esm/utils/minMaxQueue/index.js.map +1 -1
  81. package/esm/utils/userop.d.ts +1 -0
  82. package/esm/utils/userop.js +6 -0
  83. package/esm/utils/userop.js.map +1 -1
  84. package/package.json +1 -1
  85. package/esm/cli/config/redisKeys.d.ts +0 -9
  86. package/esm/cli/config/redisKeys.js +0 -16
  87. package/esm/cli/config/redisKeys.js.map +0 -1
  88. package/esm/executor/userOpMonitor.js.map +0 -1
  89. package/esm/store/createMemoryOutstandingStore.js +0 -240
  90. package/esm/store/createMemoryOutstandingStore.js.map +0 -1
  91. package/esm/store/createRedisOutstandingStore.d.ts +0 -28
  92. package/esm/store/createRedisOutstandingStore.js +0 -341
  93. package/esm/store/createRedisOutstandingStore.js.map +0 -1
  94. package/esm/store/createRedisStore.d.ts +0 -10
  95. package/esm/store/createRedisStore.js +0 -128
  96. package/esm/store/createRedisStore.js.map +0 -1
  97. package/esm/store/createStore.d.ts +0 -6
  98. package/esm/store/createStore.js +0 -66
  99. package/esm/store/createStore.js.map +0 -1
@@ -1,128 +0,0 @@
1
- import Redis from "ioredis";
2
- import { toHex } from "viem";
3
- import { userOperationSchema } from "../types/schemas.js";
4
- import { isVersion06, isVersion07 } from "../utils/userop.js";
5
- import { RedisHash } from "./createRedisOutstandingStore.js";
6
- import { createMemoryStore } from "./createStore.js";
7
- const isDeploymentOperation = (userOp) => {
8
- const isV6Deployment = isVersion06(userOp) && !!userOp.initCode && userOp.initCode !== "0x";
9
- const isV7Deployment = isVersion07(userOp) && !!userOp.factory && userOp.factory !== "0x";
10
- return isV6Deployment || isV7Deployment;
11
- };
12
- const serializeUserOp = (userOpInfo) => {
13
- return JSON.stringify(userOpInfo, (_, value) => typeof value === "bigint" ? toHex(value) : value);
14
- };
15
- const deserializeUserOp = (data) => {
16
- try {
17
- const parsed = JSON.parse(data);
18
- const result = userOperationSchema.safeParse(parsed);
19
- if (!result.success) {
20
- throw new Error(`Failed to parse UserOpInfo: ${result.error.message}`);
21
- }
22
- return result.data;
23
- }
24
- catch (error) {
25
- if (error instanceof Error) {
26
- throw new Error(`UserOpInfo deserialization failed: ${error.message}`);
27
- }
28
- throw new Error("UserOpInfo deserialization failed with unknown error");
29
- }
30
- };
31
- export const createRedisStore = ({ config, storeType, entryPoint, redisEndpoint }) => {
32
- const redis = new Redis(redisEndpoint, {});
33
- const factoryLookupKey = `${config.chainId}:${storeType}:factory-lookup:${entryPoint}`;
34
- const conflictingNonceKey = `${config.chainId}:${storeType}:conflicting-nonce:${entryPoint}`;
35
- const userOpHashLookupKey = `${config.chainId}:${storeType}:user-op-hash-index:${entryPoint}`;
36
- const senderNonceLookupKey = `${config.chainId}:${storeType}:sender-nonce-lookup:${entryPoint}`;
37
- const conflictingNonce = new RedisHash(redis, conflictingNonceKey); // userOpHash -> userOp
38
- const factoryLookup = new RedisHash(redis, factoryLookupKey); // sender -> userOpHash (if deployment is present)
39
- const senderNonceLookup = new RedisHash(redis, senderNonceLookupKey); // sender + nonce -> userOp
40
- const userOpHashLookup = new RedisHash(redis, userOpHashLookupKey); // userOpHash -> userOp
41
- const memoryStore = createMemoryStore({ config });
42
- const encodeSenderNonce = (userOp) => {
43
- return `${userOp.sender}-${userOp.nonce}`;
44
- };
45
- return {
46
- add: async (op) => {
47
- // Local memory logic
48
- memoryStore.add(op);
49
- // Global redis logic
50
- const { userOpHash, userOp } = op;
51
- const multi = redis.multi();
52
- await userOpHashLookup.set({
53
- key: userOpHash,
54
- value: serializeUserOp(userOp),
55
- multi
56
- });
57
- await conflictingNonce.set({
58
- key: userOpHash,
59
- value: serializeUserOp(userOp),
60
- multi
61
- });
62
- await senderNonceLookup.set({
63
- key: encodeSenderNonce(userOp),
64
- value: serializeUserOp(userOp),
65
- multi
66
- });
67
- if (isDeploymentOperation(userOp)) {
68
- await factoryLookup.set({
69
- key: op.userOp.sender,
70
- value: op.userOpHash,
71
- multi
72
- });
73
- }
74
- await multi.exec();
75
- },
76
- remove: async (userOpHash) => {
77
- // Local memory logic
78
- memoryStore.remove(userOpHash);
79
- // Redis Logic
80
- const exist = await userOpHashLookup.get(userOpHash);
81
- if (!exist) {
82
- return false;
83
- }
84
- const userOp = deserializeUserOp(exist);
85
- const multi = redis.multi();
86
- await userOpHashLookup.delete({ key: userOpHash, multi });
87
- await senderNonceLookup.delete({
88
- key: encodeSenderNonce(userOp),
89
- multi
90
- });
91
- if (isDeploymentOperation(userOp)) {
92
- await factoryLookup.delete({ key: userOp.sender, multi });
93
- }
94
- await multi.exec();
95
- return true;
96
- },
97
- contains: async (userOpHash) => {
98
- return await userOpHashLookup.exists(userOpHash);
99
- },
100
- dumpLocal: () => {
101
- return memoryStore.dumpLocal();
102
- },
103
- findConflicting: async (userOp) => {
104
- const conflictingNonce = await senderNonceLookup.get(encodeSenderNonce(userOp));
105
- if (conflictingNonce) {
106
- return {
107
- reason: "conflicting_nonce",
108
- userOp: deserializeUserOp(conflictingNonce)
109
- };
110
- }
111
- if (isDeploymentOperation(userOp)) {
112
- const userOpHash = await factoryLookup.get(userOp.sender);
113
- if (userOpHash) {
114
- const userOp = await userOpHashLookup.get(userOpHash);
115
- if (!userOp) {
116
- return undefined;
117
- }
118
- return {
119
- reason: "conflicting_deployment",
120
- userOp: deserializeUserOp(userOp)
121
- };
122
- }
123
- }
124
- return undefined;
125
- }
126
- };
127
- };
128
- //# sourceMappingURL=createRedisStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createRedisStore.js","sourceRoot":"","sources":["../../store/createRedisStore.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { Store } from "./index.js";
2
- import type { AltoConfig } from "../createConfig.js";
3
- export declare const createMemoryStore: ({ config }: {
4
- config: AltoConfig;
5
- }) => Store;
6
- //# sourceMappingURL=createStore.d.ts.map
@@ -1,66 +0,0 @@
1
- import { isVersion06, isVersion07 } from "../utils/userop.js";
2
- export const createMemoryStore = ({ config }) => {
3
- let store = [];
4
- return {
5
- findConflicting: async (userOp) => {
6
- const dump = [...store];
7
- const { sender, nonce } = userOp;
8
- // Check for same sender and nonce
9
- const conflictingNonce = dump.find((userOpInfo) => {
10
- const { userOp: mempoolUserOp } = userOpInfo;
11
- return (mempoolUserOp.sender === sender &&
12
- mempoolUserOp.nonce === nonce);
13
- });
14
- if (conflictingNonce) {
15
- return {
16
- reason: "conflicting_nonce",
17
- userOp: conflictingNonce.userOp
18
- };
19
- }
20
- // Check for deployment conflict
21
- const isCurrentOpDeployment = (isVersion06(userOp) &&
22
- userOp.initCode &&
23
- userOp.initCode !== "0x") ||
24
- (isVersion07(userOp) &&
25
- userOp.factory &&
26
- userOp.factory !== "0x");
27
- if (isCurrentOpDeployment) {
28
- const conflictingDeployment = dump.find((userOpInfo) => {
29
- const { userOp: mempoolUserOp } = userOpInfo;
30
- const isV6Deployment = isVersion06(mempoolUserOp) &&
31
- mempoolUserOp.initCode &&
32
- mempoolUserOp.initCode !== "0x";
33
- const isV7Deployment = isVersion07(mempoolUserOp) &&
34
- mempoolUserOp.factory &&
35
- mempoolUserOp.factory !== "0x";
36
- const isDeployment = isV6Deployment || isV7Deployment;
37
- return mempoolUserOp.sender === sender && isDeployment;
38
- });
39
- if (conflictingDeployment) {
40
- return {
41
- reason: "conflicting_deployment",
42
- userOp: conflictingDeployment.userOp
43
- };
44
- }
45
- }
46
- return undefined;
47
- },
48
- add: (op) => {
49
- store = [...store, op];
50
- return Promise.resolve();
51
- },
52
- remove: (userOpHash) => {
53
- const exists = store.some((op) => op.userOpHash === userOpHash);
54
- store = store.filter((op) => op.userOpHash !== userOpHash);
55
- return Promise.resolve(exists);
56
- },
57
- contains: (userOpHash) => {
58
- const contains = store.some((op) => op.userOpHash === userOpHash);
59
- return Promise.resolve(contains);
60
- },
61
- dumpLocal: () => {
62
- return Promise.resolve([...store]);
63
- }
64
- };
65
- };
66
- //# sourceMappingURL=createStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createStore.js","sourceRoot":"","sources":["../../store/createStore.ts"],"names":[],"mappings":"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"}