@chainsafe/lodestar 1.15.0-dev.9eb9cce0fa → 1.15.0-dev.b93cfb907f

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 CHANGED
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "branch": "unstable",
3
- "commit": "9eb9cce0fa8b0c37877963793308a348f4f4cdfb"
3
+ "commit": "b93cfb907facb14a890cf73988a652907d91bd38"
4
4
  }
@@ -6,7 +6,7 @@ import { ssz } from "@lodestar/types";
6
6
  import { toHex } from "@lodestar/utils";
7
7
  import { externalSignerPostSignature, SignableMessageType, SignerType } from "@lodestar/validator";
8
8
  import { ApiError, getClient } from "@lodestar/api";
9
- import { ensure0xPrefix, YargsError } from "../../util/index.js";
9
+ import { ensure0xPrefix, YargsError, wrapError } from "../../util/index.js";
10
10
  import { getBeaconConfigFromArgs } from "../../config/index.js";
11
11
  import { getSignersFromArgs } from "./signers/index.js";
12
12
  export const voluntaryExit = {
@@ -84,35 +84,58 @@ ${validatorsToExit.map((v) => `${v.pubkey} ${v.index} ${v.status}`).join("\n")}`
84
84
  throw new YargsError("not confirmed");
85
85
  }
86
86
  }
87
- for (const [i, { index, signer, pubkey }] of validatorsToExit.entries()) {
88
- const slot = computeStartSlotAtEpoch(exitEpoch);
89
- const domain = config.getDomainForVoluntaryExit(slot);
90
- const voluntaryExit = { epoch: exitEpoch, validatorIndex: index };
91
- const signingRoot = computeSigningRoot(ssz.phase0.VoluntaryExit, voluntaryExit, domain);
92
- let signature;
93
- switch (signer.type) {
94
- case SignerType.Local:
95
- signature = signer.secretKey.sign(signingRoot);
96
- break;
97
- case SignerType.Remote: {
98
- const signatureHex = await externalSignerPostSignature(config, signer.url, pubkey, signingRoot, slot, {
99
- data: voluntaryExit,
100
- type: SignableMessageType.VOLUNTARY_EXIT,
101
- });
102
- signature = bls.Signature.fromHex(signatureHex);
103
- break;
87
+ const alreadySubmitted = [];
88
+ for (const [i, validatorToExit] of validatorsToExit.entries()) {
89
+ const { err } = await wrapError(processVoluntaryExit({ config, client }, exitEpoch, validatorToExit));
90
+ const { pubkey, index } = validatorToExit;
91
+ if (err === null) {
92
+ console.log(`Submitted voluntary exit for ${pubkey} (${index}) ${i + 1}/${signersToExit.length}`);
93
+ }
94
+ else {
95
+ if (err.message.includes("ALREADY_EXISTS")) {
96
+ alreadySubmitted.push(validatorToExit);
97
+ }
98
+ else {
99
+ console.log(`Voluntary exit errored for ${pubkey} (${index}) ${i + 1}/${signersToExit.length}: ${err.message}`);
104
100
  }
105
- default:
106
- throw new YargsError(`Unexpected signer type for ${pubkey}`);
107
101
  }
108
- ApiError.assert(await client.beacon.submitPoolVoluntaryExit({
109
- message: voluntaryExit,
110
- signature: signature.toBytes(),
111
- }));
112
- console.log(`Submitted voluntary exit for ${pubkey} ${i + 1}/${signersToExit.length}`);
102
+ }
103
+ if (alreadySubmitted.length > 0) {
104
+ console.log(`Voluntary exit already submitted for ${alreadySubmitted.length}/${signersToExit.length}`);
105
+ for (const validatorToExit of alreadySubmitted) {
106
+ const { index, pubkey } = validatorToExit;
107
+ console.log(` - ${pubkey} (${index})`);
108
+ }
113
109
  }
114
110
  },
115
111
  };
112
+ async function processVoluntaryExit({ config, client }, exitEpoch, validatorToExit) {
113
+ const { index, signer, pubkey } = validatorToExit;
114
+ const slot = computeStartSlotAtEpoch(exitEpoch);
115
+ const domain = config.getDomainForVoluntaryExit(slot);
116
+ const voluntaryExit = { epoch: exitEpoch, validatorIndex: index };
117
+ const signingRoot = computeSigningRoot(ssz.phase0.VoluntaryExit, voluntaryExit, domain);
118
+ let signature;
119
+ switch (signer.type) {
120
+ case SignerType.Local:
121
+ signature = signer.secretKey.sign(signingRoot);
122
+ break;
123
+ case SignerType.Remote: {
124
+ const signatureHex = await externalSignerPostSignature(config, signer.url, pubkey, signingRoot, slot, {
125
+ data: voluntaryExit,
126
+ type: SignableMessageType.VOLUNTARY_EXIT,
127
+ });
128
+ signature = bls.Signature.fromHex(signatureHex);
129
+ break;
130
+ }
131
+ default:
132
+ throw new YargsError(`Unexpected signer type for ${pubkey}`);
133
+ }
134
+ ApiError.assert(await client.beacon.submitPoolVoluntaryExit({
135
+ message: voluntaryExit,
136
+ signature: signature.toBytes(),
137
+ }));
138
+ }
116
139
  function selectSignersToExit(args, signers) {
117
140
  const signersWithPubkey = signers.map((signer) => ({
118
141
  signer,
@@ -1 +1 @@
1
- {"version":3,"file":"voluntaryExit.js","sourceRoot":"","sources":["../../../src/cmds/validator/voluntaryExit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"voluntaryExit.js","sourceRoot":"","sources":["../../../src/cmds/validator/voluntaryExit.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,11 @@
3
3
  */
4
4
  export declare class YargsError extends Error {
5
5
  }
6
+ export type Result<T> = {
7
+ err: null;
8
+ result: T;
9
+ } | {
10
+ err: Error;
11
+ };
12
+ export declare function wrapError<T>(promise: Promise<T>): Promise<Result<T>>;
6
13
  //# sourceMappingURL=errors.d.ts.map
@@ -3,4 +3,12 @@
3
3
  */
4
4
  export class YargsError extends Error {
5
5
  }
6
+ export async function wrapError(promise) {
7
+ try {
8
+ return { err: null, result: await promise };
9
+ }
10
+ catch (err) {
11
+ return { err: err };
12
+ }
13
+ }
6
14
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/util/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;CAAG"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/util/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;CAAG;AAGxC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,OAAmB;IACpD,IAAI;QACF,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,OAAO,EAAC,CAAC;KAC3C;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,EAAC,GAAG,EAAE,GAAY,EAAC,CAAC;KAC5B;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chainsafe/lodestar",
3
- "version": "1.15.0-dev.9eb9cce0fa",
3
+ "version": "1.15.0-dev.b93cfb907f",
4
4
  "description": "Command line interface for lodestar",
5
5
  "author": "ChainSafe Systems",
6
6
  "license": "LGPL-3.0",
@@ -31,8 +31,8 @@
31
31
  "lint": "eslint --color --ext .ts src/ test/",
32
32
  "lint:fix": "yarn run lint --fix",
33
33
  "pretest": "yarn run check-types",
34
- "test:unit": "vitest --run --dir test/unit/ --coverage",
35
- "test:e2e": "vitest --run --poolOptions.threads.singleThread true --dir test/e2e/",
34
+ "test:unit": "vitest --run --dir test/unit/",
35
+ "test:e2e": "vitest --run --config vitest.config.e2e.ts --dir test/e2e/",
36
36
  "test:sim:multifork": "LODESTAR_PRESET=minimal node --loader ts-node/esm test/sim/multi_fork.test.ts",
37
37
  "test:sim:mixedclient": "LODESTAR_PRESET=minimal node --loader ts-node/esm test/sim/mixed_client.test.ts",
38
38
  "test:sim:endpoints": "LODESTAR_PRESET=minimal node --loader ts-node/esm test/sim/endpoints.test.ts",
@@ -66,17 +66,17 @@
66
66
  "@libp2p/crypto": "^3.0.4",
67
67
  "@libp2p/peer-id": "^4.0.4",
68
68
  "@libp2p/peer-id-factory": "^4.0.3",
69
- "@lodestar/api": "1.15.0-dev.9eb9cce0fa",
70
- "@lodestar/beacon-node": "1.15.0-dev.9eb9cce0fa",
71
- "@lodestar/config": "1.15.0-dev.9eb9cce0fa",
72
- "@lodestar/db": "1.15.0-dev.9eb9cce0fa",
73
- "@lodestar/light-client": "1.15.0-dev.9eb9cce0fa",
74
- "@lodestar/logger": "1.15.0-dev.9eb9cce0fa",
75
- "@lodestar/params": "1.15.0-dev.9eb9cce0fa",
76
- "@lodestar/state-transition": "1.15.0-dev.9eb9cce0fa",
77
- "@lodestar/types": "1.15.0-dev.9eb9cce0fa",
78
- "@lodestar/utils": "1.15.0-dev.9eb9cce0fa",
79
- "@lodestar/validator": "1.15.0-dev.9eb9cce0fa",
69
+ "@lodestar/api": "1.15.0-dev.b93cfb907f",
70
+ "@lodestar/beacon-node": "1.15.0-dev.b93cfb907f",
71
+ "@lodestar/config": "1.15.0-dev.b93cfb907f",
72
+ "@lodestar/db": "1.15.0-dev.b93cfb907f",
73
+ "@lodestar/light-client": "1.15.0-dev.b93cfb907f",
74
+ "@lodestar/logger": "1.15.0-dev.b93cfb907f",
75
+ "@lodestar/params": "1.15.0-dev.b93cfb907f",
76
+ "@lodestar/state-transition": "1.15.0-dev.b93cfb907f",
77
+ "@lodestar/types": "1.15.0-dev.b93cfb907f",
78
+ "@lodestar/utils": "1.15.0-dev.b93cfb907f",
79
+ "@lodestar/validator": "1.15.0-dev.b93cfb907f",
80
80
  "@multiformats/multiaddr": "^12.1.3",
81
81
  "@types/lockfile": "^1.0.2",
82
82
  "bip39": "^3.1.0",
@@ -97,7 +97,7 @@
97
97
  "yargs": "^17.7.1"
98
98
  },
99
99
  "devDependencies": {
100
- "@lodestar/test-utils": "1.15.0-dev.9eb9cce0fa",
100
+ "@lodestar/test-utils": "1.15.0-dev.b93cfb907f",
101
101
  "@types/debug": "^4.1.7",
102
102
  "@types/expand-tilde": "^2.0.0",
103
103
  "@types/got": "^9.6.12",
@@ -105,5 +105,5 @@
105
105
  "@types/lodash": "^4.14.192",
106
106
  "@types/yargs": "^17.0.24"
107
107
  },
108
- "gitHead": "0e3996ac916cb002c44ff3cd3854d52dcc3e0be1"
108
+ "gitHead": "1cf1cc9247185bff912b3c3c15ec8b3569b2667f"
109
109
  }