@pimlico/alto 0.0.0-prool.20240609T211112 → 0.0.0-prool.20240609T212210
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 +59 -28
- package/esm/cli/alto.js.map +1 -1
- package/esm/cli/config/bundler.d.ts +38 -38
- package/esm/cli/config/bundler.js +77 -74
- package/esm/cli/config/bundler.js.map +1 -1
- package/esm/cli/config/index.js +18 -2
- package/esm/cli/config/index.js.map +1 -1
- package/esm/cli/config/options.js +13 -10
- package/esm/cli/config/options.js.map +1 -1
- package/esm/cli/customTransport.js +11 -7
- package/esm/cli/customTransport.js.map +1 -1
- package/esm/cli/handler.js +28 -24
- package/esm/cli/handler.js.map +1 -1
- package/esm/cli/index.js +19 -3
- package/esm/cli/index.js.map +1 -1
- package/esm/cli/instrumentation.js +22 -20
- package/esm/cli/instrumentation.js.map +1 -1
- package/esm/cli/setupServer.js +21 -17
- package/esm/cli/setupServer.js.map +1 -1
- package/esm/cli/util.js +5 -1
- package/esm/cli/util.js.map +1 -1
- package/esm/executor/executor.js +84 -56
- package/esm/executor/executor.js.map +1 -1
- package/esm/executor/executorManager.js +11 -7
- package/esm/executor/executorManager.js.map +1 -1
- package/esm/executor/index.js +20 -4
- package/esm/executor/index.js.map +1 -1
- package/esm/executor/senderManager.js +12 -8
- package/esm/executor/senderManager.js.map +1 -1
- package/esm/executor/test/utils.js +28 -22
- package/esm/executor/test/utils.js.map +1 -1
- package/esm/executor/utils.js +61 -31
- package/esm/executor/utils.js.map +1 -1
- package/esm/mempool/index.js +20 -4
- package/esm/mempool/index.js.map +1 -1
- package/esm/mempool/mempool.js +59 -55
- package/esm/mempool/mempool.js.map +1 -1
- package/esm/mempool/monitoring.js +5 -1
- package/esm/mempool/monitoring.js.map +1 -1
- package/esm/mempool/nullMempool.js +5 -1
- package/esm/mempool/nullMempool.js.map +1 -1
- package/esm/mempool/reputationManager.js +49 -44
- package/esm/mempool/reputationManager.js.map +1 -1
- package/esm/mempool/store.js +5 -1
- package/esm/mempool/store.js.map +1 -1
- package/esm/rpc/EntryPointSimulationsV07.js +50 -44
- package/esm/rpc/EntryPointSimulationsV07.js.map +1 -1
- package/esm/rpc/ExecuteSimulator.js +5 -2
- package/esm/rpc/ExecuteSimulator.js.map +1 -1
- package/esm/rpc/gasEstimation.js +69 -62
- package/esm/rpc/gasEstimation.js.map +1 -1
- package/esm/rpc/index.js +20 -4
- package/esm/rpc/index.js.map +1 -1
- package/esm/rpc/nonceQueuer.js +20 -16
- package/esm/rpc/nonceQueuer.js.map +1 -1
- package/esm/rpc/rpcHandler.js +103 -76
- package/esm/rpc/rpcHandler.js.map +1 -1
- package/esm/rpc/server.js +58 -28
- package/esm/rpc/server.js.map +1 -1
- package/esm/rpc/validation/BundlerCollectorTracerV06.js +5 -1
- package/esm/rpc/validation/BundlerCollectorTracerV06.js.map +1 -1
- package/esm/rpc/validation/BundlerCollectorTracerV07.js +5 -1
- package/esm/rpc/validation/BundlerCollectorTracerV07.js.map +1 -1
- package/esm/rpc/validation/SafeValidator.js +69 -65
- package/esm/rpc/validation/SafeValidator.js.map +1 -1
- package/esm/rpc/validation/TracerResultParserV06.js +30 -26
- package/esm/rpc/validation/TracerResultParserV06.js.map +1 -1
- package/esm/rpc/validation/TracerResultParserV07.js +36 -29
- package/esm/rpc/validation/TracerResultParserV07.js.map +1 -1
- package/esm/rpc/validation/UnsafeValidator.js +73 -46
- package/esm/rpc/validation/UnsafeValidator.js.map +1 -1
- package/esm/rpc/validation/index.js +18 -2
- package/esm/rpc/validation/index.js.map +1 -1
- package/esm/rpc/validation/tracer.d.ts +1 -1
- package/esm/rpc/validation/tracer.js +37 -7
- package/esm/rpc/validation/tracer.js.map +1 -1
- package/esm/types/contracts/BundleBulker.js +4 -1
- package/esm/types/contracts/BundleBulker.js.map +1 -1
- package/esm/types/contracts/CallEngine.js +4 -1
- package/esm/types/contracts/CallEngine.js.map +1 -1
- package/esm/types/contracts/CodeHashGetter.js +5 -2
- package/esm/types/contracts/CodeHashGetter.js.map +1 -1
- package/esm/types/contracts/EntryPoint.js +7 -4
- package/esm/types/contracts/EntryPoint.js.map +1 -1
- package/esm/types/contracts/EntryPointSimulations.js +6 -3
- package/esm/types/contracts/EntryPointSimulations.js.map +1 -1
- package/esm/types/contracts/IOpInflator.js +4 -1
- package/esm/types/contracts/IOpInflator.js.map +1 -1
- package/esm/types/contracts/IPaymaster.js +4 -1
- package/esm/types/contracts/IPaymaster.js.map +1 -1
- package/esm/types/contracts/Inflator.js +4 -1
- package/esm/types/contracts/Inflator.js.map +1 -1
- package/esm/types/contracts/PerOpInflator.js +4 -1
- package/esm/types/contracts/PerOpInflator.js.map +1 -1
- package/esm/types/contracts/PimlicoEntryPointSimulations.js +5 -2
- package/esm/types/contracts/PimlicoEntryPointSimulations.js.map +1 -1
- package/esm/types/contracts/SenderCreator.js +5 -2
- package/esm/types/contracts/SenderCreator.js.map +1 -1
- package/esm/types/contracts/SimpleAccountFactory.js +5 -2
- package/esm/types/contracts/SimpleAccountFactory.js.map +1 -1
- package/esm/types/contracts/TestOpcodesAccount.js +5 -2
- package/esm/types/contracts/TestOpcodesAccount.js.map +1 -1
- package/esm/types/contracts/TestOpcodesAccountFactory.js +5 -2
- package/esm/types/contracts/TestOpcodesAccountFactory.js.map +1 -1
- package/esm/types/contracts/TestStorageAccount.js +5 -2
- package/esm/types/contracts/TestStorageAccount.js.map +1 -1
- package/esm/types/contracts/index.js +32 -16
- package/esm/types/contracts/index.js.map +1 -1
- package/esm/types/gasPrice.js +17 -14
- package/esm/types/gasPrice.js.map +1 -1
- package/esm/types/index.js +26 -10
- package/esm/types/index.js.map +1 -1
- package/esm/types/interfaces.js +2 -1
- package/esm/types/mempool.js +10 -5
- package/esm/types/mempool.js.map +1 -1
- package/esm/types/schemas.d.ts +82 -82
- package/esm/types/schemas.js +284 -254
- package/esm/types/schemas.js.map +1 -1
- package/esm/types/test/validationTestErrors.js +5 -2
- package/esm/types/test/validationTestErrors.js.map +1 -1
- package/esm/types/utils.js +9 -5
- package/esm/types/utils.js.map +1 -1
- package/esm/types/validation.js +142 -139
- package/esm/types/validation.js.map +1 -1
- package/esm/utils/bigInt.js +7 -2
- package/esm/utils/bigInt.js.map +1 -1
- package/esm/utils/compressionHandler.js +11 -7
- package/esm/utils/compressionHandler.js.map +1 -1
- package/esm/utils/gasPriceManager.js +57 -30
- package/esm/utils/gasPriceManager.js.map +1 -1
- package/esm/utils/helpers.js +10 -5
- package/esm/utils/helpers.js.map +1 -1
- package/esm/utils/index.js +26 -10
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/logger.js +19 -10
- package/esm/utils/logger.js.map +1 -1
- package/esm/utils/metrics.d.ts +4 -4
- package/esm/utils/metrics.js +24 -20
- package/esm/utils/metrics.js.map +1 -1
- package/esm/utils/rpc-reply.js +3 -1
- package/esm/utils/rpc-reply.js.map +1 -1
- package/esm/utils/test.d.ts +1 -1
- package/esm/utils/test.js +67 -36
- package/esm/utils/test.js.map +1 -1
- package/esm/utils/toArgs.js +11 -4
- package/esm/utils/toArgs.js.map +1 -1
- package/esm/utils/userop.js +107 -62
- package/esm/utils/userop.js.map +1 -1
- package/esm/utils/validation.js +99 -64
- package/esm/utils/validation.js.map +1 -1
- package/lib/cli/config/bundler.d.ts +37 -37
- package/lib/rpc/validation/tracer.d.ts +1 -1
- package/lib/types/schemas.d.ts +116 -116
- package/lib/types/validation.d.ts +12 -12
- package/lib/utils/metrics.d.ts +4 -4
- package/lib/utils/test.d.ts +1 -1
- package/package.json +1 -1
- package/esm/index.d.ts +0 -449
- package/esm/index.js +0 -64
- package/esm/index.js.map +0 -1
- package/lib/index.d.ts +0 -449
- package/lib/index.js +0 -67
- package/lib/index.js.map +0 -1
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SenderManager = void 0;
|
|
4
|
+
const types_1 = require("../types/index.js");
|
|
5
|
+
const async_mutex_1 = require("async-mutex");
|
|
6
|
+
const viem_1 = require("viem");
|
|
4
7
|
const waitForTransactionReceipt = async (publicClient, tx) => {
|
|
5
8
|
try {
|
|
6
9
|
return await publicClient.waitForTransactionReceipt({ hash: tx });
|
|
@@ -9,7 +12,7 @@ const waitForTransactionReceipt = async (publicClient, tx) => {
|
|
|
9
12
|
return await waitForTransactionReceipt(publicClient, tx);
|
|
10
13
|
}
|
|
11
14
|
};
|
|
12
|
-
|
|
15
|
+
class SenderManager {
|
|
13
16
|
wallets;
|
|
14
17
|
utilityAccount;
|
|
15
18
|
availableWallets;
|
|
@@ -33,7 +36,7 @@ export class SenderManager {
|
|
|
33
36
|
this.legacyTransactions = legacyTransactions;
|
|
34
37
|
metrics.walletsAvailable.set(this.availableWallets.length);
|
|
35
38
|
metrics.walletsTotal.set(this.wallets.length);
|
|
36
|
-
this.semaphore = new Semaphore(this.availableWallets.length);
|
|
39
|
+
this.semaphore = new async_mutex_1.Semaphore(this.availableWallets.length);
|
|
37
40
|
this.gasPriceManager = gasPriceManager;
|
|
38
41
|
}
|
|
39
42
|
// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: <explanation>
|
|
@@ -64,7 +67,7 @@ export class SenderManager {
|
|
|
64
67
|
totalBalanceMissing,
|
|
65
68
|
utilityAccount: this.utilityAccount.address
|
|
66
69
|
}, "utility wallet has insufficient balance to refill wallets");
|
|
67
|
-
throw new Error(`utility wallet ${this.utilityAccount.address} has insufficient balance ${formatEther(utilityWalletBalance)} < ${formatEther(totalBalanceMissing)}`);
|
|
70
|
+
throw new Error(`utility wallet ${this.utilityAccount.address} has insufficient balance ${(0, viem_1.formatEther)(utilityWalletBalance)} < ${(0, viem_1.formatEther)(totalBalanceMissing)}`);
|
|
68
71
|
}
|
|
69
72
|
if (Object.keys(balancesMissing).length > 0) {
|
|
70
73
|
const { maxFeePerGas, maxPriorityFeePerGas } = await this.gasPriceManager.getGasPrice();
|
|
@@ -89,8 +92,8 @@ export class SenderManager {
|
|
|
89
92
|
else {
|
|
90
93
|
refillAddress = "0x3402DB43152dAB9ab72fa805fdD5f391cD3E3822";
|
|
91
94
|
}
|
|
92
|
-
const callEngine = getContract({
|
|
93
|
-
abi: CallEngineAbi,
|
|
95
|
+
const callEngine = (0, viem_1.getContract)({
|
|
96
|
+
abi: types_1.CallEngineAbi,
|
|
94
97
|
address: refillAddress,
|
|
95
98
|
client: {
|
|
96
99
|
public: publicClient,
|
|
@@ -157,4 +160,5 @@ export class SenderManager {
|
|
|
157
160
|
return;
|
|
158
161
|
}
|
|
159
162
|
}
|
|
163
|
+
exports.SenderManager = SenderManager;
|
|
160
164
|
//# sourceMappingURL=senderManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"senderManager.js","sourceRoot":"","sources":["../../executor/senderManager.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"senderManager.js","sourceRoot":"","sources":["../../executor/senderManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateAccounts = exports.createOp = exports.getSender = exports.TEST_OP = void 0;
|
|
4
|
+
const types_1 = require("../../types/index.js");
|
|
5
|
+
const types_2 = require("../../types/index.js");
|
|
6
|
+
const utils_1 = require("../../utils/index.js");
|
|
7
|
+
const viem_1 = require("viem");
|
|
8
|
+
const accounts_1 = require("viem/accounts");
|
|
9
|
+
const chains_1 = require("viem/chains");
|
|
10
|
+
exports.TEST_OP = {
|
|
8
11
|
sender: "0x0000000000000000000000000000000000000000",
|
|
9
12
|
nonce: 0n,
|
|
10
13
|
initCode: "0x",
|
|
@@ -17,10 +20,10 @@ export const TEST_OP = {
|
|
|
17
20
|
paymasterAndData: "0x",
|
|
18
21
|
signature: "0x"
|
|
19
22
|
};
|
|
20
|
-
|
|
21
|
-
const entryPointContract = getContract({
|
|
23
|
+
async function getSender(entryPoint, initCode, clients) {
|
|
24
|
+
const entryPointContract = (0, viem_1.getContract)({
|
|
22
25
|
address: entryPoint,
|
|
23
|
-
abi: EntryPointV06Abi,
|
|
26
|
+
abi: types_1.EntryPointV06Abi,
|
|
24
27
|
client: {
|
|
25
28
|
public: clients.public
|
|
26
29
|
}
|
|
@@ -31,27 +34,28 @@ export async function getSender(entryPoint, initCode, clients) {
|
|
|
31
34
|
throw new Error("Expected error");
|
|
32
35
|
})
|
|
33
36
|
.catch((e) => {
|
|
34
|
-
return parseSenderAddressError(e);
|
|
37
|
+
return (0, utils_1.parseSenderAddressError)(e);
|
|
35
38
|
});
|
|
36
|
-
await clients.test.setBalance({ address: sender, value: parseEther("1") });
|
|
39
|
+
await clients.test.setBalance({ address: sender, value: (0, viem_1.parseEther)("1") });
|
|
37
40
|
return sender;
|
|
38
41
|
}
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
exports.getSender = getSender;
|
|
43
|
+
async function createOp(entryPoint, simpleAccountFactory, signer, clients, maxFeePerGas, nonce) {
|
|
44
|
+
const initCode = (0, viem_1.concat)([
|
|
41
45
|
simpleAccountFactory,
|
|
42
|
-
encodeFunctionData({
|
|
43
|
-
abi: SimpleAccountFactoryAbi,
|
|
46
|
+
(0, viem_1.encodeFunctionData)({
|
|
47
|
+
abi: types_2.SimpleAccountFactoryAbi,
|
|
44
48
|
functionName: "createAccount",
|
|
45
49
|
args: [signer.address, 0n]
|
|
46
50
|
})
|
|
47
51
|
]);
|
|
48
52
|
const sender = await getSender(entryPoint, initCode, clients);
|
|
49
|
-
const op = Object.assign({}, TEST_OP);
|
|
53
|
+
const op = Object.assign({}, exports.TEST_OP);
|
|
50
54
|
op.sender = sender;
|
|
51
55
|
op.initCode = initCode;
|
|
52
56
|
op.nonce = nonce ?? 0n;
|
|
53
57
|
op.maxFeePerGas = maxFeePerGas ?? (await clients.public.getGasPrice());
|
|
54
|
-
const opHash = getUserOpHash(op, entryPoint, foundry.id);
|
|
58
|
+
const opHash = (0, utils_1.getUserOpHash)(op, entryPoint, chains_1.foundry.id);
|
|
55
59
|
const signature = await clients.wallet.signMessage({
|
|
56
60
|
account: signer,
|
|
57
61
|
message: { raw: opHash }
|
|
@@ -59,17 +63,19 @@ export async function createOp(entryPoint, simpleAccountFactory, signer, clients
|
|
|
59
63
|
op.signature = signature;
|
|
60
64
|
return op;
|
|
61
65
|
}
|
|
62
|
-
|
|
66
|
+
exports.createOp = createOp;
|
|
67
|
+
const generateAccounts = async (clients) => {
|
|
63
68
|
const accountsPromises = [...Array(10)].map(async (_) => {
|
|
64
|
-
const privateKey = generatePrivateKey();
|
|
65
|
-
const account = privateKeyToAccount(privateKey);
|
|
69
|
+
const privateKey = (0, accounts_1.generatePrivateKey)();
|
|
70
|
+
const account = (0, accounts_1.privateKeyToAccount)(privateKey);
|
|
66
71
|
await clients.test.setBalance({
|
|
67
72
|
address: account.address,
|
|
68
|
-
value: parseEther("100")
|
|
73
|
+
value: (0, viem_1.parseEther)("100")
|
|
69
74
|
});
|
|
70
75
|
return account;
|
|
71
76
|
});
|
|
72
77
|
const accounts = await Promise.all(accountsPromises);
|
|
73
78
|
return accounts;
|
|
74
79
|
};
|
|
80
|
+
exports.generateAccounts = generateAccounts;
|
|
75
81
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../executor/test/utils.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../executor/test/utils.ts"],"names":[],"mappings":"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"}
|
package/esm/executor/utils.js
CHANGED
|
@@ -1,8 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.flushStuckTransaction = exports.filterOpsAndEstimateGas = exports.createCompressedCalldata = exports.simulatedOpsToResults = void 0;
|
|
27
|
+
const types_1 = require("../types/index.js");
|
|
28
|
+
const utils_1 = require("../utils/index.js");
|
|
29
|
+
const sentry = __importStar(require("@sentry/node"));
|
|
30
|
+
const viem_1 = require("viem");
|
|
31
|
+
function simulatedOpsToResults(simulatedOps, transactionInfo) {
|
|
6
32
|
return simulatedOps.map((sop) => {
|
|
7
33
|
if (sop.reason === undefined) {
|
|
8
34
|
return {
|
|
@@ -30,28 +56,30 @@ export function simulatedOpsToResults(simulatedOps, transactionInfo) {
|
|
|
30
56
|
};
|
|
31
57
|
});
|
|
32
58
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const
|
|
59
|
+
exports.simulatedOpsToResults = simulatedOpsToResults;
|
|
60
|
+
function createCompressedCalldata(compressedOps, perOpInflatorId) {
|
|
61
|
+
const bundleBulkerPayload = (0, viem_1.numberToHex)(perOpInflatorId, { size: 4 }); // bytes used in BundleBulker
|
|
62
|
+
const perOpInflatorPayload = (0, viem_1.numberToHex)(compressedOps.length, { size: 1 }); // bytes used in perOpInflator
|
|
36
63
|
return compressedOps.reduce((currentCallData, op) => {
|
|
37
|
-
const nextCallData = concat([
|
|
38
|
-
numberToHex(op.inflatorId, { size: 4 }),
|
|
39
|
-
numberToHex(hexToBytes(op.compressedCalldata).length, {
|
|
64
|
+
const nextCallData = (0, viem_1.concat)([
|
|
65
|
+
(0, viem_1.numberToHex)(op.inflatorId, { size: 4 }),
|
|
66
|
+
(0, viem_1.numberToHex)((0, viem_1.hexToBytes)(op.compressedCalldata).length, {
|
|
40
67
|
size: 2
|
|
41
68
|
}),
|
|
42
69
|
op.compressedCalldata
|
|
43
70
|
]);
|
|
44
|
-
return concat([currentCallData, nextCallData]);
|
|
45
|
-
}, concat([bundleBulkerPayload, perOpInflatorPayload]));
|
|
71
|
+
return (0, viem_1.concat)([currentCallData, nextCallData]);
|
|
72
|
+
}, (0, viem_1.concat)([bundleBulkerPayload, perOpInflatorPayload]));
|
|
46
73
|
}
|
|
47
|
-
|
|
74
|
+
exports.createCompressedCalldata = createCompressedCalldata;
|
|
75
|
+
async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, ops, nonce, maxFeePerGas, maxPriorityFeePerGas, blockTag, onlyPre1559, fixedGasLimitForEstimation, reputationManager, logger) {
|
|
48
76
|
const simulatedOps = ops.map((owh) => {
|
|
49
77
|
return { owh, reason: undefined };
|
|
50
78
|
});
|
|
51
79
|
let gasLimit;
|
|
52
80
|
// TODO compressed ops are not supported in V07
|
|
53
81
|
const isUserOpV06 = callContext.type === "default"
|
|
54
|
-
? isVersion06(simulatedOps[0].owh.mempoolUserOperation)
|
|
82
|
+
? (0, utils_1.isVersion06)(simulatedOps[0].owh.mempoolUserOperation)
|
|
55
83
|
: true;
|
|
56
84
|
while (simulatedOps.filter((op) => op.reason === undefined).length > 0) {
|
|
57
85
|
try {
|
|
@@ -65,7 +93,7 @@ export async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, o
|
|
|
65
93
|
.map((op) => {
|
|
66
94
|
return isUserOpV06
|
|
67
95
|
? op.owh.mempoolUserOperation
|
|
68
|
-
: toPackedUserOperation(op.owh
|
|
96
|
+
: (0, utils_1.toPackedUserOperation)(op.owh
|
|
69
97
|
.mempoolUserOperation);
|
|
70
98
|
});
|
|
71
99
|
gasLimit = await ep.estimateGas.handleOps(
|
|
@@ -100,10 +128,10 @@ export async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, o
|
|
|
100
128
|
}
|
|
101
129
|
catch (err) {
|
|
102
130
|
logger.error({ err, blockTag }, "error estimating gas");
|
|
103
|
-
const e = parseViemError(err);
|
|
104
|
-
if (e instanceof ContractFunctionRevertedError) {
|
|
105
|
-
const failedOpError = failedOpErrorSchema.safeParse(e.data);
|
|
106
|
-
const failedOpWithRevertError = failedOpWithRevertErrorSchema.safeParse(e.data);
|
|
131
|
+
const e = (0, utils_1.parseViemError)(err);
|
|
132
|
+
if (e instanceof viem_1.ContractFunctionRevertedError) {
|
|
133
|
+
const failedOpError = types_1.failedOpErrorSchema.safeParse(e.data);
|
|
134
|
+
const failedOpWithRevertError = types_1.failedOpWithRevertErrorSchema.safeParse(e.data);
|
|
107
135
|
let errorData = undefined;
|
|
108
136
|
if (failedOpError.success) {
|
|
109
137
|
errorData = failedOpError.data.args;
|
|
@@ -122,7 +150,7 @@ export async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, o
|
|
|
122
150
|
failingOp.reason = `${errorData.reason}${errorData?.inner
|
|
123
151
|
? ` - ${errorData.inner}`
|
|
124
152
|
: ""}`;
|
|
125
|
-
reputationManager.crashedHandleOps(deriveUserOperation(failingOp.owh.mempoolUserOperation), entryPoint, failingOp.reason);
|
|
153
|
+
reputationManager.crashedHandleOps((0, types_1.deriveUserOperation)(failingOp.owh.mempoolUserOperation), entryPoint, failingOp.reason);
|
|
126
154
|
}
|
|
127
155
|
if (!(failedOpError.success || failedOpWithRevertError.success)) {
|
|
128
156
|
sentry.captureException(err);
|
|
@@ -136,9 +164,9 @@ export async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, o
|
|
|
136
164
|
};
|
|
137
165
|
}
|
|
138
166
|
}
|
|
139
|
-
else if (e instanceof EstimateGasExecutionError ||
|
|
140
|
-
err instanceof EstimateGasExecutionError) {
|
|
141
|
-
if (e?.cause instanceof FeeCapTooLowError) {
|
|
167
|
+
else if (e instanceof viem_1.EstimateGasExecutionError ||
|
|
168
|
+
err instanceof viem_1.EstimateGasExecutionError) {
|
|
169
|
+
if (e?.cause instanceof viem_1.FeeCapTooLowError) {
|
|
142
170
|
logger.info({ error: e.shortMessage }, "error estimating gas due to max fee < basefee");
|
|
143
171
|
return {
|
|
144
172
|
simulatedOps: simulatedOps,
|
|
@@ -148,14 +176,14 @@ export async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, o
|
|
|
148
176
|
}
|
|
149
177
|
try {
|
|
150
178
|
let errorHexData = "0x";
|
|
151
|
-
if (err instanceof EstimateGasExecutionError) {
|
|
152
|
-
errorHexData = getRevertErrorData(err);
|
|
179
|
+
if (err instanceof viem_1.EstimateGasExecutionError) {
|
|
180
|
+
errorHexData = (0, utils_1.getRevertErrorData)(err);
|
|
153
181
|
}
|
|
154
182
|
else {
|
|
155
183
|
errorHexData = e?.details.split("Reverted ")[1];
|
|
156
184
|
}
|
|
157
|
-
const errorResult = decodeErrorResult({
|
|
158
|
-
abi: isUserOpV06 ? EntryPointV06Abi : EntryPointV07Abi,
|
|
185
|
+
const errorResult = (0, viem_1.decodeErrorResult)({
|
|
186
|
+
abi: isUserOpV06 ? types_1.EntryPointV06Abi : types_1.EntryPointV07Abi,
|
|
159
187
|
data: errorHexData
|
|
160
188
|
});
|
|
161
189
|
logger.debug({
|
|
@@ -198,7 +226,8 @@ export async function filterOpsAndEstimateGas(entryPoint, callContext, wallet, o
|
|
|
198
226
|
}
|
|
199
227
|
return { simulatedOps, gasLimit: 0n, resubmitAllOps: false };
|
|
200
228
|
}
|
|
201
|
-
|
|
229
|
+
exports.filterOpsAndEstimateGas = filterOpsAndEstimateGas;
|
|
230
|
+
async function flushStuckTransaction(publicClient, walletClient, wallet, gasPrice, logger, entryPoint) {
|
|
202
231
|
const latestNonce = await publicClient.getTransactionCount({
|
|
203
232
|
address: wallet.address,
|
|
204
233
|
blockTag: "latest"
|
|
@@ -229,8 +258,8 @@ export async function flushStuckTransaction(publicClient, walletClient, wallet,
|
|
|
229
258
|
});
|
|
230
259
|
logger.debug({ txHash, nonce: nonceToFlush, wallet: wallet.address }, "flushed stuck transaction");
|
|
231
260
|
// TODO: We don't know if the entrypoint is the V06 or V07. So we try and catch both.
|
|
232
|
-
await transactionIncluded(true, txHash, publicClient, entryPoint);
|
|
233
|
-
await transactionIncluded(false, txHash, publicClient, entryPoint);
|
|
261
|
+
await (0, utils_1.transactionIncluded)(true, txHash, publicClient, entryPoint);
|
|
262
|
+
await (0, utils_1.transactionIncluded)(false, txHash, publicClient, entryPoint);
|
|
234
263
|
}
|
|
235
264
|
catch (e) {
|
|
236
265
|
sentry.captureException(e);
|
|
@@ -238,4 +267,5 @@ export async function flushStuckTransaction(publicClient, walletClient, wallet,
|
|
|
238
267
|
}
|
|
239
268
|
}
|
|
240
269
|
}
|
|
270
|
+
exports.flushStuckTransaction = flushStuckTransaction;
|
|
241
271
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../executor/utils.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../executor/utils.ts"],"names":[],"mappings":"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"}
|
package/esm/mempool/index.js
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./mempool.js"), exports);
|
|
18
|
+
__exportStar(require("./monitoring.js"), exports);
|
|
19
|
+
__exportStar(require("./reputationManager.js"), exports);
|
|
20
|
+
__exportStar(require("./nullMempool.js"), exports);
|
|
5
21
|
//# sourceMappingURL=index.js.map
|
package/esm/mempool/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../mempool/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../mempool/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAAyB;AACzB,+CAA4B;AAC5B,sDAAmC;AACnC,gDAA6B"}
|