@chainsafe/lodestar 1.9.0-dev.aecb3d1de1 → 1.9.0-dev.b23dca0368
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/.git-data.json +1 -1
- package/lib/cmds/beacon/options.d.ts +2 -5
- package/lib/cmds/beacon/options.js +5 -8
- package/lib/cmds/beacon/options.js.map +1 -1
- package/lib/cmds/dev/options.d.ts +7 -6
- package/lib/cmds/lightclient/handler.js +5 -0
- package/lib/cmds/lightclient/handler.js.map +1 -1
- package/lib/cmds/lightclient/options.d.ts +2 -2
- package/lib/cmds/lightclient/options.js +0 -2
- package/lib/cmds/lightclient/options.js.map +1 -1
- package/lib/cmds/validator/blsToExecutionChange.d.ts +3 -3
- package/lib/cmds/validator/blsToExecutionChange.js +12 -5
- package/lib/cmds/validator/blsToExecutionChange.js.map +1 -1
- package/lib/cmds/validator/handler.js +4 -2
- package/lib/cmds/validator/handler.js.map +1 -1
- package/lib/cmds/validator/options.d.ts +3 -3
- package/lib/cmds/validator/options.js +3 -2
- package/lib/cmds/validator/options.js.map +1 -1
- package/lib/cmds/validator/slashingProtection/export.d.ts +1 -1
- package/lib/cmds/validator/slashingProtection/export.js +5 -2
- package/lib/cmds/validator/slashingProtection/export.js.map +1 -1
- package/lib/cmds/validator/slashingProtection/import.d.ts +1 -1
- package/lib/cmds/validator/slashingProtection/import.js +6 -2
- package/lib/cmds/validator/slashingProtection/import.js.map +1 -1
- package/lib/options/beaconNodeOptions/api.d.ts +6 -6
- package/lib/options/beaconNodeOptions/api.js +2 -2
- package/lib/options/beaconNodeOptions/api.js.map +1 -1
- package/lib/options/beaconNodeOptions/builder.d.ts +4 -4
- package/lib/options/beaconNodeOptions/builder.js +10 -5
- package/lib/options/beaconNodeOptions/builder.js.map +1 -1
- package/lib/options/beaconNodeOptions/chain.d.ts +13 -12
- package/lib/options/beaconNodeOptions/chain.js +12 -2
- package/lib/options/beaconNodeOptions/chain.js.map +1 -1
- package/lib/options/beaconNodeOptions/eth1.d.ts +6 -6
- package/lib/options/beaconNodeOptions/eth1.js +6 -1
- package/lib/options/beaconNodeOptions/eth1.js.map +1 -1
- package/lib/options/beaconNodeOptions/execution.d.ts +1 -1
- package/lib/options/beaconNodeOptions/execution.js +9 -5
- package/lib/options/beaconNodeOptions/execution.js.map +1 -1
- package/lib/options/beaconNodeOptions/index.d.ts +12 -11
- package/lib/options/beaconNodeOptions/metrics.d.ts +1 -1
- package/lib/options/beaconNodeOptions/metrics.js +2 -2
- package/lib/options/beaconNodeOptions/metrics.js.map +1 -1
- package/lib/options/beaconNodeOptions/monitoring.d.ts +5 -5
- package/lib/options/beaconNodeOptions/network.d.ts +19 -19
- package/lib/options/beaconNodeOptions/network.js +2 -2
- package/lib/options/beaconNodeOptions/network.js.map +1 -1
- package/lib/options/beaconNodeOptions/sync.d.ts +4 -4
- package/lib/options/beaconNodeOptions/sync.js +2 -1
- package/lib/options/beaconNodeOptions/sync.js.map +1 -1
- package/lib/options/globalOptions.d.ts +2 -2
- package/lib/util/command.d.ts +2 -1
- package/lib/util/command.js.map +1 -1
- package/package.json +13 -13
package/.git-data.json
CHANGED
|
@@ -19,6 +19,7 @@ type BeaconExtraArgs = {
|
|
|
19
19
|
peerStoreDir?: string;
|
|
20
20
|
persistNetworkIdentity?: boolean;
|
|
21
21
|
private?: boolean;
|
|
22
|
+
attachToGlobalThis?: boolean;
|
|
22
23
|
};
|
|
23
24
|
export declare const beaconExtraOptions: CliCommandOptions<BeaconExtraArgs>;
|
|
24
25
|
type ENRArgs = {
|
|
@@ -30,11 +31,7 @@ type ENRArgs = {
|
|
|
30
31
|
"enr.udp6"?: number;
|
|
31
32
|
nat?: boolean;
|
|
32
33
|
};
|
|
33
|
-
export type
|
|
34
|
-
attachToGlobalThis: boolean;
|
|
35
|
-
};
|
|
36
|
-
export declare const debugOptions: CliCommandOptions<DebugArgs>;
|
|
37
|
-
export type BeaconArgs = BeaconExtraArgs & LogArgs & BeaconPaths & BeaconNodeArgs & ENRArgs & DebugArgs;
|
|
34
|
+
export type BeaconArgs = BeaconExtraArgs & LogArgs & BeaconPaths & BeaconNodeArgs & ENRArgs;
|
|
38
35
|
export declare const beaconOptions: {
|
|
39
36
|
[k: string]: Options;
|
|
40
37
|
};
|
|
@@ -80,6 +80,11 @@ export const beaconExtraOptions = {
|
|
|
80
80
|
description: "Do not send implementation details over p2p identify protocol and in builder requests",
|
|
81
81
|
type: "boolean",
|
|
82
82
|
},
|
|
83
|
+
attachToGlobalThis: {
|
|
84
|
+
hidden: true,
|
|
85
|
+
description: "Attach the beacon node to `globalThis`. Useful to inspect a running beacon node.",
|
|
86
|
+
type: "boolean",
|
|
87
|
+
},
|
|
83
88
|
};
|
|
84
89
|
const enrOptions = {
|
|
85
90
|
"enr.ip": {
|
|
@@ -118,19 +123,11 @@ const enrOptions = {
|
|
|
118
123
|
group: "enr",
|
|
119
124
|
},
|
|
120
125
|
};
|
|
121
|
-
export const debugOptions = {
|
|
122
|
-
attachToGlobalThis: {
|
|
123
|
-
hidden: true,
|
|
124
|
-
description: "Attach the beacon node to `globalThis`. Useful to inspect a running beacon node.",
|
|
125
|
-
type: "boolean",
|
|
126
|
-
},
|
|
127
|
-
};
|
|
128
126
|
export const beaconOptions = {
|
|
129
127
|
...beaconExtraOptions,
|
|
130
128
|
...logOptions,
|
|
131
129
|
...beaconNodeOptions,
|
|
132
130
|
...paramsOptions,
|
|
133
131
|
...enrOptions,
|
|
134
|
-
...debugOptions,
|
|
135
132
|
};
|
|
136
133
|
//# sourceMappingURL=options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/beacon/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAiB,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAU,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAC,kBAAkB,EAAc,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/beacon/options.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ type IDevOwnArgs = {
|
|
|
11
11
|
};
|
|
12
12
|
export declare const devOptions: {
|
|
13
13
|
genesisEth1Hash: Options;
|
|
14
|
-
genesisValidators: Options
|
|
14
|
+
genesisValidators: Options & Required<Pick<Options, "default">>;
|
|
15
15
|
startValidators: Options;
|
|
16
16
|
genesisTime: Options;
|
|
17
17
|
reset: Options;
|
|
@@ -50,6 +50,7 @@ export declare const devOptions: {
|
|
|
50
50
|
"chain.computeUnrealized"?: Options | undefined;
|
|
51
51
|
"chain.assertCorrectProgressiveBalances"?: Options | undefined;
|
|
52
52
|
"chain.maxSkipSlots"?: Options | undefined;
|
|
53
|
+
"chain.trustedSetup"?: Options | undefined;
|
|
53
54
|
"safe-slots-to-import-optimistically"?: Options | undefined;
|
|
54
55
|
"chain.archiveStateEpochFrequency"?: Options | undefined;
|
|
55
56
|
emitPayloadAttributes?: Options | undefined;
|
|
@@ -105,16 +106,16 @@ export declare const devOptions: {
|
|
|
105
106
|
"keymanager.cors": Options;
|
|
106
107
|
"keymanager.headerLimit": Options;
|
|
107
108
|
"keymanager.bodyLimit": Options;
|
|
108
|
-
logLevel: Options
|
|
109
|
+
logLevel: Options & Required<Pick<Options, "default">>;
|
|
109
110
|
logFile: Options;
|
|
110
|
-
logFileLevel: Options
|
|
111
|
-
logFileDailyRotate: Options
|
|
111
|
+
logFileLevel: Options & Required<Pick<Options, "default">>;
|
|
112
|
+
logFileDailyRotate: Options & Required<Pick<Options, "default">>;
|
|
112
113
|
logFormatGenesisTime: Options;
|
|
113
114
|
logPrefix: Options;
|
|
114
115
|
logFormat: Options;
|
|
115
116
|
logLevelModule: Options;
|
|
116
117
|
validatorsDbDir: Options;
|
|
117
|
-
beaconNodes: Options
|
|
118
|
+
beaconNodes: Options & Required<Pick<Options, "default">>;
|
|
118
119
|
force: Options;
|
|
119
120
|
graffiti: Options;
|
|
120
121
|
afterBlockDelaySlotFraction: Options;
|
|
@@ -122,7 +123,7 @@ export declare const devOptions: {
|
|
|
122
123
|
disableAttestationGrouping: Options;
|
|
123
124
|
proposerSettingsFile: Options;
|
|
124
125
|
strictFeeRecipientCheck: Options;
|
|
125
|
-
|
|
126
|
+
doppelgangerProtection: Options;
|
|
126
127
|
defaultGasLimit: Options;
|
|
127
128
|
"builder.selection": Options;
|
|
128
129
|
importKeystores: Options;
|
|
@@ -7,11 +7,16 @@ import { getNodeLogger } from "@lodestar/logger/node";
|
|
|
7
7
|
import { getBeaconConfigFromArgs } from "../../config/beaconParams.js";
|
|
8
8
|
import { getGlobalPaths } from "../../paths/global.js";
|
|
9
9
|
import { parseLoggerArgs } from "../../util/logger.js";
|
|
10
|
+
import { YargsError } from "../../util/errors.js";
|
|
10
11
|
export async function lightclientHandler(args) {
|
|
11
12
|
const { config, network } = getBeaconConfigFromArgs(args);
|
|
12
13
|
const globalPaths = getGlobalPaths(args, network);
|
|
13
14
|
const logger = getNodeLogger(parseLoggerArgs(args, { defaultLogFilepath: path.join(globalPaths.dataDir, "lightclient.log") }, config));
|
|
14
15
|
const { beaconApiUrl, checkpointRoot } = args;
|
|
16
|
+
if (!beaconApiUrl)
|
|
17
|
+
throw new YargsError("must provide beaconApiUrl arg");
|
|
18
|
+
if (!checkpointRoot)
|
|
19
|
+
throw new YargsError("must provide checkpointRoot arg");
|
|
15
20
|
const api = getClient({ baseUrl: beaconApiUrl }, { config });
|
|
16
21
|
const res = await api.beacon.getGenesis();
|
|
17
22
|
ApiError.assert(res, "Can not fetch genesis data");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/lightclient/handler.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,wBAAwB,EAAC,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/lightclient/handler.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAC,WAAW,EAAC,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAC,wBAAwB,EAAC,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAIhD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAmC;IAC1E,MAAM,EAAC,MAAM,EAAE,OAAO,EAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,MAAM,GAAG,aAAa,CAC1B,eAAe,CAAC,IAAI,EAAE,EAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,iBAAiB,CAAC,EAAC,EAAE,MAAM,CAAC,CACvG,CAAC;IAEF,MAAM,EAAC,YAAY,EAAE,cAAc,EAAC,GAAG,IAAI,CAAC;IAC5C,IAAI,CAAC,YAAY;QAAE,MAAM,IAAI,UAAU,CAAC,+BAA+B,CAAC,CAAC;IACzE,IAAI,CAAC,cAAc;QAAE,MAAM,IAAI,UAAU,CAAC,iCAAiC,CAAC,CAAC;IAE7E,MAAM,GAAG,GAAG,SAAS,CAAC,EAAC,OAAO,EAAE,YAAY,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,CAAC;IACzD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,4BAA4B,CAAC;QAC5D,MAAM;QACN,MAAM;QACN,WAAW,EAAE;YACX,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YAClD,qBAAqB,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB;SAC/D;QACD,cAAc,EAAE,aAAa,CAAC,cAAc,CAAC;QAC7C,SAAS,EAAE,IAAI,wBAAwB,CAAC,GAAG,CAAC;KAC7C,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,EAAE,CAAC;AACjB,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { LogArgs } from "../../options/logOptions.js";
|
|
2
2
|
import { CliCommandOptions } from "../../util/index.js";
|
|
3
3
|
export type ILightClientArgs = LogArgs & {
|
|
4
|
-
beaconApiUrl
|
|
5
|
-
checkpointRoot
|
|
4
|
+
beaconApiUrl?: string;
|
|
5
|
+
checkpointRoot?: string;
|
|
6
6
|
};
|
|
7
7
|
export declare const lightclientOptions: CliCommandOptions<ILightClientArgs>;
|
|
8
8
|
//# sourceMappingURL=options.d.ts.map
|
|
@@ -4,12 +4,10 @@ export const lightclientOptions = {
|
|
|
4
4
|
beaconApiUrl: {
|
|
5
5
|
description: "Url to a beacon node that support lightclient API",
|
|
6
6
|
type: "string",
|
|
7
|
-
require: true,
|
|
8
7
|
},
|
|
9
8
|
checkpointRoot: {
|
|
10
9
|
description: "Checkpoint root hex string to sync the lightclient from, start with 0x",
|
|
11
10
|
type: "string",
|
|
12
|
-
require: true,
|
|
13
11
|
},
|
|
14
12
|
};
|
|
15
13
|
//# sourceMappingURL=options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/lightclient/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAQhE,MAAM,CAAC,MAAM,kBAAkB,GAAwC;IACrE,GAAG,UAAU;IACb,YAAY,EAAE;QACZ,WAAW,EAAE,mDAAmD;QAChE,IAAI,EAAE,QAAQ;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/lightclient/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAQhE,MAAM,CAAC,MAAM,kBAAkB,GAAwC;IACrE,GAAG,UAAU;IACb,YAAY,EAAE;QACZ,WAAW,EAAE,mDAAmD;QAChE,IAAI,EAAE,QAAQ;KACf;IACD,cAAc,EAAE;QACd,WAAW,EAAE,wEAAwE;QACrF,IAAI,EAAE,QAAQ;KACf;CACF,CAAC"}
|
|
@@ -2,9 +2,9 @@ import { CliCommand } from "../../util/index.js";
|
|
|
2
2
|
import { GlobalArgs } from "../../options/index.js";
|
|
3
3
|
import { IValidatorCliArgs } from "./options.js";
|
|
4
4
|
type BlsToExecutionChangeArgs = {
|
|
5
|
-
publicKey
|
|
6
|
-
fromBlsPrivkey
|
|
7
|
-
toExecutionAddress
|
|
5
|
+
publicKey?: string;
|
|
6
|
+
fromBlsPrivkey?: string;
|
|
7
|
+
toExecutionAddress?: string;
|
|
8
8
|
};
|
|
9
9
|
export declare const blsToExecutionChange: CliCommand<BlsToExecutionChangeArgs, IValidatorCliArgs & GlobalArgs>;
|
|
10
10
|
export {};
|
|
@@ -6,6 +6,7 @@ import { ApiError, getClient } from "@lodestar/api";
|
|
|
6
6
|
import { fromHexString } from "@chainsafe/ssz";
|
|
7
7
|
import bls from "@chainsafe/bls";
|
|
8
8
|
import { PointFormat } from "@chainsafe/bls/types";
|
|
9
|
+
import { YargsError } from "../../util/index.js";
|
|
9
10
|
import { getBeaconConfigFromArgs } from "../../config/index.js";
|
|
10
11
|
export const blsToExecutionChange = {
|
|
11
12
|
command: "bls-to-execution-change",
|
|
@@ -36,7 +37,13 @@ like to choose for BLS To Execution Change.",
|
|
|
36
37
|
},
|
|
37
38
|
},
|
|
38
39
|
handler: async (args) => {
|
|
39
|
-
const publicKey = args
|
|
40
|
+
const { publicKey, fromBlsPrivkey, toExecutionAddress } = args;
|
|
41
|
+
if (!publicKey)
|
|
42
|
+
throw new YargsError("must provide publicKey arg");
|
|
43
|
+
if (!fromBlsPrivkey)
|
|
44
|
+
throw new YargsError("must provide fromBlsPrivkey arg");
|
|
45
|
+
if (!toExecutionAddress)
|
|
46
|
+
throw new YargsError("must provide toExecutionAddress arg");
|
|
40
47
|
// Fetch genesisValidatorsRoot always from beacon node as anyway beacon node is needed for
|
|
41
48
|
// submitting the signed message
|
|
42
49
|
const { config: chainForkConfig } = getBeaconConfigFromArgs(args);
|
|
@@ -52,19 +59,19 @@ like to choose for BLS To Execution Change.",
|
|
|
52
59
|
if (stateValidator === undefined) {
|
|
53
60
|
throw new Error(`Validator pubkey ${publicKey} not found in state`);
|
|
54
61
|
}
|
|
55
|
-
const
|
|
56
|
-
const fromBlsPubkey =
|
|
62
|
+
const blsPrivkey = bls.SecretKey.fromBytes(fromHexString(fromBlsPrivkey));
|
|
63
|
+
const fromBlsPubkey = blsPrivkey.toPublicKey().toBytes(PointFormat.compressed);
|
|
57
64
|
const blsToExecutionChange = {
|
|
58
65
|
validatorIndex: stateValidator.index,
|
|
59
66
|
fromBlsPubkey,
|
|
60
|
-
toExecutionAddress: fromHexString(
|
|
67
|
+
toExecutionAddress: fromHexString(toExecutionAddress),
|
|
61
68
|
};
|
|
62
69
|
const signatureFork = ForkName.phase0;
|
|
63
70
|
const domain = config.getDomainAtFork(signatureFork, DOMAIN_BLS_TO_EXECUTION_CHANGE);
|
|
64
71
|
const signingRoot = computeSigningRoot(ssz.capella.BLSToExecutionChange, blsToExecutionChange, domain);
|
|
65
72
|
const signedBLSToExecutionChange = {
|
|
66
73
|
message: blsToExecutionChange,
|
|
67
|
-
signature:
|
|
74
|
+
signature: blsPrivkey.sign(signingRoot).toBytes(),
|
|
68
75
|
};
|
|
69
76
|
ApiError.assert(await client.beacon.submitPoolBlsToExecutionChange([signedBLSToExecutionChange]), "Can not submit bls to execution change");
|
|
70
77
|
console.log(`Submitted bls to execution change for ${publicKey}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blsToExecutionChange.js","sourceRoot":"","sources":["../../../src/cmds/validator/blsToExecutionChange.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAC,8BAA8B,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAC,GAAG,EAAU,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,eAAe,CAAC;AAClD,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC7C,OAAO,GAAG,MAAM,gBAAgB,CAAC;AACjC,OAAO,EAAC,WAAW,EAAC,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"blsToExecutionChange.js","sourceRoot":"","sources":["../../../src/cmds/validator/blsToExecutionChange.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ import { KeymanagerRestApiServer } from "./keymanager/server.js";
|
|
|
22
22
|
export async function validatorHandler(args) {
|
|
23
23
|
var _a, _b, _c, _d, _e, _f;
|
|
24
24
|
const { config, network } = getBeaconConfigFromArgs(args);
|
|
25
|
-
const
|
|
25
|
+
const { doppelgangerProtection } = args;
|
|
26
26
|
const validatorPaths = getValidatorPaths(args, network);
|
|
27
27
|
const accountPaths = getAccountPaths(args, network);
|
|
28
28
|
const defaultLogFilepath = path.join(validatorPaths.dataDir, "validator.log");
|
|
@@ -117,7 +117,7 @@ export async function validatorHandler(args) {
|
|
|
117
117
|
processShutdownCallback,
|
|
118
118
|
signers,
|
|
119
119
|
abortController,
|
|
120
|
-
|
|
120
|
+
doppelgangerProtection,
|
|
121
121
|
afterBlockDelaySlotFraction: args.afterBlockDelaySlotFraction,
|
|
122
122
|
scAfterBlockDelaySlotFraction: args.scAfterBlockDelaySlotFraction,
|
|
123
123
|
disableAttestationGrouping: args.disableAttestationGrouping,
|
|
@@ -187,6 +187,8 @@ function parseBuilderSelection(builderSelection) {
|
|
|
187
187
|
break;
|
|
188
188
|
case "builderalways":
|
|
189
189
|
break;
|
|
190
|
+
case "builderonly":
|
|
191
|
+
break;
|
|
190
192
|
default:
|
|
191
193
|
throw Error("Invalid input for builder selection, check help.");
|
|
192
194
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/validator/handler.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,eAAe,EAAC,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAC/C,OAAO,EAEL,kBAAkB,EAClB,SAAS,GAGV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,UAAU,EAAkB,MAAM,qBAAqB,CAAC;AAChE,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAC,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,KAAK,EAAE,eAAe,EAAC,MAAM,qBAAqB,CAAC;AAC7G,OAAO,EAAC,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAE,iBAAiB,EAAC,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAoB,8BAA8B,EAAE,iCAAiC,EAAC,MAAM,cAAc,CAAC;AAClH,OAAO,EAAC,kBAAkB,EAAC,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAC,UAAU,EAAC,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,oBAAoB,EAAC,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAC,uBAAuB,EAAC,MAAM,wBAAwB,CAAC;AAE/D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAoC;;IACzE,MAAM,EAAC,MAAM,EAAE,OAAO,EAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAExD,MAAM,
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/validator/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,15 +21,15 @@ export declare const DEFAULT_BEACON_NODE_URL = "";
|
|
|
21
21
|
export type IValidatorCliArgs = AccountValidatorArgs & KeymanagerArgs & LogArgs & {
|
|
22
22
|
validatorsDbDir?: string;
|
|
23
23
|
beaconNodes: string[];
|
|
24
|
-
force
|
|
25
|
-
graffiti
|
|
24
|
+
force?: boolean;
|
|
25
|
+
graffiti?: string;
|
|
26
26
|
afterBlockDelaySlotFraction?: number;
|
|
27
27
|
scAfterBlockDelaySlotFraction?: number;
|
|
28
28
|
disableAttestationGrouping?: boolean;
|
|
29
29
|
suggestedFeeRecipient?: string;
|
|
30
30
|
proposerSettingsFile?: string;
|
|
31
31
|
strictFeeRecipientCheck?: boolean;
|
|
32
|
-
|
|
32
|
+
doppelgangerProtection?: boolean;
|
|
33
33
|
defaultGasLimit?: number;
|
|
34
34
|
builder?: boolean;
|
|
35
35
|
"builder.selection"?: string;
|
|
@@ -150,7 +150,7 @@ export const validatorOptions = {
|
|
|
150
150
|
},
|
|
151
151
|
"builder.selection": {
|
|
152
152
|
type: "string",
|
|
153
|
-
description: "Default builder block selection strategy: maxprofit or
|
|
153
|
+
description: "Default builder block selection strategy: maxprofit, builderalways, or builderonly",
|
|
154
154
|
defaultDescription: `${defaultOptions.builderSelection}`,
|
|
155
155
|
group: "builder",
|
|
156
156
|
},
|
|
@@ -166,7 +166,8 @@ export const validatorOptions = {
|
|
|
166
166
|
defaultDescription: "./password.txt",
|
|
167
167
|
type: "string",
|
|
168
168
|
},
|
|
169
|
-
|
|
169
|
+
doppelgangerProtection: {
|
|
170
|
+
alias: ["doppelgangerProtectionEnabled"],
|
|
170
171
|
description: "Enables Doppelganger protection",
|
|
171
172
|
default: false,
|
|
172
173
|
type: "boolean",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/validator/options.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/validator/options.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { LogArgs } from "../../../options/logOptions.js";
|
|
|
4
4
|
import { AccountValidatorArgs } from "../options.js";
|
|
5
5
|
import { ISlashingProtectionArgs } from "./options.js";
|
|
6
6
|
type ExportArgs = {
|
|
7
|
-
file
|
|
7
|
+
file?: string;
|
|
8
8
|
pubkeys?: string[];
|
|
9
9
|
};
|
|
10
10
|
export declare const exportCmd: CliCommand<ExportArgs, ISlashingProtectionArgs & AccountValidatorArgs & GlobalArgs & LogArgs>;
|
|
@@ -35,6 +35,9 @@ export const exportCmd = {
|
|
|
35
35
|
},
|
|
36
36
|
handler: async (args) => {
|
|
37
37
|
var _a;
|
|
38
|
+
const { file } = args;
|
|
39
|
+
if (!file)
|
|
40
|
+
throw new YargsError("must provide file arg");
|
|
38
41
|
const { config, network } = getBeaconConfigFromArgs(args);
|
|
39
42
|
const validatorPaths = getValidatorPaths(args, network);
|
|
40
43
|
// slashingProtection commands are fast so do not require logFile feature
|
|
@@ -70,8 +73,8 @@ export const exportCmd = {
|
|
|
70
73
|
}
|
|
71
74
|
logger.info("Starting export for pubkeys found", { count: pubkeysToExport.length });
|
|
72
75
|
const interchange = await slashingProtection.exportInterchange(genesisValidatorsRoot, pubkeysToExport, formatVersion, logger);
|
|
73
|
-
logger.info("Writing slashing protection data", { file
|
|
74
|
-
writeFile600Perm(
|
|
76
|
+
logger.info("Writing slashing protection data", { file });
|
|
77
|
+
writeFile600Perm(file, interchange);
|
|
75
78
|
logger.info("Export completed successfully");
|
|
76
79
|
},
|
|
77
80
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../src/cmds/validator/slashingProtection/export.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../src/cmds/validator/slashingProtection/export.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { LogArgs } from "../../../options/logOptions.js";
|
|
|
4
4
|
import { AccountValidatorArgs } from "../options.js";
|
|
5
5
|
import { ISlashingProtectionArgs } from "./options.js";
|
|
6
6
|
type ImportArgs = {
|
|
7
|
-
file
|
|
7
|
+
file?: string;
|
|
8
8
|
};
|
|
9
9
|
export declare const importCmd: CliCommand<ImportArgs, ISlashingProtectionArgs & AccountValidatorArgs & GlobalArgs & LogArgs>;
|
|
10
10
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import fs from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { getNodeLogger } from "@lodestar/logger/node";
|
|
4
|
+
import { YargsError } from "../../../util/index.js";
|
|
4
5
|
import { parseLoggerArgs } from "../../../util/logger.js";
|
|
5
6
|
import { getBeaconConfigFromArgs } from "../../../config/index.js";
|
|
6
7
|
import { getValidatorPaths } from "../paths.js";
|
|
@@ -23,6 +24,9 @@ export const importCmd = {
|
|
|
23
24
|
},
|
|
24
25
|
handler: async (args) => {
|
|
25
26
|
var _a;
|
|
27
|
+
const { file } = args;
|
|
28
|
+
if (!file)
|
|
29
|
+
throw new YargsError("must provide file arg");
|
|
26
30
|
const { config, network } = getBeaconConfigFromArgs(args);
|
|
27
31
|
const validatorPaths = getValidatorPaths(args, network);
|
|
28
32
|
// slashingProtection commands are fast so do not require logFile feature
|
|
@@ -35,8 +39,8 @@ export const importCmd = {
|
|
|
35
39
|
// - known genesis data from existing network
|
|
36
40
|
// - else fetch from beacon node
|
|
37
41
|
const genesisValidatorsRoot = (_a = (await metadata.getGenesisValidatorsRoot())) !== null && _a !== void 0 ? _a : (await getGenesisValidatorsRoot(args));
|
|
38
|
-
logger.verbose("Reading slashing protection data", { file
|
|
39
|
-
const interchangeStr = await fs.promises.readFile(
|
|
42
|
+
logger.verbose("Reading slashing protection data", { file });
|
|
43
|
+
const interchangeStr = await fs.promises.readFile(file, "utf8");
|
|
40
44
|
const interchangeJson = JSON.parse(interchangeStr);
|
|
41
45
|
await slashingProtection.importInterchange(interchangeJson, genesisValidatorsRoot, logger);
|
|
42
46
|
logger.info("Import completed successfully");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../../../src/cmds/validator/slashingProtection/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../../../src/cmds/validator/slashingProtection/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAa,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAIxD,OAAO,EAAC,uBAAuB,EAAC,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAC,iBAAiB,EAAC,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAC,wBAAwB,EAAE,qBAAqB,EAAC,MAAM,YAAY,CAAC;AAO3E,MAAM,CAAC,MAAM,SAAS,GACpB;IACE,OAAO,EAAE,QAAQ;IAEjB,QAAQ,EAAE,6BAA6B;IAEvC,QAAQ,EAAE;QACR;YACE,OAAO,EAAE,+EAA+E;YACxF,WAAW,EAAE,0DAA0D;SACxE;KACF;IAED,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,WAAW,EAAE,6DAA6D;YAC1E,YAAY,EAAE,IAAI;YAClB,IAAI,EAAE,QAAQ;SACf;KACF;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;;QACtB,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,UAAU,CAAC,uBAAuB,CAAC,CAAC;QAEzD,MAAM,EAAC,MAAM,EAAE,OAAO,EAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxD,yEAAyE;QACzE,MAAM,MAAM,GAAG,aAAa,CAC1B,eAAe,CAAC,IAAI,EAAE,EAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,CAAC,EAAC,EAAE,MAAM,CAAC,CACxG,CAAC;QAEF,MAAM,EAAC,eAAe,EAAE,MAAM,EAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEnE,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAC,MAAM,EAAC,CAAC,CAAC;QAE5D,MAAM,EAAC,kBAAkB,EAAE,QAAQ,EAAC,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE1F,oCAAoC;QACpC,oCAAoC;QACpC,6CAA6C;QAC7C,gCAAgC;QAChC,MAAM,qBAAqB,GACzB,MAAA,CAAC,MAAM,QAAQ,CAAC,wBAAwB,EAAE,CAAC,mCAAI,CAAC,MAAM,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;QAExF,MAAM,CAAC,OAAO,CAAC,kCAAkC,EAAE,EAAC,IAAI,EAAC,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAgB,CAAC;QAElE,MAAM,kBAAkB,CAAC,iBAAiB,CAAC,eAAe,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAC3F,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;CACF,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { IBeaconNodeOptions } from "@lodestar/beacon-node";
|
|
2
2
|
import { CliCommandOptions } from "../../util/index.js";
|
|
3
3
|
export type ApiArgs = {
|
|
4
|
-
"api.maxGindicesInProof"
|
|
5
|
-
"rest.namespace"
|
|
6
|
-
"rest.cors"
|
|
4
|
+
"api.maxGindicesInProof"?: number;
|
|
5
|
+
"rest.namespace"?: string[];
|
|
6
|
+
"rest.cors"?: string;
|
|
7
7
|
rest: boolean;
|
|
8
|
-
"rest.address"
|
|
8
|
+
"rest.address"?: string;
|
|
9
9
|
"rest.port": number;
|
|
10
|
-
"rest.headerLimit"
|
|
11
|
-
"rest.bodyLimit"
|
|
10
|
+
"rest.headerLimit"?: number;
|
|
11
|
+
"rest.bodyLimit"?: number;
|
|
12
12
|
};
|
|
13
13
|
export declare function parseArgs(args: ApiArgs): IBeaconNodeOptions["api"];
|
|
14
14
|
export declare const options: CliCommandOptions<ApiArgs>;
|
|
@@ -18,7 +18,7 @@ export const options = {
|
|
|
18
18
|
rest: {
|
|
19
19
|
type: "boolean",
|
|
20
20
|
description: "Enable/disable HTTP API",
|
|
21
|
-
|
|
21
|
+
default: defaultOptions.api.rest.enabled,
|
|
22
22
|
group: "api",
|
|
23
23
|
},
|
|
24
24
|
"api.maxGindicesInProof": {
|
|
@@ -57,7 +57,7 @@ export const options = {
|
|
|
57
57
|
"rest.port": {
|
|
58
58
|
type: "number",
|
|
59
59
|
description: "Set port for HTTP API",
|
|
60
|
-
|
|
60
|
+
default: defaultOptions.api.rest.port,
|
|
61
61
|
group: "api",
|
|
62
62
|
},
|
|
63
63
|
"rest.headerLimit": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/options/beaconNodeOptions/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAsB,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAGxF,MAAM,UAAU,GAAG,GAAG,CAAC;AAavB,MAAM,UAAU,SAAS,CAAC,IAAa;IACrC,OAAO;QACL,kBAAkB,EAAE,IAAI,CAAC,wBAAwB,CAAC;QAClD,IAAI,EAAE;YACJ,GAAG,EAAE,IAAI,CAAC,gBAAgB,CAA6C;YACvE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;YACvB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC;YAC7B,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;YACvB,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC;YACrC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC;SAClC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAA+B;IACjD,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yBAAyB;QACtC,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/options/beaconNodeOptions/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAsB,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAGxF,MAAM,UAAU,GAAG,GAAG,CAAC;AAavB,MAAM,UAAU,SAAS,CAAC,IAAa;IACrC,OAAO;QACL,kBAAkB,EAAE,IAAI,CAAC,wBAAwB,CAAC;QAClD,IAAI,EAAE;YACJ,GAAG,EAAE,IAAI,CAAC,gBAAgB,CAA6C;YACvE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;YACvB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC;YAC7B,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;YACvB,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC;YACrC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC;SAClC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAA+B;IACjD,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yBAAyB;QACtC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO;QACxC,KAAK,EAAE,KAAK;KACb;IAED,wBAAwB,EAAE;QACxB,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,+EAA+E;QAC5F,kBAAkB,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACjE,KAAK,EAAE,KAAK;KACb;IAED,gBAAgB,EAAE;QAChB,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,CAAC,GAAG,aAAa,EAAE,UAAU,CAAC;QACvC,WAAW,EAAE,mDAAmD,UAAU,4BAA4B;QACtG,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/D,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,CAAC,UAAoB,EAAY,EAAE;YACzC,aAAa;YACb,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,aAAa,CAAC;YAC1D,oDAAoD;YACpD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;KACF;IAED,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,qEAAqE;QAClF,kBAAkB,EAAE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI;QAChD,KAAK,EAAE,KAAK;KACb;IAED,cAAc,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,uBAAuB;QACpC,kBAAkB,EAAE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO;QACnD,KAAK,EAAE,KAAK;KACb;IAED,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,uBAAuB;QACpC,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI;QACrC,KAAK,EAAE,KAAK;KACb;IACD,kBAAkB,EAAE;QAClB,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,0FAA0F;KACxG;IACD,gBAAgB,EAAE;QAChB,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,wEAAwE;KACtF;CACF,CAAC"}
|
|
@@ -2,10 +2,10 @@ import { IBeaconNodeOptions } from "@lodestar/beacon-node";
|
|
|
2
2
|
import { CliCommandOptions } from "../../util/index.js";
|
|
3
3
|
export type ExecutionBuilderArgs = {
|
|
4
4
|
builder: boolean;
|
|
5
|
-
"builder.urls"
|
|
6
|
-
"builder.timeout"
|
|
7
|
-
"builder.faultInspectionWindow"
|
|
8
|
-
"builder.allowedFaults"
|
|
5
|
+
"builder.urls"?: string[];
|
|
6
|
+
"builder.timeout"?: number;
|
|
7
|
+
"builder.faultInspectionWindow"?: number;
|
|
8
|
+
"builder.allowedFaults"?: number;
|
|
9
9
|
};
|
|
10
10
|
export declare function parseArgs(args: ExecutionBuilderArgs): IBeaconNodeOptions["executionBuilder"];
|
|
11
11
|
export declare const options: CliCommandOptions<ExecutionBuilderArgs>;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { defaultExecutionBuilderHttpOpts } from "@lodestar/beacon-node";
|
|
2
2
|
export function parseArgs(args) {
|
|
3
|
+
var _a;
|
|
3
4
|
return {
|
|
4
5
|
enabled: args["builder"],
|
|
5
|
-
urls: args["builder.urls"],
|
|
6
|
+
urls: (_a = args["builder.urls"]) !== null && _a !== void 0 ? _a : defaultExecutionBuilderHttpOpts.urls,
|
|
6
7
|
timeout: args["builder.timeout"],
|
|
7
8
|
faultInspectionWindow: args["builder.faultInspectionWindow"],
|
|
8
9
|
allowedFaults: args["builder.allowedFaults"],
|
|
@@ -12,19 +13,23 @@ export const options = {
|
|
|
12
13
|
builder: {
|
|
13
14
|
description: "Enable builder interface",
|
|
14
15
|
type: "boolean",
|
|
15
|
-
|
|
16
|
+
default: defaultExecutionBuilderHttpOpts.enabled,
|
|
16
17
|
group: "builder",
|
|
17
18
|
},
|
|
18
19
|
"builder.urls": {
|
|
19
20
|
description: "Urls hosting the builder API",
|
|
21
|
+
defaultDescription: defaultExecutionBuilderHttpOpts.urls.join(","),
|
|
20
22
|
type: "array",
|
|
21
|
-
|
|
23
|
+
string: true,
|
|
24
|
+
coerce: (urls) =>
|
|
25
|
+
// Parse ["url1,url2"] to ["url1", "url2"]
|
|
26
|
+
urls.map((item) => item.split(",")).flat(1),
|
|
22
27
|
group: "builder",
|
|
23
28
|
},
|
|
24
29
|
"builder.timeout": {
|
|
25
30
|
description: "Timeout in milliseconds for builder API HTTP client",
|
|
26
31
|
type: "number",
|
|
27
|
-
defaultDescription:
|
|
32
|
+
defaultDescription: String(defaultExecutionBuilderHttpOpts.timeout),
|
|
28
33
|
group: "builder",
|
|
29
34
|
},
|
|
30
35
|
"builder.faultInspectionWindow": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/options/beaconNodeOptions/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/options/beaconNodeOptions/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,+BAA+B,EAAqB,MAAM,uBAAuB,CAAC;AAW1F,MAAM,UAAU,SAAS,CAAC,IAA0B;;IAClD,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;QACxB,IAAI,EAAE,MAAA,IAAI,CAAC,cAAc,CAAC,mCAAI,+BAA+B,CAAC,IAAI;QAClE,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC;QAChC,qBAAqB,EAAE,IAAI,CAAC,+BAA+B,CAAC;QAC5D,aAAa,EAAE,IAAI,CAAC,uBAAuB,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAA4C;IAC9D,OAAO,EAAE;QACP,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,+BAA+B,CAAC,OAAO;QAChD,KAAK,EAAE,SAAS;KACjB;IAED,cAAc,EAAE;QACd,WAAW,EAAE,8BAA8B;QAC3C,kBAAkB,EAAE,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAClE,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,CAAC,IAAc,EAAY,EAAE;QACnC,0CAA0C;QAC1C,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,KAAK,EAAE,SAAS;KACjB;IAED,iBAAiB,EAAE;QACjB,WAAW,EAAE,qDAAqD;QAClE,IAAI,EAAE,QAAQ;QACd,kBAAkB,EAAE,MAAM,CAAC,+BAA+B,CAAC,OAAO,CAAC;QACnE,KAAK,EAAE,SAAS;KACjB;IAED,+BAA+B,EAAE;QAC/B,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,+EAA+E;QAC5F,KAAK,EAAE,SAAS;KACjB;IAED,uBAAuB,EAAE;QACvB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,iFAAiF;QAC9F,KAAK,EAAE,SAAS;KACjB;CACF,CAAC"}
|