@chainsafe/lodestar 1.39.0-dev.7e9e7caf38 → 1.39.0-dev.83fa4f530e
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/handler.d.ts.map +1 -1
- package/lib/cmds/beacon/handler.js +13 -1
- package/lib/cmds/beacon/handler.js.map +1 -1
- package/lib/cmds/dev/options.d.ts +4 -4
- package/lib/cmds/dev/options.d.ts.map +1 -1
- package/lib/cmds/dev/options.js +8 -2
- package/lib/cmds/dev/options.js.map +1 -1
- package/lib/cmds/validator/options.d.ts +2 -2
- package/lib/cmds/validator/options.d.ts.map +1 -1
- package/lib/cmds/validator/options.js +15 -5
- package/lib/cmds/validator/options.js.map +1 -1
- package/lib/cmds/validator/signers/index.js +3 -3
- package/lib/cmds/validator/signers/index.js.map +1 -1
- package/package.json +29 -20
- package/src/cmds/beacon/handler.ts +18 -1
- package/src/cmds/dev/options.ts +9 -3
- package/src/cmds/validator/options.ts +17 -7
- package/src/cmds/validator/signers/index.ts +3 -3
package/.git-data.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/cmds/beacon/handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/cmds/beacon/handler.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,eAAe,EAAqB,MAAM,kBAAkB,CAAC;AAErE,OAAO,EAAC,UAAU,EAAgB,MAAM,uBAAuB,CAAC;AAOhE,OAAO,EAAC,UAAU,EAAsB,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAC,OAAO,EAAC,MAAM,6BAA6B,CAAC;AAYpD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAOxC;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgJhF;AAED,oEAAoE;AACpE,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;;;;;;;;;;;;;;;GA6DpE;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAC3C,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,eAAe,EACvB,QAAQ,SAAe,GACtB,UAAU,CAUZ"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { getHeapStatistics } from "node:v8";
|
|
3
3
|
import { hasher } from "@chainsafe/persistent-merkle-tree";
|
|
4
|
+
import { PubkeyIndexMap } from "@chainsafe/pubkey-index-map";
|
|
4
5
|
import { BeaconDb, BeaconNode } from "@lodestar/beacon-node";
|
|
5
6
|
import { createBeaconConfig } from "@lodestar/config";
|
|
6
7
|
import { LevelDbController } from "@lodestar/db/controller/level";
|
|
7
8
|
import { getNodeLogger } from "@lodestar/logger/node";
|
|
8
9
|
import { ACTIVE_PRESET, PresetName } from "@lodestar/params";
|
|
10
|
+
import { createCachedBeaconState, syncPubkeys } from "@lodestar/state-transition";
|
|
9
11
|
import { ErrorAborted, bytesToInt, formatBytes } from "@lodestar/utils";
|
|
10
12
|
import { BeaconNodeOptions, getBeaconConfigFromArgs } from "../../config/index.js";
|
|
11
13
|
import { getNetworkBootnodes, isKnownNetworkName, readBootnodes } from "../../networks/index.js";
|
|
@@ -50,16 +52,26 @@ export async function beaconHandler(args) {
|
|
|
50
52
|
try {
|
|
51
53
|
const { anchorState, isFinalized, wsCheckpoint } = await initBeaconState(args, beaconPaths.dataDir, config, db, logger);
|
|
52
54
|
const beaconConfig = createBeaconConfig(config, anchorState.genesisValidatorsRoot);
|
|
55
|
+
const pubkey2index = new PubkeyIndexMap();
|
|
56
|
+
const index2pubkey = [];
|
|
57
|
+
syncPubkeys(anchorState.validators.getAllReadonlyValues(), pubkey2index, index2pubkey);
|
|
58
|
+
const cachedState = createCachedBeaconState(anchorState, {
|
|
59
|
+
config: beaconConfig,
|
|
60
|
+
pubkey2index,
|
|
61
|
+
index2pubkey,
|
|
62
|
+
}, { skipSyncPubkeys: true });
|
|
53
63
|
const node = await BeaconNode.init({
|
|
54
64
|
opts: options,
|
|
55
65
|
config: beaconConfig,
|
|
66
|
+
pubkey2index,
|
|
67
|
+
index2pubkey,
|
|
56
68
|
db,
|
|
57
69
|
logger,
|
|
58
70
|
processShutdownCallback,
|
|
59
71
|
privateKey,
|
|
60
72
|
dataDir: beaconPaths.dataDir,
|
|
61
73
|
peerStoreDir: beaconPaths.peerStoreDir,
|
|
62
|
-
anchorState,
|
|
74
|
+
anchorState: cachedState,
|
|
63
75
|
isAnchorStateFinalized: isFinalized,
|
|
64
76
|
wsCheckpoint,
|
|
65
77
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/beacon/handler.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/cmds/beacon/handler.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAkB,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAC,iBAAiB,EAAC,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAa,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAoB,uBAAuB,EAAE,WAAW,EAAC,MAAM,4BAA4B,CAAC;AACnG,OAAO,EAAC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAEtE,OAAO,EAAC,iBAAiB,EAAE,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAC,mBAAmB,EAAE,kBAAkB,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EAAa,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAEvE,OAAO,EACL,gBAAgB,EAChB,KAAK,EACL,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAC,cAAc,EAAC,MAAM,YAAY,CAAC;AAE1C,MAAM,mCAAmC,GAAG,EAAE,GAAG,EAAE,CAAC;AACpD,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC;AAChC,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAExC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAA6B;IAC/D,MAAM,EAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAC,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAEnH,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,2CAA2C,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,aAAa,GAAG,iBAAiB,EAAE,CAAC,eAAe,CAAC;IAC1D,IAAI,aAAa,GAAG,QAAQ,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CACT,yCAAyC,WAAW,CAAC,aAAa,CAAC,wCAAwC,WAAW,CAAC,QAAQ,CAAC,0FAA0F,CAC3N,CAAC;IACJ,CAAC;IAED,yBAAyB;IACzB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3B,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzB,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAE9C,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAC,CAAC,CAAC;IACpD,gFAAgF;IAChF,oBAAoB;IACpB,MAAM,uBAAuB,GAA4B,CAAC,GAAG,EAAE,EAAE;QAC/D,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC,CAAC;IAEF,IAAI,aAAa,KAAK,UAAU,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAEzF,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC,CAAC;IACrG,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,EAAC,CAAC,CAAC;IAEtE,mBAAmB;IACnB,IAAI,CAAC;QACH,MAAM,EAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAC,GAAG,MAAM,eAAe,CACpE,IAAI,EACJ,WAAW,CAAC,OAAO,EACnB,MAAM,EACN,EAAE,EACF,MAAM,CACP,CAAC;QACF,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,qBAAqB,CAAC,CAAC;QACnF,MAAM,YAAY,GAAG,IAAI,cAAc,EAAE,CAAC;QAC1C,MAAM,YAAY,GAAsB,EAAE,CAAC;QAC3C,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QACvF,MAAM,WAAW,GAAG,uBAAuB,CACzC,WAAW,EACX;YACE,MAAM,EAAE,YAAY;YACpB,YAAY;YACZ,YAAY;SACb,EACD,EAAC,eAAe,EAAE,IAAI,EAAC,CACxB,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC;YACjC,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,YAAY;YACpB,YAAY;YACZ,YAAY;YACZ,EAAE;YACF,MAAM;YACN,uBAAuB;YACvB,UAAU;YACV,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,WAAW,EAAE,WAAW;YACxB,sBAAsB,EAAE,WAAW;YACnC,YAAY;SACb,CAAC,CAAC;QAEH,qDAAqD;QACrD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,UAA0C,CAAC,EAAE,GAAG,IAAI,CAAC;QACxD,CAAC;QAED,2CAA2C;QAC3C,MAAM,EAAC,2BAA2B,EAAE,wBAAwB,EAAC,GAAG,OAAO,CAAC,KAAK,CAAC;QAC9E,MAAM,8BAA8B,GAClC,2BAA2B,IAAI,wBAAwB;YACrD,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE;gBACf,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAG,kBAAkB,CACzC,2BAA2B,EAC3B,CAAC,IAAI,CAAC,sCAAsC,IAAI,mCAAmC,CAAC,GAAG,WAAW,CACnG,CAAC;oBACF,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAC,gBAAgB,EAAC,CAAC,CAAC;gBAChE,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAC,2BAA2B,EAAC,EAAE,CAAU,CAAC,CAAC;gBAC9F,CAAC;gBACD,oBAAoB;YACtB,CAAC,EAAE,WAAW,CAAC;YACjB,CAAC,CAAC,IAAI,CAAC;QAEX,+DAA+D;QAC/D,kBAAkB,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;oBAChE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBACxD,gBAAgB,CAAC,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC;gBACjD,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,EAAE,CAAU,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;YACD,eAAe,CAAC,KAAK,EAAE,CAAC;YAExB,IAAI,8BAA8B,KAAK,IAAI,EAAE,CAAC;gBAC5C,aAAa,CAAC,8BAA8B,CAAC,CAAC;YAChD,CAAC;QACH,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAE7B,eAAe,CAAC,MAAM,CAAC,gBAAgB,CACrC,OAAO,EACP,KAAK,IAAI,EAAE;YACT,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBACnC,yDAAyD;gBACzD,wDAAwD;gBACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,4FAA4F;gBAC5F,2DAA2D;gBAC3D,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,EAAE,CAAU,CAAC,CAAC;gBACzD,2CAA2C;gBAC3C,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;gBACjB,+DAA+D;gBAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC,EACD,EAAC,IAAI,EAAE,IAAI,EAAC,CACb,CAAC;IACJ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;QAEjB,IAAI,CAAC,YAAY,YAAY,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,oEAAoE;QAC9F,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;AACH,CAAC;AAED,oEAAoE;AACpE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAA6B;IACnE,MAAM,EAAC,MAAM,EAAE,OAAO,EAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAExD,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;IAE3E,MAAM,EAAC,OAAO,EAAE,MAAM,EAAC,GAAG,cAAc,EAAE,CAAC;IAC3C,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD,iDAAiD;IACjD,iBAAiB,CAAC,GAAG,CAAC,EAAC,EAAE,EAAE,EAAC,IAAI,EAAE,WAAW,CAAC,KAAK,EAAC,EAAC,CAAC,CAAC;IACvD,iBAAiB,CAAC,GAAG,CAAC;QACpB,KAAK,EAAE;YACL,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,2BAA2B,EAAE,WAAW,CAAC,2BAA2B;YACpE,wBAAwB,EAAE,WAAW,CAAC,wBAAwB;SAC/D;KACF,CAAC,CAAC;IACH,iFAAiF;IACjF,iBAAiB,CAAC,GAAG,CAAC,EAAC,OAAO,EAAE,EAAC,QAAQ,EAAE,EAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAC,EAAC,EAAC,CAAC,CAAC;IACzE,4DAA4D;IAC5D,iBAAiB,CAAC,GAAG,CAAC,EAAC,GAAG,EAAE,EAAC,MAAM,EAAE,OAAO,EAAC,EAAC,CAAC,CAAC;IAEhD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,EAAC,UAAU,EAAE,GAAG,EAAC,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAE1F,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QAC1B,+BAA+B;QAC/B,iBAAiB,CAAC,GAAG,CAAC,EAAC,OAAO,EAAE,EAAC,MAAM,EAAE,EAAC,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAAC,SAAS,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAC,EAAC,EAAC,EAAC,CAAC,CAAC;QAE7G,2CAA2C;QAC3C,MAAM,SAAS,GAAG,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,CAChF,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3D,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CACtE,CAAC;QACF,yCAAyC;QACzC,iBAAiB,CAAC,GAAG,CAAC,EAAC,OAAO,EAAE,EAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,EAAC,EAAC,EAAC,CAAC,CAAC;IAClF,CAAC;IAED,iBAAiB,CAAC,GAAG,CAAC,EAAC,KAAK,EAAE,EAAC,wBAAwB,EAAE,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAC,EAAC,CAAC,CAAC;IAEnH,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,iBAAiB,CAAC,GAAG,CAAC,EAAC,KAAK,EAAE,EAAC,wBAAwB,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,iBAAiB,CAAC,GAAG,CAAC,EAAC,OAAO,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,EAAE,GAAG,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IAC1E,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,YAAY,OAAO,EAAE,CAAC;QACzC,8CAA8C;QAC9C,iBAAiB,CAAC,GAAG,CAAC,EAAC,OAAO,EAAE,EAAC,OAAO,EAAC,EAAC,CAAC,CAAC;QAC5C,gDAAgD;QAChD,iBAAiB,CAAC,GAAG,CAAC,EAAC,gBAAgB,EAAE,EAAC,SAAS,EAAE,UAAU,EAAC,EAAC,CAAC,CAAC;QACnE,sCAAsC;QACtC,iBAAiB,CAAC,GAAG,CAAC,EAAC,eAAe,EAAE,EAAC,UAAU,EAAE,UAAU,EAAC,EAAC,CAAC,CAAC;QACnE,2CAA2C;QAC3C,iBAAiB,CAAC,GAAG,CAAC,EAAC,eAAe,EAAE,EAAC,MAAM,EAAE,OAAO,EAAC,EAAC,CAAC,CAAC;IAC9D,CAAC;IAED,uBAAuB;IACvB,MAAM,OAAO,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC;IAEpD,OAAO,EAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,IAA2C,EAC3C,OAAe,EACf,MAAuB,EACvB,QAAQ,GAAG,YAAY;IAEvB,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,EAAC,kBAAkB,EAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAClF,IAAI,CAAC;QACH,gBAAgB,CAAC,IAAI,EAAE,EAAC,kBAAkB,EAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,EAAE,EAAE,CAAU,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAClC,IAA6B,EAC7B,MAAuB,EACvB,MAAkB,EAClB,GAAgB;IAEhB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,wBAAwB,CAAC;IACzC,CAAC;IAED,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvE,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,wBAAwB,GAAG,CAAC,CAAC,CAAC;QACzE,IAAI,MAAM,GAAG,gBAAgB,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CACT,+FAA+F,MAAM,EAAE,CACxG,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,mBAAmB,CAAC,CAAC;AACtD,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { IValidatorCliArgs } from "../validator/options.js";
|
|
|
4
4
|
type IDevOwnArgs = {
|
|
5
5
|
genesisEth1Hash?: string;
|
|
6
6
|
genesisValidators: number;
|
|
7
|
-
startValidators?:
|
|
7
|
+
startValidators?: number[];
|
|
8
8
|
genesisTime?: number;
|
|
9
9
|
reset?: boolean;
|
|
10
10
|
dumpTestnetFiles?: string;
|
|
@@ -14,7 +14,7 @@ export declare const devOptions: {
|
|
|
14
14
|
genesisValidators: CliOptionDefinition<number> & (Required<Pick<import("yargs").Options, "default">> | {
|
|
15
15
|
demandOption: true;
|
|
16
16
|
});
|
|
17
|
-
startValidators: CliOptionDefinition<
|
|
17
|
+
startValidators: CliOptionDefinition<number[] | undefined>;
|
|
18
18
|
genesisTime: CliOptionDefinition<number | undefined>;
|
|
19
19
|
reset: CliOptionDefinition<boolean | undefined>;
|
|
20
20
|
dumpTestnetFiles: CliOptionDefinition<string | undefined>;
|
|
@@ -177,9 +177,9 @@ export declare const devOptions: {
|
|
|
177
177
|
"externalSigner.fetch": CliOptionDefinition<boolean | undefined>;
|
|
178
178
|
"externalSigner.fetchInterval": CliOptionDefinition<number | undefined>;
|
|
179
179
|
distributed: CliOptionDefinition<boolean | undefined>;
|
|
180
|
-
interopIndexes: CliOptionDefinition<
|
|
180
|
+
interopIndexes: CliOptionDefinition<number[] | undefined>;
|
|
181
181
|
fromMnemonic: CliOptionDefinition<string | undefined>;
|
|
182
|
-
mnemonicIndexes: CliOptionDefinition<
|
|
182
|
+
mnemonicIndexes: CliOptionDefinition<number[] | undefined>;
|
|
183
183
|
};
|
|
184
184
|
export type IDevArgs = BeaconArgs & IValidatorCliArgs & IDevOwnArgs;
|
|
185
185
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/cmds/dev/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,mBAAmB,EAAC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/cmds/dev/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,mBAAmB,EAAC,MAAM,iBAAiB,CAAC;AAIvE,OAAO,EAAC,UAAU,EAAgB,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAC,iBAAiB,EAAmB,MAAM,yBAAyB,CAAC;AAE5E,KAAK,WAAW,GAAG;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAyFF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKtB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,iBAAiB,GAAG,WAAW,CAAC"}
|
package/lib/cmds/dev/options.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { beaconNodeOptions, globalOptions } from "../../options/index.js";
|
|
2
|
+
import { parseRange } from "../../util/format.js";
|
|
2
3
|
import { beaconOptions } from "../beacon/options.js";
|
|
3
4
|
import { validatorOptions } from "../validator/options.js";
|
|
4
5
|
const devOwnOptions = {
|
|
@@ -15,8 +16,13 @@ const devOwnOptions = {
|
|
|
15
16
|
group: "dev",
|
|
16
17
|
},
|
|
17
18
|
startValidators: {
|
|
18
|
-
description: "Start interop validators in inclusive range with notation '0..7'",
|
|
19
|
-
type: "
|
|
19
|
+
description: "Start interop validators in inclusive range(s) with notation '0..7'",
|
|
20
|
+
type: "array",
|
|
21
|
+
coerce: (indexes) =>
|
|
22
|
+
// Parse ["11..13,15..17"] to ["11..13", "15..17"]
|
|
23
|
+
indexes
|
|
24
|
+
.flatMap((item) => item.split(","))
|
|
25
|
+
.flatMap(parseRange),
|
|
20
26
|
group: "dev",
|
|
21
27
|
},
|
|
22
28
|
genesisTime: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/dev/options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAa,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAoB,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAW5E,MAAM,aAAa,GAAmC;IACpD,eAAe,EAAE;QACf,WAAW,EAAE,wDAAwD;QACrE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IAED,iBAAiB,EAAE;QACjB,KAAK,EAAE,CAAC,GAAG,CAAC;QACZ,WAAW,EAAE,4EAA4E;QACzF,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IAED,eAAe,EAAE;QACf,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/dev/options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAa,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAoB,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAW5E,MAAM,aAAa,GAAmC;IACpD,eAAe,EAAE;QACf,WAAW,EAAE,wDAAwD;QACrE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IAED,iBAAiB,EAAE;QACjB,KAAK,EAAE,CAAC,GAAG,CAAC;QACZ,WAAW,EAAE,4EAA4E;QACzF,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IAED,eAAe,EAAE;QACf,WAAW,EAAE,qEAAqE;QAClF,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,CAAC,OAAiB,EAAY,EAAE;QACtC,kDAAkD;QAClD,OAAO;aACJ,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aAClC,OAAO,CAAC,UAAU,CAAC;QACxB,KAAK,EAAE,KAAK;KACb;IAED,WAAW,EAAE;QACX,WAAW,EAAE,kDAAkD;QAC/D,kBAAkB,EAAE,KAAK;QACzB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;IAED,KAAK,EAAE;QACL,WAAW,EAAE,2CAA2C;QACxD,KAAK,EAAE,CAAC,GAAG,CAAC;QACZ,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,KAAK;KACb;IAED,gBAAgB,EAAE;QAChB,WAAW,EAAE,6BAA6B;QAC1C,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,KAAK;KACb;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,wBAAwB,GAAqF;IACjH,8DAA8D;IAC9D,wEAAwE;IACxE,OAAO,EAAE;QACP,GAAG,aAAa,CAAC,OAAO;QACxB,OAAO,EAAE,KAAoB;KAC9B;IAED,mBAAmB,EAAE;QACnB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;QACzC,kBAAkB,EAAE,SAAS;QAC7B,OAAO,EAAE,IAAI;KACd;IACD,iCAAiC,EAAE;QACjC,GAAG,iBAAiB,CAAC,iCAAiC,CAAC;QACvD,kBAAkB,EAAE,SAAS;QAC7B,OAAO,EAAE,IAAI;KACd;IACD,IAAI,EAAE;QACJ,GAAG,iBAAiB,CAAC,IAAI;QACzB,kBAAkB,EAAE,SAAS;QAC7B,OAAO,EAAE,IAAI;KACd;IACD,kBAAkB,EAAE;QAClB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC;QACxC,OAAO,EAAE,IAAI;KACd;IACD,gBAAgB,EAAE;QAChB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC;QACtC,OAAO,EAAE,IAAI;KACd;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,GAAG,aAAa;IAChB,GAAG,gBAAgB;IACnB,GAAG,wBAAwB;IAC3B,GAAG,aAAa;CACjB,CAAC"}
|
|
@@ -48,9 +48,9 @@ export type IValidatorCliArgs = AccountValidatorArgs & KeymanagerArgs & LogArgs
|
|
|
48
48
|
"externalSigner.fetch"?: boolean;
|
|
49
49
|
"externalSigner.fetchInterval"?: number;
|
|
50
50
|
distributed?: boolean;
|
|
51
|
-
interopIndexes?:
|
|
51
|
+
interopIndexes?: number[];
|
|
52
52
|
fromMnemonic?: string;
|
|
53
|
-
mnemonicIndexes?:
|
|
53
|
+
mnemonicIndexes?: number[];
|
|
54
54
|
metrics?: boolean;
|
|
55
55
|
"metrics.port"?: number;
|
|
56
56
|
"metrics.address"?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/cmds/validator/options.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAGlD,OAAO,EAAC,OAAO,EAAa,MAAM,6BAA6B,CAAC;AAKhE,MAAM,MAAM,oBAAoB,GAAG;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,8BAA8B;;;;CAI1C,CAAC;AAEF,eAAO,MAAM,iCAAiC;;;;;CAK7C,CAAC;AAGF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,GAClD,cAAc,GACd,OAAO,GAAG;IACR,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAErC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAEnC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExC,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/cmds/validator/options.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { WireFormat, defaultInit } from "@lodestar/api";
|
|
|
2
2
|
import { defaultOptions } from "@lodestar/validator";
|
|
3
3
|
import { coerceCors, enabledAllBashFriendly } from "../../options/beaconNodeOptions/api.js";
|
|
4
4
|
import { logOptions } from "../../options/logOptions.js";
|
|
5
|
-
import { ensure0xPrefix } from "../../util/index.js";
|
|
5
|
+
import { ensure0xPrefix, parseRange } from "../../util/index.js";
|
|
6
6
|
import { keymanagerRestApiServerOptsDefault } from "./keymanager/server.js";
|
|
7
7
|
import { defaultAccountPaths, defaultValidatorPaths } from "./paths.js";
|
|
8
8
|
export const validatorMetricsDefaultOptions = {
|
|
@@ -315,8 +315,13 @@ export const validatorOptions = {
|
|
|
315
315
|
// For testing only
|
|
316
316
|
interopIndexes: {
|
|
317
317
|
hidden: true,
|
|
318
|
-
description: "Range (inclusive) of interop key indexes to validate with: 0..16",
|
|
319
|
-
type: "
|
|
318
|
+
description: "Range(s) (inclusive) of interop key indexes to validate with: 0..16",
|
|
319
|
+
type: "array",
|
|
320
|
+
coerce: (indexes) =>
|
|
321
|
+
// Parse ["11..13,15..17"] to ["11..13", "15..17"]
|
|
322
|
+
indexes
|
|
323
|
+
.flatMap((item) => item.split(","))
|
|
324
|
+
.flatMap(parseRange),
|
|
320
325
|
},
|
|
321
326
|
fromMnemonic: {
|
|
322
327
|
hidden: true,
|
|
@@ -325,8 +330,13 @@ export const validatorOptions = {
|
|
|
325
330
|
},
|
|
326
331
|
mnemonicIndexes: {
|
|
327
332
|
hidden: true,
|
|
328
|
-
description: "UNSAFE. Range (inclusive) of mnemonic key indexes to validate with: 0..16",
|
|
329
|
-
type: "
|
|
333
|
+
description: "UNSAFE. Range(s) (inclusive) of mnemonic key indexes to validate with: 0..16",
|
|
334
|
+
type: "array",
|
|
335
|
+
coerce: (indexes) =>
|
|
336
|
+
// Parse ["11..13,15..17"] to ["11..13", "15..17"]
|
|
337
|
+
indexes
|
|
338
|
+
.flatMap((item) => item.split(","))
|
|
339
|
+
.flatMap(parseRange),
|
|
330
340
|
},
|
|
331
341
|
};
|
|
332
342
|
//# sourceMappingURL=options.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/validator/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,UAAU,EAAE,sBAAsB,EAAC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,EAAU,UAAU,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../src/cmds/validator/options.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import { interopSecretKey } from "@lodestar/state-transition";
|
|
|
5
5
|
import { isValidHttpUrl } from "@lodestar/utils";
|
|
6
6
|
import { SignerType, externalSignerGetKeys } from "@lodestar/validator";
|
|
7
7
|
import { defaultNetwork } from "../../../options/index.js";
|
|
8
|
-
import { YargsError, assertValidPubkeysHex
|
|
8
|
+
import { YargsError, assertValidPubkeysHex } from "../../../util/index.js";
|
|
9
9
|
import { showProgress } from "../../../util/progress.js";
|
|
10
10
|
import { decryptKeystoreDefinitions } from "../keymanager/decryptKeystoreDefinitions.js";
|
|
11
11
|
import { PersistedKeysBackend } from "../keymanager/persistedKeys.js";
|
|
@@ -41,7 +41,7 @@ export async function getSignersFromArgs(args, network, { logger, signal }) {
|
|
|
41
41
|
const accountPaths = getAccountPaths(args, network);
|
|
42
42
|
// ONLY USE FOR TESTNETS - Derive interop keys
|
|
43
43
|
if (args.interopIndexes) {
|
|
44
|
-
const indexes =
|
|
44
|
+
const indexes = args.interopIndexes;
|
|
45
45
|
// Using a remote signer with TESTNETS
|
|
46
46
|
if (args["externalSigner.pubkeys"] || args["externalSigner.fetch"]) {
|
|
47
47
|
return getRemoteSigners(args);
|
|
@@ -57,7 +57,7 @@ export async function getSignersFromArgs(args, network, { logger, signal }) {
|
|
|
57
57
|
throw new YargsError("Must specify mnemonicIndexes with fromMnemonic");
|
|
58
58
|
}
|
|
59
59
|
const masterSK = deriveKeyFromMnemonic(args.fromMnemonic);
|
|
60
|
-
const indexes =
|
|
60
|
+
const indexes = Array.from(new Set(args.mnemonicIndexes));
|
|
61
61
|
return indexes.map((index) => ({
|
|
62
62
|
type: SignerType.Local,
|
|
63
63
|
secretKey: SecretKey.fromBytes(deriveEth2ValidatorKeys(masterSK, index).signing),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cmds/validator/signers/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,uBAAuB,EAAE,qBAAqB,EAAC,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAmB,cAAc,EAAC,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAS,UAAU,EAAE,qBAAqB,EAAC,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAa,cAAc,EAAC,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAC,UAAU,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cmds/validator/signers/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chainsafe/lodestar",
|
|
3
|
-
"version": "1.39.0-dev.
|
|
3
|
+
"version": "1.39.0-dev.83fa4f530e",
|
|
4
4
|
"description": "Command line interface for lodestar",
|
|
5
5
|
"author": "ChainSafe Systems",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -28,15 +28,15 @@
|
|
|
28
28
|
},
|
|
29
29
|
"scripts": {
|
|
30
30
|
"clean": "rm -rf lib && rm -f *.tsbuildinfo",
|
|
31
|
-
"build": "tsc -p tsconfig.build.json &&
|
|
32
|
-
"build:release": "
|
|
31
|
+
"build": "tsc -p tsconfig.build.json && pnpm write-git-data",
|
|
32
|
+
"build:release": "pnpm clean && pnpm run build",
|
|
33
33
|
"build:watch": "tsc -p tsconfig.build.json --watch",
|
|
34
34
|
"write-git-data": "node lib/util/gitData/writeGitData.js",
|
|
35
35
|
"check-build": "node -e \"(async function() { await import('./lib/index.js') })()\" lodestar --help",
|
|
36
36
|
"check-types": "tsc",
|
|
37
37
|
"docs:build": "node --loader ts-node/esm ./docsgen/index.ts",
|
|
38
38
|
"lint": "biome check src/ test/",
|
|
39
|
-
"lint:fix": "
|
|
39
|
+
"lint:fix": "pnpm run lint --write",
|
|
40
40
|
"test:unit": "vitest run --project unit --project unit-minimal",
|
|
41
41
|
"test:e2e": "vitest run --project e2e --project e2e-mainnet",
|
|
42
42
|
"test:sim:multifork": "LODESTAR_PRESET=minimal DOTENV_CONFIG_PATH=../../.env.test node -r dotenv/config --loader ts-node/esm test/sim/multiFork.test.ts",
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
"test:sim:endpoints": "LODESTAR_PRESET=minimal DOTENV_CONFIG_PATH=../../.env.test node -r dotenv/config --loader ts-node/esm test/sim/endpoints.test.ts",
|
|
45
45
|
"test:sim:deneb": "LODESTAR_PRESET=minimal DOTENV_CONFIG_PATH=../../.env.test node -r dotenv/config --loader ts-node/esm test/sim/deneb.test.ts",
|
|
46
46
|
"test:sim:backup_eth_provider": "LODESTAR_PRESET=minimal DOTENV_CONFIG_PATH=../../.env.test node -r dotenv/config --loader ts-node/esm test/sim/backupEthProvider.test.ts",
|
|
47
|
-
"test": "
|
|
48
|
-
"check-readme": "
|
|
47
|
+
"test": "pnpm test:unit && pnpm test:e2e",
|
|
48
|
+
"check-readme": "pnpm exec ts-node ../../scripts/check_readme.ts"
|
|
49
49
|
},
|
|
50
50
|
"repository": {
|
|
51
51
|
"type": "git",
|
|
@@ -64,22 +64,23 @@
|
|
|
64
64
|
"@chainsafe/discv5": "^11.0.4",
|
|
65
65
|
"@chainsafe/enr": "^5.0.1",
|
|
66
66
|
"@chainsafe/persistent-merkle-tree": "^1.2.1",
|
|
67
|
+
"@chainsafe/pubkey-index-map": "^3.0.0",
|
|
67
68
|
"@chainsafe/ssz": "^1.2.2",
|
|
68
69
|
"@chainsafe/threads": "^1.11.3",
|
|
69
70
|
"@libp2p/crypto": "^5.0.15",
|
|
70
71
|
"@libp2p/interface": "^2.7.0",
|
|
71
72
|
"@libp2p/peer-id": "^5.1.0",
|
|
72
|
-
"@lodestar/api": "1.39.0-dev.
|
|
73
|
-
"@lodestar/beacon-node": "1.39.0-dev.
|
|
74
|
-
"@lodestar/config": "1.39.0-dev.
|
|
75
|
-
"@lodestar/db": "1.39.0-dev.
|
|
76
|
-
"@lodestar/light-client": "1.39.0-dev.
|
|
77
|
-
"@lodestar/logger": "1.39.0-dev.
|
|
78
|
-
"@lodestar/params": "1.39.0-dev.
|
|
79
|
-
"@lodestar/state-transition": "1.39.0-dev.
|
|
80
|
-
"@lodestar/types": "1.39.0-dev.
|
|
81
|
-
"@lodestar/utils": "1.39.0-dev.
|
|
82
|
-
"@lodestar/validator": "1.39.0-dev.
|
|
73
|
+
"@lodestar/api": "^1.39.0-dev.83fa4f530e",
|
|
74
|
+
"@lodestar/beacon-node": "^1.39.0-dev.83fa4f530e",
|
|
75
|
+
"@lodestar/config": "^1.39.0-dev.83fa4f530e",
|
|
76
|
+
"@lodestar/db": "^1.39.0-dev.83fa4f530e",
|
|
77
|
+
"@lodestar/light-client": "^1.39.0-dev.83fa4f530e",
|
|
78
|
+
"@lodestar/logger": "^1.39.0-dev.83fa4f530e",
|
|
79
|
+
"@lodestar/params": "^1.39.0-dev.83fa4f530e",
|
|
80
|
+
"@lodestar/state-transition": "^1.39.0-dev.83fa4f530e",
|
|
81
|
+
"@lodestar/types": "^1.39.0-dev.83fa4f530e",
|
|
82
|
+
"@lodestar/utils": "^1.39.0-dev.83fa4f530e",
|
|
83
|
+
"@lodestar/validator": "^1.39.0-dev.83fa4f530e",
|
|
83
84
|
"@multiformats/multiaddr": "^12.1.3",
|
|
84
85
|
"deepmerge": "^4.3.1",
|
|
85
86
|
"ethers": "^6.7.0",
|
|
@@ -94,12 +95,20 @@
|
|
|
94
95
|
"yargs": "^17.7.1"
|
|
95
96
|
},
|
|
96
97
|
"devDependencies": {
|
|
97
|
-
"@
|
|
98
|
+
"@chainsafe/as-sha256": "^1.2.0",
|
|
99
|
+
"@ethereumjs/rlp": "^4.0.1",
|
|
100
|
+
"@lodestar/test-utils": "^1.39.0-dev.83fa4f530e",
|
|
98
101
|
"@types/debug": "^4.1.7",
|
|
99
102
|
"@types/inquirer": "^9.0.3",
|
|
103
|
+
"@types/js-yaml": "^4.0.5",
|
|
100
104
|
"@types/proper-lockfile": "^4.1.4",
|
|
105
|
+
"@types/tmp": "^0.2.3",
|
|
101
106
|
"@types/yargs": "^17.0.24",
|
|
102
|
-
"
|
|
107
|
+
"ethereum-cryptography": "^2.2.1",
|
|
108
|
+
"fastify": "^5.2.1",
|
|
109
|
+
"tmp": "^0.2.4",
|
|
110
|
+
"web3": "^4.0.3",
|
|
111
|
+
"web3-eth-accounts": "^4.0.3"
|
|
103
112
|
},
|
|
104
|
-
"gitHead": "
|
|
113
|
+
"gitHead": "d3034acf66651c2a33dc7f8ebc179ff1ae238fc4"
|
|
105
114
|
}
|
|
@@ -2,11 +2,13 @@ import path from "node:path";
|
|
|
2
2
|
import {getHeapStatistics} from "node:v8";
|
|
3
3
|
import {SignableENR} from "@chainsafe/enr";
|
|
4
4
|
import {hasher} from "@chainsafe/persistent-merkle-tree";
|
|
5
|
+
import {PubkeyIndexMap} from "@chainsafe/pubkey-index-map";
|
|
5
6
|
import {BeaconDb, BeaconNode} from "@lodestar/beacon-node";
|
|
6
7
|
import {ChainForkConfig, createBeaconConfig} from "@lodestar/config";
|
|
7
8
|
import {LevelDbController} from "@lodestar/db/controller/level";
|
|
8
9
|
import {LoggerNode, getNodeLogger} from "@lodestar/logger/node";
|
|
9
10
|
import {ACTIVE_PRESET, PresetName} from "@lodestar/params";
|
|
11
|
+
import {Index2PubkeyCache, createCachedBeaconState, syncPubkeys} from "@lodestar/state-transition";
|
|
10
12
|
import {ErrorAborted, bytesToInt, formatBytes} from "@lodestar/utils";
|
|
11
13
|
import {ProcessShutdownCallback} from "@lodestar/validator";
|
|
12
14
|
import {BeaconNodeOptions, getBeaconConfigFromArgs} from "../../config/index.js";
|
|
@@ -78,16 +80,31 @@ export async function beaconHandler(args: BeaconArgs & GlobalArgs): Promise<void
|
|
|
78
80
|
logger
|
|
79
81
|
);
|
|
80
82
|
const beaconConfig = createBeaconConfig(config, anchorState.genesisValidatorsRoot);
|
|
83
|
+
const pubkey2index = new PubkeyIndexMap();
|
|
84
|
+
const index2pubkey: Index2PubkeyCache = [];
|
|
85
|
+
syncPubkeys(anchorState.validators.getAllReadonlyValues(), pubkey2index, index2pubkey);
|
|
86
|
+
const cachedState = createCachedBeaconState(
|
|
87
|
+
anchorState,
|
|
88
|
+
{
|
|
89
|
+
config: beaconConfig,
|
|
90
|
+
pubkey2index,
|
|
91
|
+
index2pubkey,
|
|
92
|
+
},
|
|
93
|
+
{skipSyncPubkeys: true}
|
|
94
|
+
);
|
|
95
|
+
|
|
81
96
|
const node = await BeaconNode.init({
|
|
82
97
|
opts: options,
|
|
83
98
|
config: beaconConfig,
|
|
99
|
+
pubkey2index,
|
|
100
|
+
index2pubkey,
|
|
84
101
|
db,
|
|
85
102
|
logger,
|
|
86
103
|
processShutdownCallback,
|
|
87
104
|
privateKey,
|
|
88
105
|
dataDir: beaconPaths.dataDir,
|
|
89
106
|
peerStoreDir: beaconPaths.peerStoreDir,
|
|
90
|
-
anchorState,
|
|
107
|
+
anchorState: cachedState,
|
|
91
108
|
isAnchorStateFinalized: isFinalized,
|
|
92
109
|
wsCheckpoint,
|
|
93
110
|
});
|
package/src/cmds/dev/options.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import {CliCommandOptions, CliOptionDefinition} from "@lodestar/utils";
|
|
2
2
|
import {NetworkName} from "../../networks/index.js";
|
|
3
3
|
import {beaconNodeOptions, globalOptions} from "../../options/index.js";
|
|
4
|
+
import {parseRange} from "../../util/format.ts";
|
|
4
5
|
import {BeaconArgs, beaconOptions} from "../beacon/options.js";
|
|
5
6
|
import {IValidatorCliArgs, validatorOptions} from "../validator/options.js";
|
|
6
7
|
|
|
7
8
|
type IDevOwnArgs = {
|
|
8
9
|
genesisEth1Hash?: string;
|
|
9
10
|
genesisValidators: number;
|
|
10
|
-
startValidators?:
|
|
11
|
+
startValidators?: number[];
|
|
11
12
|
genesisTime?: number;
|
|
12
13
|
reset?: boolean;
|
|
13
14
|
dumpTestnetFiles?: string;
|
|
@@ -29,8 +30,13 @@ const devOwnOptions: CliCommandOptions<IDevOwnArgs> = {
|
|
|
29
30
|
},
|
|
30
31
|
|
|
31
32
|
startValidators: {
|
|
32
|
-
description: "Start interop validators in inclusive range with notation '0..7'",
|
|
33
|
-
type: "
|
|
33
|
+
description: "Start interop validators in inclusive range(s) with notation '0..7'",
|
|
34
|
+
type: "array",
|
|
35
|
+
coerce: (indexes: string[]): number[] =>
|
|
36
|
+
// Parse ["11..13,15..17"] to ["11..13", "15..17"]
|
|
37
|
+
indexes
|
|
38
|
+
.flatMap((item) => item.split(","))
|
|
39
|
+
.flatMap(parseRange),
|
|
34
40
|
group: "dev",
|
|
35
41
|
},
|
|
36
42
|
|
|
@@ -3,7 +3,7 @@ import {CliCommandOptions} from "@lodestar/utils";
|
|
|
3
3
|
import {defaultOptions} from "@lodestar/validator";
|
|
4
4
|
import {coerceCors, enabledAllBashFriendly} from "../../options/beaconNodeOptions/api.js";
|
|
5
5
|
import {LogArgs, logOptions} from "../../options/logOptions.js";
|
|
6
|
-
import {ensure0xPrefix} from "../../util/index.js";
|
|
6
|
+
import {ensure0xPrefix, parseRange} from "../../util/index.js";
|
|
7
7
|
import {keymanagerRestApiServerOptsDefault} from "./keymanager/server.js";
|
|
8
8
|
import {defaultAccountPaths, defaultValidatorPaths} from "./paths.js";
|
|
9
9
|
|
|
@@ -70,9 +70,9 @@ export type IValidatorCliArgs = AccountValidatorArgs &
|
|
|
70
70
|
|
|
71
71
|
distributed?: boolean;
|
|
72
72
|
|
|
73
|
-
interopIndexes?:
|
|
73
|
+
interopIndexes?: number[];
|
|
74
74
|
fromMnemonic?: string;
|
|
75
|
-
mnemonicIndexes?:
|
|
75
|
+
mnemonicIndexes?: number[];
|
|
76
76
|
|
|
77
77
|
metrics?: boolean;
|
|
78
78
|
"metrics.port"?: number;
|
|
@@ -453,8 +453,13 @@ export const validatorOptions: CliCommandOptions<IValidatorCliArgs> = {
|
|
|
453
453
|
|
|
454
454
|
interopIndexes: {
|
|
455
455
|
hidden: true,
|
|
456
|
-
description: "Range (inclusive) of interop key indexes to validate with: 0..16",
|
|
457
|
-
type: "
|
|
456
|
+
description: "Range(s) (inclusive) of interop key indexes to validate with: 0..16",
|
|
457
|
+
type: "array",
|
|
458
|
+
coerce: (indexes: string[]): number[] =>
|
|
459
|
+
// Parse ["11..13,15..17"] to ["11..13", "15..17"]
|
|
460
|
+
indexes
|
|
461
|
+
.flatMap((item) => item.split(","))
|
|
462
|
+
.flatMap(parseRange),
|
|
458
463
|
},
|
|
459
464
|
|
|
460
465
|
fromMnemonic: {
|
|
@@ -465,7 +470,12 @@ export const validatorOptions: CliCommandOptions<IValidatorCliArgs> = {
|
|
|
465
470
|
|
|
466
471
|
mnemonicIndexes: {
|
|
467
472
|
hidden: true,
|
|
468
|
-
description: "UNSAFE. Range (inclusive) of mnemonic key indexes to validate with: 0..16",
|
|
469
|
-
type: "
|
|
473
|
+
description: "UNSAFE. Range(s) (inclusive) of mnemonic key indexes to validate with: 0..16",
|
|
474
|
+
type: "array",
|
|
475
|
+
coerce: (indexes: string[]): number[] =>
|
|
476
|
+
// Parse ["11..13,15..17"] to ["11..13", "15..17"]
|
|
477
|
+
indexes
|
|
478
|
+
.flatMap((item) => item.split(","))
|
|
479
|
+
.flatMap(parseRange),
|
|
470
480
|
},
|
|
471
481
|
};
|
|
@@ -5,7 +5,7 @@ import {interopSecretKey} from "@lodestar/state-transition";
|
|
|
5
5
|
import {LogLevel, Logger, isValidHttpUrl} from "@lodestar/utils";
|
|
6
6
|
import {Signer, SignerType, externalSignerGetKeys} from "@lodestar/validator";
|
|
7
7
|
import {GlobalArgs, defaultNetwork} from "../../../options/index.js";
|
|
8
|
-
import {YargsError, assertValidPubkeysHex
|
|
8
|
+
import {YargsError, assertValidPubkeysHex} from "../../../util/index.js";
|
|
9
9
|
import {showProgress} from "../../../util/progress.js";
|
|
10
10
|
import {decryptKeystoreDefinitions} from "../keymanager/decryptKeystoreDefinitions.js";
|
|
11
11
|
import {PersistedKeysBackend} from "../keymanager/persistedKeys.js";
|
|
@@ -49,7 +49,7 @@ export async function getSignersFromArgs(
|
|
|
49
49
|
|
|
50
50
|
// ONLY USE FOR TESTNETS - Derive interop keys
|
|
51
51
|
if (args.interopIndexes) {
|
|
52
|
-
const indexes =
|
|
52
|
+
const indexes = args.interopIndexes;
|
|
53
53
|
// Using a remote signer with TESTNETS
|
|
54
54
|
if (args["externalSigner.pubkeys"] || args["externalSigner.fetch"]) {
|
|
55
55
|
return getRemoteSigners(args);
|
|
@@ -67,7 +67,7 @@ export async function getSignersFromArgs(
|
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
const masterSK = deriveKeyFromMnemonic(args.fromMnemonic);
|
|
70
|
-
const indexes =
|
|
70
|
+
const indexes = Array.from(new Set(args.mnemonicIndexes));
|
|
71
71
|
return indexes.map((index) => ({
|
|
72
72
|
type: SignerType.Local,
|
|
73
73
|
secretKey: SecretKey.fromBytes(deriveEth2ValidatorKeys(masterSK, index).signing),
|