@pimlico/alto 0.0.4 → 0.0.5
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 +0 -4
- package/esm/cli/alto.js.map +1 -1
- package/esm/cli/config/bundler.d.ts +2296 -22
- package/esm/cli/config/bundler.js +31 -4
- package/esm/cli/config/bundler.js.map +1 -1
- package/esm/cli/config/options.js +53 -4
- package/esm/cli/config/options.js.map +1 -1
- package/esm/cli/customTransport.js +5 -1
- package/esm/cli/customTransport.js.map +1 -1
- package/esm/cli/handler.js +14 -3
- package/esm/cli/handler.js.map +1 -1
- package/esm/cli/instrumentation.js +2 -2
- package/esm/cli/instrumentation.js.map +1 -1
- package/esm/cli/setupServer.d.ts +2 -1
- package/esm/cli/setupServer.js +51 -27
- package/esm/cli/setupServer.js.map +1 -1
- package/esm/executor/executor.d.ts +7 -14
- package/esm/executor/executor.js +139 -128
- package/esm/executor/executor.js.map +1 -1
- package/esm/executor/executorManager.d.ts +58 -4
- package/esm/executor/executorManager.js +206 -52
- package/esm/executor/executorManager.js.map +1 -1
- package/esm/executor/senderManager.d.ts +2 -1
- package/esm/executor/senderManager.js +3 -0
- package/esm/executor/senderManager.js.map +1 -1
- package/esm/executor/utilityWalletMonitor.d.ts +15 -0
- package/esm/executor/utilityWalletMonitor.js +38 -0
- package/esm/executor/utilityWalletMonitor.js.map +1 -0
- package/esm/executor/utils.d.ts +1 -2
- package/esm/executor/utils.js +49 -38
- package/esm/executor/utils.js.map +1 -1
- package/esm/handlers/compressionHandler.js.map +1 -0
- package/esm/handlers/eventManager.d.ts +21 -0
- package/esm/handlers/eventManager.js +166 -0
- package/esm/handlers/eventManager.js.map +1 -0
- package/{lib/utils → esm/handlers}/gasPriceManager.d.ts +19 -5
- package/esm/{utils → handlers}/gasPriceManager.js +58 -13
- package/esm/handlers/gasPriceManager.js.map +1 -0
- package/esm/handlers/index.d.ts +4 -0
- package/esm/handlers/index.js +4 -0
- package/esm/handlers/index.js.map +1 -0
- 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 +4 -2
- package/esm/mempool/mempool.js +65 -19
- package/esm/mempool/mempool.js.map +1 -1
- package/esm/rpc/EntryPointSimulationsV07.d.ts +2 -2
- package/esm/rpc/EntryPointSimulationsV07.js +10 -7
- package/esm/rpc/EntryPointSimulationsV07.js.map +1 -1
- package/esm/rpc/gasEstimation.d.ts +3 -3
- package/esm/rpc/gasEstimation.js +22 -17
- package/esm/rpc/gasEstimation.js.map +1 -1
- package/esm/rpc/nonceQueuer.d.ts +4 -1
- package/esm/rpc/nonceQueuer.js +9 -3
- package/esm/rpc/nonceQueuer.js.map +1 -1
- package/esm/rpc/rpcHandler.d.ts +53 -3
- package/esm/rpc/rpcHandler.js +132 -231
- package/esm/rpc/rpcHandler.js.map +1 -1
- package/esm/rpc/server.d.ts +2 -1
- package/esm/rpc/server.js +6 -1
- package/esm/rpc/server.js.map +1 -1
- package/esm/rpc/validation/SafeValidator.d.ts +3 -2
- package/esm/rpc/validation/SafeValidator.js +2 -2
- package/esm/rpc/validation/SafeValidator.js.map +1 -1
- package/esm/rpc/validation/UnsafeValidator.d.ts +5 -2
- package/esm/rpc/validation/UnsafeValidator.js +10 -6
- package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
- package/esm/rpc/validation/tracer.js +1 -0
- package/esm/rpc/validation/tracer.js.map +1 -1
- package/esm/types/schemas.d.ts +1029 -333
- package/esm/types/schemas.js +94 -20
- package/esm/types/schemas.js.map +1 -1
- package/esm/types/utils.d.ts +1 -1
- package/esm/types/validation.js +7 -2
- package/esm/types/validation.js.map +1 -1
- package/esm/utils/bigInt.d.ts +1 -0
- package/esm/utils/bigInt.js +4 -0
- package/esm/utils/bigInt.js.map +1 -1
- package/esm/utils/helpers.d.ts +1 -0
- package/esm/utils/helpers.js +6 -0
- package/esm/utils/helpers.js.map +1 -1
- package/esm/utils/index.d.ts +0 -3
- package/esm/utils/index.js +0 -3
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/metrics.d.ts +4 -0
- package/esm/utils/metrics.js +29 -1
- package/esm/utils/metrics.js.map +1 -1
- package/esm/utils/rpc-reply.d.ts +1 -1
- package/esm/utils/rpc-reply.js +2 -1
- package/esm/utils/rpc-reply.js.map +1 -1
- package/esm/utils/userop.d.ts +66 -6
- package/esm/utils/userop.js +183 -96
- package/esm/utils/userop.js.map +1 -1
- package/esm/utils/validation.d.ts +1 -1
- package/esm/utils/validation.js +9 -13
- package/esm/utils/validation.js.map +1 -1
- package/lib/cli/alto.js +0 -4
- package/lib/cli/alto.js.map +1 -1
- package/lib/cli/config/bundler.d.ts +2296 -22
- package/lib/cli/config/bundler.js +30 -3
- package/lib/cli/config/bundler.js.map +1 -1
- package/lib/cli/config/options.js +53 -4
- package/lib/cli/config/options.js.map +1 -1
- package/lib/cli/customTransport.js +5 -1
- package/lib/cli/customTransport.js.map +1 -1
- package/lib/cli/handler.js +13 -2
- package/lib/cli/handler.js.map +1 -1
- package/lib/cli/instrumentation.js +2 -2
- package/lib/cli/instrumentation.js.map +1 -1
- package/lib/cli/setupServer.d.ts +2 -1
- package/lib/cli/setupServer.js +52 -28
- package/lib/cli/setupServer.js.map +1 -1
- package/lib/executor/executor.d.ts +7 -14
- package/lib/executor/executor.js +138 -128
- package/lib/executor/executor.js.map +1 -1
- package/lib/executor/executorManager.d.ts +58 -4
- package/lib/executor/executorManager.js +204 -50
- package/lib/executor/executorManager.js.map +1 -1
- package/lib/executor/senderManager.d.ts +2 -1
- package/lib/executor/senderManager.js +3 -0
- package/lib/executor/senderManager.js.map +1 -1
- package/lib/executor/utilityWalletMonitor.d.ts +15 -0
- package/lib/executor/utilityWalletMonitor.js +42 -0
- package/lib/executor/utilityWalletMonitor.js.map +1 -0
- package/lib/executor/utils.d.ts +1 -2
- package/lib/executor/utils.js +48 -37
- package/lib/executor/utils.js.map +1 -1
- package/lib/handlers/compressionHandler.js.map +1 -0
- package/lib/handlers/eventManager.d.ts +21 -0
- package/lib/handlers/eventManager.js +196 -0
- package/lib/handlers/eventManager.js.map +1 -0
- package/{esm/utils → lib/handlers}/gasPriceManager.d.ts +19 -5
- package/lib/{utils → handlers}/gasPriceManager.js +58 -13
- package/lib/handlers/gasPriceManager.js.map +1 -0
- package/lib/handlers/index.d.ts +4 -0
- package/lib/handlers/index.js +20 -0
- package/lib/handlers/index.js.map +1 -0
- 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 +4 -2
- package/lib/mempool/mempool.js +65 -19
- package/lib/mempool/mempool.js.map +1 -1
- package/lib/rpc/EntryPointSimulationsV07.d.ts +2 -2
- package/lib/rpc/EntryPointSimulationsV07.js +10 -7
- package/lib/rpc/EntryPointSimulationsV07.js.map +1 -1
- package/lib/rpc/gasEstimation.d.ts +3 -3
- package/lib/rpc/gasEstimation.js +22 -17
- package/lib/rpc/gasEstimation.js.map +1 -1
- package/lib/rpc/nonceQueuer.d.ts +4 -1
- package/lib/rpc/nonceQueuer.js +9 -3
- package/lib/rpc/nonceQueuer.js.map +1 -1
- package/lib/rpc/rpcHandler.d.ts +53 -3
- package/lib/rpc/rpcHandler.js +129 -251
- package/lib/rpc/rpcHandler.js.map +1 -1
- package/lib/rpc/server.d.ts +2 -1
- package/lib/rpc/server.js +6 -1
- package/lib/rpc/server.js.map +1 -1
- package/lib/rpc/validation/SafeValidator.d.ts +3 -2
- package/lib/rpc/validation/SafeValidator.js +2 -2
- package/lib/rpc/validation/SafeValidator.js.map +1 -1
- package/lib/rpc/validation/UnsafeValidator.d.ts +5 -2
- package/lib/rpc/validation/UnsafeValidator.js +33 -6
- package/lib/rpc/validation/UnsafeValidator.js.map +1 -1
- package/lib/rpc/validation/tracer.js +1 -0
- package/lib/rpc/validation/tracer.js.map +1 -1
- package/lib/types/schemas.d.ts +1029 -333
- package/lib/types/schemas.js +93 -19
- package/lib/types/schemas.js.map +1 -1
- package/lib/types/utils.d.ts +1 -1
- package/lib/types/validation.js +7 -2
- package/lib/types/validation.js.map +1 -1
- package/lib/utils/bigInt.d.ts +1 -0
- package/lib/utils/bigInt.js +6 -1
- package/lib/utils/bigInt.js.map +1 -1
- package/lib/utils/helpers.d.ts +1 -0
- package/lib/utils/helpers.js +8 -1
- package/lib/utils/helpers.js.map +1 -1
- package/lib/utils/index.d.ts +0 -3
- package/lib/utils/index.js +0 -3
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/metrics.d.ts +4 -0
- package/lib/utils/metrics.js +29 -1
- package/lib/utils/metrics.js.map +1 -1
- package/lib/utils/rpc-reply.d.ts +1 -1
- package/lib/utils/rpc-reply.js +2 -1
- package/lib/utils/rpc-reply.js.map +1 -1
- package/lib/utils/userop.d.ts +66 -6
- package/lib/utils/userop.js +208 -96
- package/lib/utils/userop.js.map +1 -1
- package/lib/utils/validation.d.ts +1 -1
- package/lib/utils/validation.js +9 -36
- package/lib/utils/validation.js.map +1 -1
- package/package.json +15 -14
- package/esm/executor/test/utils.d.ts +0 -13
- package/esm/executor/test/utils.js +0 -75
- package/esm/executor/test/utils.js.map +0 -1
- package/esm/mempool/nullMempool.d.ts +0 -15
- package/esm/mempool/nullMempool.js +0 -36
- package/esm/mempool/nullMempool.js.map +0 -1
- package/esm/types/test/validationTestErrors.d.ts +0 -3
- package/esm/types/test/validationTestErrors.js +0 -229
- package/esm/types/test/validationTestErrors.js.map +0 -1
- package/esm/utils/compressionHandler.js.map +0 -1
- package/esm/utils/gasPriceManager.js.map +0 -1
- package/esm/utils/test.d.ts +0 -17
- package/esm/utils/test.js +0 -130
- package/esm/utils/test.js.map +0 -1
- package/lib/executor/test/utils.d.ts +0 -13
- package/lib/executor/test/utils.js +0 -81
- package/lib/executor/test/utils.js.map +0 -1
- package/lib/mempool/nullMempool.d.ts +0 -15
- package/lib/mempool/nullMempool.js +0 -40
- package/lib/mempool/nullMempool.js.map +0 -1
- package/lib/types/test/validationTestErrors.d.ts +0 -3
- package/lib/types/test/validationTestErrors.js +0 -232
- package/lib/types/test/validationTestErrors.js.map +0 -1
- package/lib/utils/compressionHandler.js.map +0 -1
- package/lib/utils/gasPriceManager.js.map +0 -1
- package/lib/utils/test.d.ts +0 -17
- package/lib/utils/test.js +0 -161
- package/lib/utils/test.js.map +0 -1
- /package/esm/{utils → handlers}/compressionHandler.d.ts +0 -0
- /package/esm/{utils → handlers}/compressionHandler.js +0 -0
- /package/lib/{utils → handlers}/compressionHandler.d.ts +0 -0
- /package/lib/{utils → handlers}/compressionHandler.js +0 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { addressSchema, commaSeperatedAddressPattern, hexData32Schema } from "../../types/index.js";
|
|
1
|
+
import { addressSchema, commaSeperatedAddressPattern, hexData32Schema, bundlerRequestSchema } from "../../types/index.js";
|
|
2
2
|
import { privateKeyToAccount } from "viem/accounts";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
const logLevel = z.enum(["trace", "debug", "info", "warn", "error", "fatal"]);
|
|
5
|
+
const rpcMethodNames = bundlerRequestSchema.options.map((s) => s.shape.method._def.value);
|
|
5
6
|
export const bundlerArgsSchema = z.object({
|
|
6
7
|
entrypoints: z
|
|
7
8
|
.string()
|
|
@@ -13,10 +14,13 @@ export const bundlerArgsSchema = z.object({
|
|
|
13
14
|
return validatedAddresses;
|
|
14
15
|
}),
|
|
15
16
|
"entrypoint-simulation-contract": z.preprocess((v) => (v === "" ? undefined : v), addressSchema.optional()),
|
|
17
|
+
"no-profit-bundling": z.boolean(),
|
|
16
18
|
"safe-mode": z.boolean(),
|
|
17
19
|
"utility-private-key": hexData32Schema
|
|
18
20
|
.transform((val) => privateKeyToAccount(val))
|
|
19
21
|
.optional(),
|
|
22
|
+
"utility-wallet-monitor": z.boolean(),
|
|
23
|
+
"utility-wallet-monitor-interval": z.number(),
|
|
20
24
|
"executor-private-keys": z.union([
|
|
21
25
|
z
|
|
22
26
|
.array(hexData32Schema)
|
|
@@ -49,16 +53,38 @@ export const bundlerArgsSchema = z.object({
|
|
|
49
53
|
.transform((value) => value.split(",").map(BigInt))
|
|
50
54
|
.refine((values) => values.length === 3, "Must contain 3 comma seperated items in format: slow,standard,fast")
|
|
51
55
|
.transform(([slow, standard, fast]) => ({ slow, standard, fast })),
|
|
56
|
+
"gas-price-refresh-interval": z.number().int().min(0),
|
|
52
57
|
"mempool-max-parallel-ops": z.number().int().min(0).default(10),
|
|
53
58
|
"mempool-max-queued-ops": z.number().int().min(0).default(0),
|
|
54
59
|
"enforce-unique-senders-per-bundle": z.boolean().default(true),
|
|
55
60
|
"max-gas-per-bundle": z
|
|
56
61
|
.string()
|
|
57
62
|
.transform((val) => BigInt(val))
|
|
58
|
-
.default("5000000")
|
|
63
|
+
.default("5000000"),
|
|
64
|
+
"rpc-methods": z
|
|
65
|
+
.string()
|
|
66
|
+
.nullable()
|
|
67
|
+
.transform((val) => {
|
|
68
|
+
if (val === null)
|
|
69
|
+
return null;
|
|
70
|
+
return val.split(",");
|
|
71
|
+
})
|
|
72
|
+
.refine((values) => {
|
|
73
|
+
if (values === null)
|
|
74
|
+
return true;
|
|
75
|
+
return values.length > 0;
|
|
76
|
+
}, "Must contain at least one method if specified")
|
|
77
|
+
.refine((values) => {
|
|
78
|
+
if (values === null)
|
|
79
|
+
return true;
|
|
80
|
+
return values.every((value) => rpcMethodNames.includes(value));
|
|
81
|
+
}, `Unknown method specified, available methods: ${rpcMethodNames.join(",")}`),
|
|
82
|
+
"refilling-wallets": z.boolean().default(true),
|
|
83
|
+
"aa95-gas-multiplier": z.string().transform((val) => BigInt(val)),
|
|
84
|
+
"enable-instant-bundling-endpoint": z.boolean()
|
|
59
85
|
});
|
|
60
86
|
export const compatibilityArgsSchema = z.object({
|
|
61
|
-
"chain-type": z.enum(["default", "op-stack", "arbitrum"]),
|
|
87
|
+
"chain-type": z.enum(["default", "op-stack", "arbitrum", "hedera"]),
|
|
62
88
|
"legacy-transactions": z.boolean(),
|
|
63
89
|
"api-version": z
|
|
64
90
|
.string()
|
|
@@ -96,13 +122,14 @@ export const rpcArgsSchema = z.object({
|
|
|
96
122
|
"send-transaction-rpc-url": z.string().url().optional(),
|
|
97
123
|
"polling-interval": z.number().int().min(0),
|
|
98
124
|
"max-block-range": z.number().int().min(0).optional(),
|
|
99
|
-
"block-tag-support
|
|
125
|
+
"block-tag-support": z.boolean().optional().default(true)
|
|
100
126
|
});
|
|
101
127
|
export const bundleCopmressionArgsSchema = z.object({
|
|
102
128
|
"bundle-bulker-address": addressSchema.optional(),
|
|
103
129
|
"per-op-inflator-address": addressSchema.optional()
|
|
104
130
|
});
|
|
105
131
|
export const logArgsSchema = z.object({
|
|
132
|
+
"redis-queue-endpoint": z.string().optional(),
|
|
106
133
|
json: z.boolean(),
|
|
107
134
|
"network-name": z.string(),
|
|
108
135
|
"log-level": logLevel,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../cli/config/bundler.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,aAAa,EACb,4BAA4B,EAC5B,eAAe,
|
|
1
|
+
{"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../../cli/config/bundler.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,aAAa,EACb,4BAA4B,EAC5B,eAAe,EACf,oBAAoB,EACvB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAgB,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACjE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAE7E,MAAM,cAAc,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CACV,CAAA;AAE1B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,WAAW,EAAE,CAAC;SACT,MAAM,EAAE;SACR,KAAK,CAAC,4BAA4B,CAAC;SACnC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;QACf,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,kBAAkB,GAAG,SAAS,CAAC,GAAG,CACpC,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,yCAAyC;SAC7F,CAAA;QACD,OAAO,kBAAkB,CAAA;IAC7B,CAAC,CAAC;IACN,gCAAgC,EAAE,CAAC,CAAC,UAAU,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EACjC,aAAa,CAAC,QAAQ,EAAE,CAC3B;IACD,oBAAoB,EAAE,CAAC,CAAC,OAAO,EAAE;IACjC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,qBAAqB,EAAE,eAAe;SACjC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAmB,CAAC;SAC9D,QAAQ,EAAE;IACf,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE;IACrC,iCAAiC,EAAE,CAAC,CAAC,MAAM,EAAE;IAC7C,uBAAuB,EAAE,CAAC,CAAC,KAAK,CAAC;QAC7B,CAAC;aACI,KAAK,CAAC,eAAe,CAAC;aACtB,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAChB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAmB,CAAC,CAChE;QACL,CAAC;aACI,MAAM,EAAE;aACR,KAAK,CAAC,oDAAoD,CAAC;aAC3D,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CACf,GAAG;aACE,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CACA,CAAC,GAAG,EAAE,EAAE,CACJ,mBAAmB,CAAC,GAAU,CAAmB,CACxD,CACR;KACR,CAAC;IACF,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnD,sBAAsB,EAAE,CAAC;SACpB,MAAM,EAAE;SACR,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B,QAAQ,EAAE;IACf,0BAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEnD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,0BAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEnD,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1C,gBAAgB,EAAE,CAAC;SACd,MAAM,EAAE;SACR,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B,OAAO,CAAC,KAAK,CAAC;IACnB,yBAAyB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,uBAAuB,EAAE,CAAC;SACrB,MAAM,EAAE;SACR,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAClD,MAAM,CACH,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAC/B,oEAAoE,CACvE;SACA,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,4BAA4B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAErD,0BAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/D,wBAAwB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,mCAAmC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9D,oBAAoB,EAAE,CAAC;SAClB,MAAM,EAAE;SACR,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B,OAAO,CAAC,SAAS,CAAC;IACvB,aAAa,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,GAAkB,EAAE,EAAE;QAC9B,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAE7B,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACzB,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAEhC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;IAC5B,CAAC,EAAE,+CAA+C,CAAC;SAClD,MAAM,CACH,CAAC,MAAM,EAAE,EAAE;QACP,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAEhC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAa,EAAE,EAAE,CAClC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CACjC,CAAA;IACL,CAAC,EACD,gDAAgD,cAAc,CAAC,IAAI,CAC/D,GAAG,CACN,EAAE,CACN;IACL,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAC9C,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,kCAAkC,EAAE,CAAC,CAAC,OAAO,EAAE;CAClD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IACnE,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE;IAClC,aAAa,EAAE,CAAC;SACX,MAAM,EAAE;SACR,KAAK,CAAC,uBAAuB,CAAC;SAC9B,QAAQ,EAAE;SACV,OAAO,CAAC,OAAO,CAAC;SAChB,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAiB,CAAC;IACvD,qBAAqB,EAAE,CAAC;SACnB,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;SAClB,QAAQ,EAAE;SACV,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAiB,CAAC;IAC1C,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC/B,6BAA6B,EAAE,CAAC,CAAC,OAAO,EAAE;IAC1C,yCAAyC,EAAE,CAAC,CAAC,OAAO,EAAE;IACtD,gCAAgC,EAAE,CAAC;SAC9B,MAAM,EAAE;SACR,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpC,gCAAgC,EAAE,CAAC;SAC9B,MAAM,EAAE;SACR,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B,QAAQ,EAAE;CAClB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC3C,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACrC,4BAA4B,EAAE,CAAC;SAC1B,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,IAAI,CAAC;SACT,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO;CACpC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC3B,0BAA0B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACvD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CAC5D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,uBAAuB,EAAE,aAAa,CAAC,QAAQ,EAAE;IACjD,yBAAyB,EAAE,aAAa,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;IACjB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,WAAW,EAAE,QAAQ;IACrB,yBAAyB,EAAE,QAAQ,CAAC,QAAQ,EAAE;IAC9C,yBAAyB,EAAE,QAAQ,CAAC,QAAQ,EAAE;IAC9C,eAAe,EAAE,QAAQ,CAAC,QAAQ,EAAE;IACpC,mBAAmB,EAAE,QAAQ,CAAC,QAAQ,EAAE;IACxC,oBAAoB,EAAE,QAAQ,CAAC,QAAQ,EAAE;IACzC,8BAA8B,EAAE,QAAQ,CAAC,QAAQ,EAAE;IACnD,wBAAwB,EAAE,QAAQ,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzC,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE;IACrC,kBAAkB,EAAE,CAAC,CAAC,OAAO,EAAE;IAC/B,0CAA0C,EAAE,CAAC,CAAC,OAAO,EAAE;IACvD,6BAA6B,EAAE,CAAC,CAAC,OAAO,EAAE;IAC1C,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;CACxB,CAAC,CAAA;AAyBF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,GAAG,iBAAiB,CAAC,KAAK;IAC1B,GAAG,uBAAuB,CAAC,KAAK;IAChC,GAAG,aAAa,CAAC,KAAK;IACtB,GAAG,gBAAgB,CAAC,KAAK;IACzB,GAAG,aAAa,CAAC,KAAK;IACtB,GAAG,2BAA2B,CAAC,KAAK;IACpC,GAAG,eAAe,CAAC,KAAK;CAC3B,CAAC,CAAA"}
|
|
@@ -24,6 +24,16 @@ export const bundlerOptions = {
|
|
|
24
24
|
alias: "u",
|
|
25
25
|
require: false
|
|
26
26
|
},
|
|
27
|
+
"utility-wallet-monitor": {
|
|
28
|
+
description: "Either to enable utility wallet monitor or not",
|
|
29
|
+
type: "boolean",
|
|
30
|
+
default: true
|
|
31
|
+
},
|
|
32
|
+
"utility-wallet-monitor-interval": {
|
|
33
|
+
description: "Interval for checking utility wallet balance",
|
|
34
|
+
type: "number",
|
|
35
|
+
default: 15 * 1000 // 15 seconds
|
|
36
|
+
},
|
|
27
37
|
"max-executors": {
|
|
28
38
|
description: "Maximum number of executor accounts to use from the list of executor private keys",
|
|
29
39
|
type: "number",
|
|
@@ -75,6 +85,11 @@ export const bundlerOptions = {
|
|
|
75
85
|
require: false,
|
|
76
86
|
default: "100"
|
|
77
87
|
},
|
|
88
|
+
"no-profit-bundling": {
|
|
89
|
+
description: "Bundle tx such that all beneficiary fees are spent on gas fees",
|
|
90
|
+
type: "boolean",
|
|
91
|
+
default: false
|
|
92
|
+
},
|
|
78
93
|
"gas-price-floor-percent": {
|
|
79
94
|
description: "The minimum percentage of incoming user operation gas prices compared to the gas price used by the bundler to submit bundles",
|
|
80
95
|
type: "number",
|
|
@@ -91,7 +106,13 @@ export const bundlerOptions = {
|
|
|
91
106
|
description: "Amount to multiply the gas prices fetched using pimlico_getUserOperationGasPrice (format: slow,standard,fast)",
|
|
92
107
|
type: "string",
|
|
93
108
|
require: false,
|
|
94
|
-
default: "
|
|
109
|
+
default: "100,100,100"
|
|
110
|
+
},
|
|
111
|
+
"gas-price-refresh-interval": {
|
|
112
|
+
description: "How to often to refresh the gas prices (seconds). If 0, then gas prices are refreshed on every request",
|
|
113
|
+
type: "number",
|
|
114
|
+
require: false,
|
|
115
|
+
default: 0
|
|
95
116
|
},
|
|
96
117
|
"mempool-max-parallel-ops": {
|
|
97
118
|
description: "Maximum amount of parallel user ops to keep in the meempool (same sender, different nonce keys)",
|
|
@@ -116,13 +137,36 @@ export const bundlerOptions = {
|
|
|
116
137
|
type: "string",
|
|
117
138
|
require: false,
|
|
118
139
|
default: "5000000"
|
|
140
|
+
},
|
|
141
|
+
"rpc-methods": {
|
|
142
|
+
description: "Supported RPC methods split by commas",
|
|
143
|
+
type: "string",
|
|
144
|
+
require: false,
|
|
145
|
+
default: null
|
|
146
|
+
},
|
|
147
|
+
"refilling-wallets": {
|
|
148
|
+
description: "Enable refilling wallets",
|
|
149
|
+
type: "boolean",
|
|
150
|
+
require: false,
|
|
151
|
+
default: true
|
|
152
|
+
},
|
|
153
|
+
"aa95-gas-multiplier": {
|
|
154
|
+
description: "Amount to multiply the current gas limit by if the bundling tx fails due to AA95",
|
|
155
|
+
type: "string",
|
|
156
|
+
require: false,
|
|
157
|
+
default: "125"
|
|
158
|
+
},
|
|
159
|
+
"enable-instant-bundling-endpoint": {
|
|
160
|
+
description: "Should the bundler enable the pimlico_sendUserOperationNow endpoint",
|
|
161
|
+
type: "boolean",
|
|
162
|
+
default: false
|
|
119
163
|
}
|
|
120
164
|
};
|
|
121
165
|
export const compatibilityOptions = {
|
|
122
166
|
"chain-type": {
|
|
123
167
|
description: "Indicates weather the chain is a OP stack chain, arbitrum chain, or default EVM chain",
|
|
124
168
|
type: "string",
|
|
125
|
-
choices: ["default", "op-stack", "arbitrum"],
|
|
169
|
+
choices: ["default", "op-stack", "arbitrum", "hedera"],
|
|
126
170
|
default: "default"
|
|
127
171
|
},
|
|
128
172
|
"legacy-transactions": {
|
|
@@ -219,11 +263,11 @@ export const rpcOptions = {
|
|
|
219
263
|
type: "number",
|
|
220
264
|
require: false
|
|
221
265
|
},
|
|
222
|
-
"block-tag-support
|
|
266
|
+
"block-tag-support": {
|
|
223
267
|
description: "Disable sending block tag when sending eth_estimateGas call",
|
|
224
268
|
type: "boolean",
|
|
225
269
|
require: false,
|
|
226
|
-
default:
|
|
270
|
+
default: true
|
|
227
271
|
}
|
|
228
272
|
};
|
|
229
273
|
export const bundleCompressionOptions = {
|
|
@@ -239,6 +283,11 @@ export const bundleCompressionOptions = {
|
|
|
239
283
|
}
|
|
240
284
|
};
|
|
241
285
|
export const logOptions = {
|
|
286
|
+
"redis-queue-endpoint": {
|
|
287
|
+
description: "redis queue endpoint",
|
|
288
|
+
type: "string",
|
|
289
|
+
require: false
|
|
290
|
+
},
|
|
242
291
|
json: {
|
|
243
292
|
description: "Log in JSON format",
|
|
244
293
|
type: "boolean",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../cli/config/options.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../cli/config/options.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,11 @@ url_, config) {
|
|
|
33
33
|
}, "Received error response");
|
|
34
34
|
throw new RpcRequestError({
|
|
35
35
|
body,
|
|
36
|
-
error
|
|
36
|
+
error: {
|
|
37
|
+
...error,
|
|
38
|
+
// 24 Aug 2024, etherlink throws -32003 error code for eth_call
|
|
39
|
+
code: (method === 'eth_call' && error.code === -32003) ? 3 : error.code,
|
|
40
|
+
},
|
|
37
41
|
url: url
|
|
38
42
|
});
|
|
39
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customTransport.js","sourceRoot":"","sources":["../../cli/customTransport.ts"],"names":[],"mappings":"AACA,OAAO,EAGH,eAAe,EACf,gBAAgB,EAChB,eAAe,EAClB,MAAM,MAAM,CAAA;AACb,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAShC,MAAM,UAAU,eAAe;AAC3B,uEAAuE;AACvE,IAAY,EACZ,MAAgD;IAEhD,MAAM,EACF,YAAY,EACZ,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,eAAe,EACtB,UAAU,EACV,MAAM,EACT,GAAG,MAAM,CAAA;IAEV,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,WAAW,CAAA;QACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAA;QACpD,MAAM,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,MAAM,IAAI,gBAAgB,EAAE,CAAA;QAChC,CAAC;QAED,OAAO,eAAe,CAClB;YACI,GAAG;YACH,IAAI;YACJ,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC5B,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;gBAC/B,MAAM,EAAE,GAAG,KAAK,EAAE,IAAgB,EAAE,EAAE;oBAClC,OAAO;wBACH,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE;4BAChB,IAAI;4BACJ,YAAY;4BACZ,OAAO;yBACV,CAAC;qBACL,CAAA;gBACL,CAAC,CAAA;gBAED,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC1C,IAAI,KAAK,EAAE,CAAC;oBACR,MAAM,CAAC,KAAK,CACR;wBACI,KAAK;wBACL,IAAI;qBACP,EACD,yBAAyB,CAC5B,CAAA;oBACD,MAAM,IAAI,eAAe,CAAC;wBACtB,IAAI;wBACJ,KAAK;
|
|
1
|
+
{"version":3,"file":"customTransport.js","sourceRoot":"","sources":["../../cli/customTransport.ts"],"names":[],"mappings":"AACA,OAAO,EAGH,eAAe,EACf,gBAAgB,EAChB,eAAe,EAClB,MAAM,MAAM,CAAA;AACb,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAShC,MAAM,UAAU,eAAe;AAC3B,uEAAuE;AACvE,IAAY,EACZ,MAAgD;IAEhD,MAAM,EACF,YAAY,EACZ,GAAG,GAAG,MAAM,EACZ,IAAI,GAAG,eAAe,EACtB,UAAU,EACV,MAAM,EACT,GAAG,MAAM,CAAA;IAEV,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC7D,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,WAAW,CAAA;QACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAA;QACpD,MAAM,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,MAAM,IAAI,gBAAgB,EAAE,CAAA;QAChC,CAAC;QAED,OAAO,eAAe,CAClB;YACI,GAAG;YACH,IAAI;YACJ,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC5B,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;gBAC/B,MAAM,EAAE,GAAG,KAAK,EAAE,IAAgB,EAAE,EAAE;oBAClC,OAAO;wBACH,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE;4BAChB,IAAI;4BACJ,YAAY;4BACZ,OAAO;yBACV,CAAC;qBACL,CAAA;gBACL,CAAC,CAAA;gBAED,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC1C,IAAI,KAAK,EAAE,CAAC;oBACR,MAAM,CAAC,KAAK,CACR;wBACI,KAAK;wBACL,IAAI;qBACP,EACD,yBAAyB,CAC5B,CAAA;oBACD,MAAM,IAAI,eAAe,CAAC;wBACtB,IAAI;wBACJ,KAAK,EAAE;4BACH,GAAG,KAAK;4BACR,+DAA+D;4BAC/D,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;yBAC1E;wBACD,GAAG,EAAE,GAAG;qBACX,CAAC,CAAA;gBACN,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAA;gBAClD,OAAO,MAAM,CAAA;YACjB,CAAC;YACD,UAAU;YACV,UAAU;YACV,OAAO;YACP,IAAI,EAAE,MAAM;SACf,EACD;YACI,YAAY;YACZ,GAAG;SACN,CACJ,CAAA;IACL,CAAC,CAAA;AACL,CAAC"}
|
package/esm/cli/handler.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { SenderManager } from "../executor/index.js";
|
|
2
|
-
import {
|
|
2
|
+
import { createMetrics, initDebugLogger, initProductionLogger } from "../utils/index.js";
|
|
3
3
|
import { Registry } from "prom-client";
|
|
4
|
-
import { createPublicClient, createWalletClient, http } from "viem";
|
|
4
|
+
import { createPublicClient, createWalletClient, http, formatEther } from "viem";
|
|
5
5
|
import { fromZodError } from "zod-validation-error";
|
|
6
6
|
import { optionArgsSchema } from "./config/index.js";
|
|
7
7
|
import { customTransport } from "./customTransport.js";
|
|
8
8
|
import { setupServer } from "./setupServer.js";
|
|
9
9
|
import { PimlicoEntryPointSimulationsDeployBytecode } from "../types/contracts/index.js";
|
|
10
|
+
import { UtilityWalletMonitor } from "../executor/utilityWalletMonitor.js";
|
|
11
|
+
import { GasPriceManager } from "../handlers/index.js";
|
|
10
12
|
const parseArgs = (args) => {
|
|
11
13
|
// validate every arg, make type safe so if i add a new arg i have to validate it
|
|
12
14
|
const parsing = optionArgsSchema.safeParse(args);
|
|
@@ -105,7 +107,8 @@ export async function bundlerHandler(args) {
|
|
|
105
107
|
const gasPriceManager = new GasPriceManager(chain, client, parsedArgs["legacy-transactions"], logger.child({ module: "gas_price_manager" }, {
|
|
106
108
|
level: parsedArgs["public-client-log-level"] ||
|
|
107
109
|
parsedArgs["log-level"]
|
|
108
|
-
}), parsedArgs["gas-price-bump"], parsedArgs["gas-price-expiry"]);
|
|
110
|
+
}), parsedArgs["gas-price-bump"], parsedArgs["gas-price-expiry"], parsedArgs["gas-price-refresh-interval"], parsedArgs["chain-type"]);
|
|
111
|
+
await gasPriceManager.init();
|
|
109
112
|
const registry = new Registry();
|
|
110
113
|
registry.setDefaultLabels({
|
|
111
114
|
network: chain.name,
|
|
@@ -125,6 +128,14 @@ export async function bundlerHandler(args) {
|
|
|
125
128
|
const senderManager = new SenderManager(parsedArgs["executor-private-keys"], parsedArgs["utility-private-key"], logger.child({ module: "executor" }, {
|
|
126
129
|
level: parsedArgs["executor-log-level"] || parsedArgs["log-level"]
|
|
127
130
|
}), metrics, parsedArgs["legacy-transactions"], gasPriceManager, parsedArgs["max-executors"]);
|
|
131
|
+
const utilityWalletAddress = parsedArgs["utility-private-key"]?.address;
|
|
132
|
+
if (utilityWalletAddress && parsedArgs["utility-wallet-monitor"]) {
|
|
133
|
+
const utilityWalletMonitor = new UtilityWalletMonitor(client, parsedArgs["utility-wallet-monitor-interval"], utilityWalletAddress, metrics, logger.child({ module: "utility_wallet_monitor" }, {
|
|
134
|
+
level: parsedArgs["log-level"]
|
|
135
|
+
}));
|
|
136
|
+
await utilityWalletMonitor.start();
|
|
137
|
+
}
|
|
138
|
+
metrics.executorWalletsMinBalance.set(Number.parseFloat(formatEther(parsedArgs["min-executor-balance"] || 0n)));
|
|
128
139
|
await setupServer({
|
|
129
140
|
client,
|
|
130
141
|
walletClient,
|
package/esm/cli/handler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../cli/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EACH,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../cli/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { PinoInstrumentation } from "@opentelemetry/instrumentation-pino";
|
|
|
6
6
|
import { NodeSDK } from "@opentelemetry/sdk-node";
|
|
7
7
|
import { ParentBasedSampler, SamplingDecision } from "@opentelemetry/sdk-trace-base";
|
|
8
8
|
import { SemanticAttributes } from "@opentelemetry/semantic-conventions";
|
|
9
|
-
import {
|
|
9
|
+
import { UndiciInstrumentation } from "@opentelemetry/instrumentation-undici";
|
|
10
10
|
class CustomSampler {
|
|
11
11
|
shouldSample(_context, _traceId, _spanName, spanKind, attributes) {
|
|
12
12
|
const ignoredRoutes = ["/metrics", "/health"];
|
|
@@ -29,7 +29,7 @@ const sdk = new NodeSDK({
|
|
|
29
29
|
new HttpInstrumentation({
|
|
30
30
|
requireParentforOutgoingSpans: true
|
|
31
31
|
}),
|
|
32
|
-
new
|
|
32
|
+
new UndiciInstrumentation(),
|
|
33
33
|
new FastifyInstrumentation(),
|
|
34
34
|
new PinoInstrumentation()
|
|
35
35
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../cli/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACjD,OAAO,EACH,kBAAkB,EAElB,gBAAgB,EACnB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACxE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"instrumentation.js","sourceRoot":"","sources":["../../cli/instrumentation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACjD,OAAO,EACH,kBAAkB,EAElB,gBAAgB,EACnB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAE7E,MAAM,aAAa;IACf,YAAY,CACR,QAAiB,EACjB,QAAgB,EAChB,SAAiB,EACjB,QAAkB,EAClB,UAAsB;QAEtB,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAE7C,MAAM,UAAU,GAAG,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAA;QAE7D,IACI,QAAQ,KAAK,QAAQ,CAAC,MAAM;YAC5B,UAAU;YACV,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,EAC/C,CAAC;YACC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,CAAC,UAAU,EAAE,CAAA;QACpD,CAAC;QACD,WAAW;QACX,OAAO,EAAE,QAAQ,EAAE,gBAAgB,CAAC,kBAAkB,EAAE,CAAA;IAC5D,CAAC;IACD,QAAQ;QACJ,OAAO,eAAe,CAAA;IAC1B,CAAC;CACJ;AAED,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC;IACpB,aAAa,EAAE,IAAI,iBAAiB,EAAE;IACtC,gBAAgB,EAAE;QACd,IAAI,mBAAmB,CAAC;YACpB,6BAA6B,EAAE,IAAI;SACtC,CAAC;QACF,IAAI,qBAAqB,EAAE;QAC3B,IAAI,sBAAsB,EAAE;QAC5B,IAAI,mBAAmB,EAAE;KAC5B;IACD,OAAO,EAAE,IAAI,kBAAkB,CAAC,EAAE,IAAI,EAAE,IAAI,aAAa,EAAE,EAAE,CAAC;CACjE,CAAC,CAAA;AAEF,GAAG,CAAC,KAAK,EAAE,CAAA"}
|
package/esm/cli/setupServer.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { SenderManager } from "../executor/index.js";
|
|
2
|
-
import type
|
|
2
|
+
import { type GasPriceManager } from "../handlers/index.js";
|
|
3
|
+
import type { Logger, Metrics } from "../utils/index.js";
|
|
3
4
|
import type { Registry } from "prom-client";
|
|
4
5
|
import type { Chain, PublicClient, Transport, WalletClient } from "viem";
|
|
5
6
|
import type { IOptions } from "./config/index.js";
|
package/esm/cli/setupServer.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Executor, ExecutorManager } from "../executor/index.js";
|
|
2
|
+
import { CompressionHandler, EventManager } from "../handlers/index.js";
|
|
2
3
|
import { MemoryMempool, Monitor, NullReputationManager, ReputationManager } from "../mempool/index.js";
|
|
3
4
|
import { NonceQueuer, RpcHandler, SafeValidator, Server, UnsafeValidator } from "../rpc/index.js";
|
|
4
|
-
import { CompressionHandler } from "../utils/index.js";
|
|
5
5
|
const getReputationManager = ({ client, parsedArgs, logger }) => {
|
|
6
6
|
if (parsedArgs["safe-mode"]) {
|
|
7
7
|
return new ReputationManager(client, parsedArgs.entrypoints, BigInt(parsedArgs["min-entity-stake"]), BigInt(parsedArgs["min-entity-unstake-delay"]), logger.child({ module: "reputation_manager" }, {
|
|
@@ -12,20 +12,25 @@ const getReputationManager = ({ client, parsedArgs, logger }) => {
|
|
|
12
12
|
return new NullReputationManager();
|
|
13
13
|
};
|
|
14
14
|
const getValidator = ({ client, parsedArgs, logger, senderManager, metrics, gasPriceManager }) => {
|
|
15
|
+
const utilityWalletAddress = parsedArgs["utility-private-key"]?.address ||
|
|
16
|
+
"0x4337000c2828F5260d8921fD25829F606b9E8680";
|
|
15
17
|
if (parsedArgs["safe-mode"]) {
|
|
16
18
|
return new SafeValidator(client, senderManager, logger.child({ module: "rpc" }, {
|
|
17
19
|
level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"]
|
|
18
|
-
}), metrics, gasPriceManager, parsedArgs["chain-type"], parsedArgs["entrypoint-simulation-contract"], parsedArgs["fixed-gas-limit-for-estimation"], parsedArgs.tenderly, parsedArgs["balance-override"]);
|
|
20
|
+
}), metrics, gasPriceManager, parsedArgs["chain-type"], parsedArgs["block-tag-support"], utilityWalletAddress, parsedArgs["entrypoint-simulation-contract"], parsedArgs["fixed-gas-limit-for-estimation"], parsedArgs.tenderly, parsedArgs["balance-override"]);
|
|
19
21
|
}
|
|
20
|
-
return new UnsafeValidator(client, logger.child({ module: "rpc" }, { level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"] }), metrics, gasPriceManager, parsedArgs["chain-type"], parsedArgs["entrypoint-simulation-contract"], parsedArgs["fixed-gas-limit-for-estimation"], parsedArgs.tenderly, parsedArgs["balance-override"], parsedArgs["expiration-check"]);
|
|
22
|
+
return new UnsafeValidator(client, logger.child({ module: "rpc" }, { level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"] }), metrics, gasPriceManager, parsedArgs["chain-type"], parsedArgs["block-tag-support"], utilityWalletAddress, parsedArgs["entrypoint-simulation-contract"], parsedArgs["fixed-gas-limit-for-estimation"], parsedArgs.tenderly, parsedArgs["balance-override"], parsedArgs["expiration-check"]);
|
|
21
23
|
};
|
|
22
24
|
const getMonitor = () => {
|
|
23
25
|
return new Monitor();
|
|
24
26
|
};
|
|
25
|
-
const getMempool = ({ monitor, reputationManager, validator, client, parsedArgs, logger, metrics }) => {
|
|
27
|
+
const getMempool = ({ monitor, reputationManager, validator, client, parsedArgs, logger, metrics, eventManager }) => {
|
|
26
28
|
return new MemoryMempool(monitor, reputationManager, validator, client, parsedArgs["safe-mode"], logger.child({ module: "mempool" }, {
|
|
27
29
|
level: parsedArgs["mempool-log-level"] || parsedArgs["log-level"]
|
|
28
|
-
}), metrics, parsedArgs["mempool-max-parallel-ops"], parsedArgs["mempool-max-queued-ops"], parsedArgs["enforce-unique-senders-per-bundle"]);
|
|
30
|
+
}), metrics, parsedArgs["mempool-max-parallel-ops"], parsedArgs["mempool-max-queued-ops"], parsedArgs["enforce-unique-senders-per-bundle"], eventManager);
|
|
31
|
+
};
|
|
32
|
+
const getEventManager = ({ endpoint, chainId, logger, metrics }) => {
|
|
33
|
+
return new EventManager(endpoint, chainId, logger, metrics);
|
|
29
34
|
};
|
|
30
35
|
const getCompressionHandler = async ({ client, parsedArgs }) => {
|
|
31
36
|
let compressionHandler = null;
|
|
@@ -35,27 +40,27 @@ const getCompressionHandler = async ({ client, parsedArgs }) => {
|
|
|
35
40
|
}
|
|
36
41
|
return compressionHandler;
|
|
37
42
|
};
|
|
38
|
-
const getExecutor = ({ client, walletClient, senderManager, reputationManager, parsedArgs, logger, metrics, compressionHandler, gasPriceManager }) => {
|
|
43
|
+
const getExecutor = ({ client, walletClient, senderManager, reputationManager, parsedArgs, logger, metrics, compressionHandler, gasPriceManager, eventManager }) => {
|
|
39
44
|
return new Executor(client, walletClient, senderManager, reputationManager, parsedArgs.entrypoints, logger.child({ module: "executor" }, {
|
|
40
45
|
level: parsedArgs["executor-log-level"] || parsedArgs["log-level"]
|
|
41
|
-
}), metrics, compressionHandler, gasPriceManager, !parsedArgs.tenderly, parsedArgs["legacy-transactions"], parsedArgs["fixed-gas-limit-for-estimation"], parsedArgs["block-tag-support
|
|
46
|
+
}), metrics, compressionHandler, gasPriceManager, eventManager, !parsedArgs.tenderly, parsedArgs["legacy-transactions"], parsedArgs["fixed-gas-limit-for-estimation"], parsedArgs["block-tag-support"], parsedArgs["local-gas-limit-calculation"], parsedArgs["no-profit-bundling"]);
|
|
42
47
|
};
|
|
43
|
-
const getExecutorManager = ({ executor, mempool, monitor, reputationManager, client, parsedArgs, logger, metrics, gasPriceManager }) => {
|
|
48
|
+
const getExecutorManager = ({ executor, mempool, monitor, reputationManager, client, parsedArgs, logger, metrics, gasPriceManager, eventManager }) => {
|
|
44
49
|
return new ExecutorManager(executor, parsedArgs.entrypoints, mempool, monitor, reputationManager, client, parsedArgs["polling-interval"], logger.child({ module: "executor" }, {
|
|
45
50
|
level: parsedArgs["executor-log-level"] || parsedArgs["log-level"]
|
|
46
|
-
}), metrics, parsedArgs["bundle-mode"], parsedArgs["max-bundle-wait"], parsedArgs["max-gas-per-bundle"], gasPriceManager);
|
|
51
|
+
}), metrics, parsedArgs["bundle-mode"], parsedArgs["max-bundle-wait"], parsedArgs["max-gas-per-bundle"], gasPriceManager, eventManager, parsedArgs["aa95-gas-multiplier"], parsedArgs["max-block-range"]);
|
|
47
52
|
};
|
|
48
|
-
const getNonceQueuer = ({ mempool, client, parsedArgs, logger }) => {
|
|
53
|
+
const getNonceQueuer = ({ mempool, client, parsedArgs, logger, eventManager }) => {
|
|
49
54
|
return new NonceQueuer(mempool, client, logger.child({ module: "nonce_queuer" }, {
|
|
50
55
|
level: parsedArgs["nonce-queuer-log-level"] ||
|
|
51
56
|
parsedArgs["log-level"]
|
|
52
|
-
}));
|
|
57
|
+
}), parsedArgs["block-tag-support"], eventManager);
|
|
53
58
|
};
|
|
54
|
-
const getRpcHandler = ({ client, validator, mempool, executor, monitor, nonceQueuer, executorManager, reputationManager, parsedArgs, logger, metrics, compressionHandler, gasPriceManager }) => {
|
|
55
|
-
return new RpcHandler(parsedArgs.entrypoints, client, validator, mempool, executor, monitor, nonceQueuer, executorManager, reputationManager, parsedArgs.tenderly ?? false, parsedArgs["max-block-range"], logger.child({ module: "rpc" }, { level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"] }), metrics, parsedArgs["enable-debug-endpoints"], compressionHandler, parsedArgs["legacy-transactions"], gasPriceManager, parsedArgs["gas-price-multipliers"], parsedArgs["chain-type"], parsedArgs["paymaster-gas-limit-multiplier"], parsedArgs["dangerous-skip-user-operation-validation"]);
|
|
59
|
+
const getRpcHandler = ({ client, validator, mempool, executor, monitor, nonceQueuer, executorManager, reputationManager, parsedArgs, logger, metrics, compressionHandler, gasPriceManager, eventManager }) => {
|
|
60
|
+
return new RpcHandler(parsedArgs.entrypoints, client, validator, mempool, executor, monitor, nonceQueuer, executorManager, reputationManager, parsedArgs.tenderly ?? false, parsedArgs["max-block-range"], logger.child({ module: "rpc" }, { level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"] }), metrics, parsedArgs["enable-debug-endpoints"], compressionHandler, parsedArgs["legacy-transactions"], gasPriceManager, parsedArgs["gas-price-multipliers"], parsedArgs["chain-type"], parsedArgs["paymaster-gas-limit-multiplier"], eventManager, parsedArgs["enable-instant-bundling-endpoint"], parsedArgs["dangerous-skip-user-operation-validation"]);
|
|
56
61
|
};
|
|
57
62
|
const getServer = ({ rpcEndpoint, parsedArgs, logger, registry, metrics }) => {
|
|
58
|
-
return new Server(rpcEndpoint, parsedArgs["api-version"], parsedArgs["default-api-version"], parsedArgs.port, parsedArgs.timeout, parsedArgs["websocket-max-payload-size"], parsedArgs.websocket, logger.child({ module: "rpc" }, { level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"] }), registry, metrics);
|
|
63
|
+
return new Server(rpcEndpoint, parsedArgs["api-version"], parsedArgs["default-api-version"], parsedArgs.port, parsedArgs.timeout, parsedArgs["websocket-max-payload-size"], parsedArgs.websocket, logger.child({ module: "rpc" }, { level: parsedArgs["rpc-log-level"] || parsedArgs["log-level"] }), registry, metrics, parsedArgs["rpc-methods"]);
|
|
59
64
|
};
|
|
60
65
|
export const setupServer = async ({ client, walletClient, parsedArgs, logger, rootLogger, registry, metrics, senderManager, gasPriceManager }) => {
|
|
61
66
|
const validator = getValidator({
|
|
@@ -64,17 +69,30 @@ export const setupServer = async ({ client, walletClient, parsedArgs, logger, ro
|
|
|
64
69
|
parsedArgs,
|
|
65
70
|
senderManager,
|
|
66
71
|
metrics,
|
|
67
|
-
gasPriceManager
|
|
72
|
+
gasPriceManager,
|
|
73
|
+
walletClient
|
|
68
74
|
});
|
|
69
75
|
const reputationManager = getReputationManager({
|
|
70
76
|
client,
|
|
71
77
|
parsedArgs,
|
|
72
78
|
logger
|
|
73
79
|
});
|
|
74
|
-
await
|
|
75
|
-
|
|
80
|
+
const compressionHandler = await getCompressionHandler({
|
|
81
|
+
client,
|
|
82
|
+
parsedArgs
|
|
83
|
+
});
|
|
84
|
+
const eventManager = getEventManager({
|
|
85
|
+
endpoint: parsedArgs["redis-queue-endpoint"],
|
|
86
|
+
chainId: client.chain.id,
|
|
87
|
+
logger,
|
|
88
|
+
metrics
|
|
89
|
+
});
|
|
90
|
+
if (parsedArgs["refilling-wallets"]) {
|
|
76
91
|
await senderManager.validateAndRefillWallets(client, walletClient, parsedArgs["min-executor-balance"]);
|
|
77
|
-
|
|
92
|
+
setInterval(async () => {
|
|
93
|
+
await senderManager.validateAndRefillWallets(client, walletClient, parsedArgs["min-executor-balance"]);
|
|
94
|
+
}, parsedArgs["executor-refill-interval"] * 1000);
|
|
95
|
+
}
|
|
78
96
|
const monitor = getMonitor();
|
|
79
97
|
const mempool = getMempool({
|
|
80
98
|
monitor,
|
|
@@ -83,11 +101,8 @@ export const setupServer = async ({ client, walletClient, parsedArgs, logger, ro
|
|
|
83
101
|
client,
|
|
84
102
|
parsedArgs,
|
|
85
103
|
logger,
|
|
86
|
-
metrics
|
|
87
|
-
|
|
88
|
-
const compressionHandler = await getCompressionHandler({
|
|
89
|
-
client,
|
|
90
|
-
parsedArgs
|
|
104
|
+
metrics,
|
|
105
|
+
eventManager
|
|
91
106
|
});
|
|
92
107
|
const executor = getExecutor({
|
|
93
108
|
client,
|
|
@@ -98,7 +113,8 @@ export const setupServer = async ({ client, walletClient, parsedArgs, logger, ro
|
|
|
98
113
|
logger,
|
|
99
114
|
metrics,
|
|
100
115
|
compressionHandler,
|
|
101
|
-
gasPriceManager
|
|
116
|
+
gasPriceManager,
|
|
117
|
+
eventManager
|
|
102
118
|
});
|
|
103
119
|
const executorManager = getExecutorManager({
|
|
104
120
|
executor,
|
|
@@ -109,9 +125,16 @@ export const setupServer = async ({ client, walletClient, parsedArgs, logger, ro
|
|
|
109
125
|
parsedArgs,
|
|
110
126
|
logger,
|
|
111
127
|
metrics,
|
|
112
|
-
gasPriceManager
|
|
128
|
+
gasPriceManager,
|
|
129
|
+
eventManager
|
|
130
|
+
});
|
|
131
|
+
const nonceQueuer = getNonceQueuer({
|
|
132
|
+
mempool,
|
|
133
|
+
client,
|
|
134
|
+
parsedArgs,
|
|
135
|
+
logger,
|
|
136
|
+
eventManager
|
|
113
137
|
});
|
|
114
|
-
const nonceQueuer = getNonceQueuer({ mempool, client, parsedArgs, logger });
|
|
115
138
|
const rpcEndpoint = getRpcHandler({
|
|
116
139
|
client,
|
|
117
140
|
validator,
|
|
@@ -125,7 +148,8 @@ export const setupServer = async ({ client, walletClient, parsedArgs, logger, ro
|
|
|
125
148
|
logger,
|
|
126
149
|
metrics,
|
|
127
150
|
compressionHandler,
|
|
128
|
-
gasPriceManager
|
|
151
|
+
gasPriceManager,
|
|
152
|
+
eventManager
|
|
129
153
|
});
|
|
130
154
|
if (parsedArgs["flush-stuck-transactions-during-startup"]) {
|
|
131
155
|
executor.flushStuckTransactions();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupServer.js","sourceRoot":"","sources":["../../cli/setupServer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EACH,aAAa,EACb,OAAO,EACP,qBAAqB,EACrB,iBAAiB,EAEpB,MAAM,eAAe,CAAA;AACtB,OAAO,EACH,WAAW,EACX,UAAU,EACV,aAAa,EACb,MAAM,EACN,eAAe,EAClB,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"setupServer.js","sourceRoot":"","sources":["../../cli/setupServer.ts"],"names":[],"mappings":"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"}
|