@lodestar/validator 1.22.0 → 1.23.0-dev.06b4c2d324
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/lib/buckets.js +3 -5
- package/lib/buckets.js.map +1 -1
- package/lib/genesis.d.ts +1 -1
- package/lib/genesis.js +0 -1
- package/lib/genesis.js.map +1 -1
- package/lib/metrics.d.ts +5 -0
- package/lib/metrics.js +5 -1
- package/lib/metrics.js.map +1 -1
- package/lib/repositories/metaDataRepository.d.ts +1 -1
- package/lib/repositories/metaDataRepository.js.map +1 -1
- package/lib/services/attestation.d.ts +4 -4
- package/lib/services/attestation.js +3 -4
- package/lib/services/attestation.js.map +1 -1
- package/lib/services/attestationDuties.d.ts +4 -4
- package/lib/services/attestationDuties.js +1 -1
- package/lib/services/attestationDuties.js.map +1 -1
- package/lib/services/block.d.ts +3 -3
- package/lib/services/block.js +25 -31
- package/lib/services/block.js.map +1 -1
- package/lib/services/blockDuties.d.ts +3 -3
- package/lib/services/blockDuties.js.map +1 -1
- package/lib/services/chainHeaderTracker.d.ts +1 -1
- package/lib/services/chainHeaderTracker.js +2 -2
- package/lib/services/chainHeaderTracker.js.map +1 -1
- package/lib/services/doppelgangerService.d.ts +2 -2
- package/lib/services/doppelgangerService.js +5 -8
- package/lib/services/doppelgangerService.js.map +1 -1
- package/lib/services/emitter.d.ts +2 -2
- package/lib/services/emitter.js +1 -1
- package/lib/services/emitter.js.map +1 -1
- package/lib/services/externalSignerSync.js +2 -3
- package/lib/services/externalSignerSync.js.map +1 -1
- package/lib/services/indices.d.ts +1 -1
- package/lib/services/indices.js +7 -6
- package/lib/services/indices.js.map +1 -1
- package/lib/services/prepareBeaconProposer.d.ts +1 -1
- package/lib/services/prepareBeaconProposer.js.map +1 -1
- package/lib/services/syncCommittee.d.ts +4 -4
- package/lib/services/syncCommittee.js +1 -1
- package/lib/services/syncCommittee.js.map +1 -1
- package/lib/services/syncCommitteeDuties.d.ts +4 -4
- package/lib/services/syncCommitteeDuties.js.map +1 -1
- package/lib/services/syncingStatusTracker.d.ts +2 -2
- package/lib/services/syncingStatusTracker.js.map +1 -1
- package/lib/services/validatorStore.d.ts +4 -4
- package/lib/services/validatorStore.js +39 -40
- package/lib/services/validatorStore.js.map +1 -1
- package/lib/slashingProtection/attestation/attestationByTargetRepository.d.ts +1 -1
- package/lib/slashingProtection/attestation/attestationByTargetRepository.js +3 -3
- package/lib/slashingProtection/attestation/attestationByTargetRepository.js.map +1 -1
- package/lib/slashingProtection/attestation/attestationLowerBoundRepository.d.ts +1 -1
- package/lib/slashingProtection/attestation/attestationLowerBoundRepository.js +1 -1
- package/lib/slashingProtection/attestation/attestationLowerBoundRepository.js.map +1 -1
- package/lib/slashingProtection/attestation/errors.d.ts +0 -1
- package/lib/slashingProtection/attestation/errors.js +0 -3
- package/lib/slashingProtection/attestation/errors.js.map +1 -1
- package/lib/slashingProtection/attestation/index.d.ts +1 -1
- package/lib/slashingProtection/attestation/index.js +8 -10
- package/lib/slashingProtection/attestation/index.js.map +1 -1
- package/lib/slashingProtection/block/blockBySlotRepository.d.ts +1 -1
- package/lib/slashingProtection/block/blockBySlotRepository.js +2 -2
- package/lib/slashingProtection/block/blockBySlotRepository.js.map +1 -1
- package/lib/slashingProtection/block/errors.d.ts +0 -1
- package/lib/slashingProtection/block/errors.js +0 -3
- package/lib/slashingProtection/block/errors.js.map +1 -1
- package/lib/slashingProtection/block/index.d.ts +1 -1
- package/lib/slashingProtection/block/index.js +7 -9
- package/lib/slashingProtection/block/index.js.map +1 -1
- package/lib/slashingProtection/index.d.ts +2 -2
- package/lib/slashingProtection/index.js +2 -2
- package/lib/slashingProtection/index.js.map +1 -1
- package/lib/slashingProtection/interchange/errors.d.ts +0 -1
- package/lib/slashingProtection/interchange/errors.js +0 -3
- package/lib/slashingProtection/interchange/errors.js.map +1 -1
- package/lib/slashingProtection/interchange/formats/completeV4.js +4 -6
- package/lib/slashingProtection/interchange/formats/completeV4.js.map +1 -1
- package/lib/slashingProtection/interchange/formats/v5.js +4 -6
- package/lib/slashingProtection/interchange/formats/v5.js.map +1 -1
- package/lib/slashingProtection/interchange/parseInterchange.js.map +1 -1
- package/lib/slashingProtection/interchange/serializeInterchange.js.map +1 -1
- package/lib/slashingProtection/interface.d.ts +1 -1
- package/lib/slashingProtection/minMaxSurround/distanceStoreRepository.js.map +1 -1
- package/lib/slashingProtection/minMaxSurround/errors.d.ts +0 -1
- package/lib/slashingProtection/minMaxSurround/errors.js +0 -3
- package/lib/slashingProtection/minMaxSurround/errors.js.map +1 -1
- package/lib/slashingProtection/minMaxSurround/minMaxSurround.d.ts +1 -1
- package/lib/slashingProtection/minMaxSurround/minMaxSurround.js.map +1 -1
- package/lib/slashingProtection/utils.js +4 -4
- package/lib/slashingProtection/utils.js.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib/util/clock.d.ts +1 -1
- package/lib/util/clock.js +6 -12
- package/lib/util/clock.js.map +1 -1
- package/lib/util/difference.js +3 -3
- package/lib/util/difference.js.map +1 -1
- package/lib/util/externalSignerClient.d.ts +8 -4
- package/lib/util/externalSignerClient.js +25 -16
- package/lib/util/externalSignerClient.js.map +1 -1
- package/lib/util/params.js +2 -2
- package/lib/util/params.js.map +1 -1
- package/lib/validator.d.ts +9 -9
- package/lib/validator.js +18 -18
- package/lib/validator.js.map +1 -1
- package/package.json +14 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doppelgangerService.js","sourceRoot":"","sources":["../../src/services/doppelgangerService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doppelgangerService.js","sourceRoot":"","sources":["../../src/services/doppelgangerService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { EventEmitter } from "events";
|
|
3
|
-
import { StrictEventEmitter } from "strict-event-emitter-types";
|
|
2
|
+
import { EventEmitter } from "node:events";
|
|
4
3
|
import { Slot } from "@lodestar/types";
|
|
4
|
+
import { StrictEventEmitter } from "strict-event-emitter-types";
|
|
5
5
|
import { HeadEventData } from "./chainHeaderTracker.js";
|
|
6
6
|
export declare enum ValidatorEvent {
|
|
7
7
|
/**
|
package/lib/services/emitter.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/services/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/services/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,aAAa,CAAC;AAKzC,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACxB;;OAEG;IACH,yCAAuB,CAAA;AACzB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AAMD;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAS,YAE1C;IACA;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAU;QAC/B,IAAI,YAA2C,CAAC;QAEhD,MAAM,MAAM,GAAG,GAAS,EAAE;YACxB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACnD,CAAC,CAAC;QAEF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,YAAY,GAAG,CAAC,IAAmB,EAAQ,EAAE;gBAC3C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;oBACtB,MAAM,EAAE,CAAC;oBACT,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { fromHexString } from "@chainsafe/ssz";
|
|
2
1
|
import { PublicKey } from "@chainsafe/blst";
|
|
3
2
|
import { SLOTS_PER_EPOCH } from "@lodestar/params";
|
|
4
|
-
import { toPrintableUrl } from "@lodestar/utils";
|
|
3
|
+
import { fromHex, toPrintableUrl } from "@lodestar/utils";
|
|
5
4
|
import { externalSignerGetKeys } from "../util/externalSignerClient.js";
|
|
6
5
|
import { SignerType } from "./validatorStore.js";
|
|
7
6
|
/**
|
|
@@ -51,7 +50,7 @@ export function pollExternalSignerPubkeys(config, logger, signal, validatorStore
|
|
|
51
50
|
}
|
|
52
51
|
function assertValidPubkeysHex(pubkeysHex) {
|
|
53
52
|
for (const pubkeyHex of pubkeysHex) {
|
|
54
|
-
const pubkeyBytes =
|
|
53
|
+
const pubkeyBytes = fromHex(pubkeyHex);
|
|
55
54
|
PublicKey.fromBytes(pubkeyBytes, true);
|
|
56
55
|
}
|
|
57
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"externalSignerSync.js","sourceRoot":"","sources":["../../src/services/externalSignerSync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"externalSignerSync.js","sourceRoot":"","sources":["../../src/services/externalSignerSync.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { ApiClient } from "@lodestar/api";
|
|
1
2
|
import { ValidatorIndex } from "@lodestar/types";
|
|
2
3
|
import { Logger } from "@lodestar/utils";
|
|
3
|
-
import { ApiClient } from "@lodestar/api";
|
|
4
4
|
import { Metrics } from "../metrics.js";
|
|
5
5
|
type PubkeyHex = string;
|
|
6
6
|
export declare class IndicesService {
|
package/lib/services/indices.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { MapDef, toPubkeyHex } from "@lodestar/utils";
|
|
2
2
|
import { batchItems } from "../util/index.js";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* This is to prevent the "Request body is too large" issue for http post.
|
|
5
|
+
* Typical servers accept up to 1MB (2 ** 20 bytes) of request body, for example fastify and nginx.
|
|
6
|
+
* A hex encoded public key with "0x"-prefix has a size of 98 bytes + 2 bytes to account for commas
|
|
7
|
+
* and other JSON padding. `Math.floor(2 ** 20 / 100) == 10485`, we can send up to ~10k keys per request.
|
|
6
8
|
*/
|
|
7
|
-
const PUBKEYS_PER_REQUEST =
|
|
9
|
+
const PUBKEYS_PER_REQUEST = 10_000;
|
|
8
10
|
const statusToSimpleStatusMapping = (status) => {
|
|
9
11
|
switch (status) {
|
|
10
|
-
case "active":
|
|
11
12
|
case "active_exiting":
|
|
12
13
|
case "active_slashed":
|
|
13
14
|
case "active_ongoing":
|
|
@@ -81,7 +82,7 @@ export class IndicesService {
|
|
|
81
82
|
return [];
|
|
82
83
|
}
|
|
83
84
|
// Query the remote BN to resolve a pubkey to a validator index.
|
|
84
|
-
// support up to
|
|
85
|
+
// support up to 10k pubkeys per poll
|
|
85
86
|
const pubkeysHexBatches = batchItems(pubkeysHexToDiscover, { batchSize: PUBKEYS_PER_REQUEST });
|
|
86
87
|
const newIndices = [];
|
|
87
88
|
for (const pubkeysHexBatch of pubkeysHexBatches) {
|
|
@@ -92,7 +93,7 @@ export class IndicesService {
|
|
|
92
93
|
return newIndices;
|
|
93
94
|
}
|
|
94
95
|
async fetchValidatorIndices(pubkeysHex) {
|
|
95
|
-
const validators = (await this.api.beacon.
|
|
96
|
+
const validators = (await this.api.beacon.postStateValidators({ stateId: "head", validatorIds: pubkeysHex })).value();
|
|
96
97
|
const newIndices = [];
|
|
97
98
|
const allValidatorStatuses = new MapDef(() => 0);
|
|
98
99
|
for (const validator of validators) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indices.js","sourceRoot":"","sources":["../../src/services/indices.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"indices.js","sourceRoot":"","sources":["../../src/services/indices.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,MAAM,EAAE,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE5D,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAQnC,MAAM,2BAA2B,GAAG,CAAC,MAAqC,EAAyB,EAAE;IACnG,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,gBAAgB,CAAC;QACtB,KAAK,gBAAgB,CAAC;QACtB,KAAK,gBAAgB;YACnB,OAAO,QAAQ,CAAC;QAElB,KAAK,qBAAqB,CAAC;QAC3B,KAAK,gBAAgB,CAAC;QACtB,KAAK,kBAAkB;YACrB,OAAO,QAAQ,CAAC;QAElB,KAAK,qBAAqB,CAAC;QAC3B,KAAK,gBAAgB;YACnB,OAAO,SAAS,CAAC;QAEnB,KAAK,iBAAiB;YACpB,OAAO,WAAW,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,OAAO,cAAc;IAOzB,YACmB,MAAc,EACd,GAAc,EACd,OAAuB;QAFvB,WAAM,GAAN,MAAM,CAAQ;QACd,QAAG,GAAH,GAAG,CAAW;QACd,YAAO,GAAP,OAAO,CAAgB;QATjC,iBAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;QAC7D,2CAA2C;QAClC,iBAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;QAC7D,uBAAuB;QACf,gCAA2B,GAAqC,IAAI,CAAC;QAO3E,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;IAChC,CAAC;IAED,+DAA+D;IAC/D,iBAAiB,CAAC,MAAiB;QACjC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,+DAA+D;IAC/D,kBAAkB;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,qEAAqE;IACrE,iBAAiB,CAAC,KAAqB;QACrC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,UAAuB;QAChD,wFAAwF;QACxF,sIAAsI;QACtI,4GAA4G;QAC5G,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,2BAA2B,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YAC5F,iHAAiH;YACjH,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,2BAA2B,CAAC;IAC1C,CAAC;IAED,YAAY,CAAC,MAAiB;QAC5B,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/C,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACrB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED;gEAC4D;IACpD,KAAK,CAAC,4BAA4B,CAAC,UAAuB;QAChE,MAAM,oBAAoB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3F,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,gEAAgE;QAChE,qCAAqC;QACrC,MAAM,iBAAiB,GAAG,UAAU,CAAC,oBAAoB,EAAE,EAAC,SAAS,EAAE,mBAAmB,EAAC,CAAC,CAAC;QAE7F,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,eAAe,IAAI,iBAAiB,EAAE,CAAC;YAChD,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAC9E,UAAU,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAEvD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,UAAoB;QACtD,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAEpH,MAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,MAAM,oBAAoB,GAAG,IAAI,MAAM,CAAgC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAEhF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,iCAAiC;YACjC,MAAM,MAAM,GAAG,2BAA2B,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC7D,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAEhF,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;oBACjD,cAAc,EAAE,SAAS,CAAC,KAAK;oBAC/B,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAC;gBACH,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBAClD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAE3D,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,oBAAoB,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,CAAC;QAEjG,oDAAoD;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEhH,iCAAiC;QACjC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;QAEhC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAC,GAAG,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAC;QAE7D,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ApiClient } from "@lodestar/api";
|
|
2
2
|
import { BeaconConfig } from "@lodestar/config";
|
|
3
|
-
import { IClock, LoggerVc } from "../util/index.js";
|
|
4
3
|
import { Metrics } from "../metrics.js";
|
|
4
|
+
import { IClock, LoggerVc } from "../util/index.js";
|
|
5
5
|
import { ValidatorStore } from "./validatorStore.js";
|
|
6
6
|
/**
|
|
7
7
|
* This service is responsible for registering validators to beacon node with the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareBeaconProposer.js","sourceRoot":"","sources":["../../src/services/prepareBeaconProposer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prepareBeaconProposer.js","sourceRoot":"","sources":["../../src/services/prepareBeaconProposer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { ChainForkConfig } from "@lodestar/config";
|
|
2
1
|
import { ApiClient } from "@lodestar/api";
|
|
3
|
-
import {
|
|
4
|
-
import { PubkeyHex } from "../types.js";
|
|
2
|
+
import { ChainForkConfig } from "@lodestar/config";
|
|
5
3
|
import { Metrics } from "../metrics.js";
|
|
6
|
-
import {
|
|
4
|
+
import { PubkeyHex } from "../types.js";
|
|
5
|
+
import { IClock, LoggerVc } from "../util/index.js";
|
|
7
6
|
import { ChainHeaderTracker } from "./chainHeaderTracker.js";
|
|
8
7
|
import { ValidatorEventEmitter } from "./emitter.js";
|
|
9
8
|
import { SyncingStatusTracker } from "./syncingStatusTracker.js";
|
|
9
|
+
import { ValidatorStore } from "./validatorStore.js";
|
|
10
10
|
export type SyncCommitteeServiceOpts = {
|
|
11
11
|
scAfterBlockDelaySlotFraction?: number;
|
|
12
12
|
distributedAggregationSelection?: boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { sleep } from "@lodestar/utils";
|
|
2
1
|
import { computeEpochAtSlot, isSyncCommitteeAggregator } from "@lodestar/state-transition";
|
|
2
|
+
import { sleep } from "@lodestar/utils";
|
|
3
3
|
import { SyncCommitteeDutiesService } from "./syncCommitteeDuties.js";
|
|
4
4
|
import { groupSyncDutiesBySubcommitteeIndex } from "./utils.js";
|
|
5
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncCommittee.js","sourceRoot":"","sources":["../../src/services/syncCommittee.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"syncCommittee.js","sourceRoot":"","sources":["../../src/services/syncCommittee.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import { ApiClient } from "@lodestar/api";
|
|
1
2
|
import { ChainForkConfig } from "@lodestar/config";
|
|
2
3
|
import { BLSSignature, Slot, ValidatorIndex } from "@lodestar/types";
|
|
3
|
-
import { ApiClient } from "@lodestar/api";
|
|
4
|
-
import { IClock, LoggerVc } from "../util/index.js";
|
|
5
|
-
import { PubkeyHex } from "../types.js";
|
|
6
4
|
import { Metrics } from "../metrics.js";
|
|
7
|
-
import {
|
|
5
|
+
import { PubkeyHex } from "../types.js";
|
|
6
|
+
import { IClock, LoggerVc } from "../util/index.js";
|
|
8
7
|
import { SyncingStatusTracker } from "./syncingStatusTracker.js";
|
|
8
|
+
import { ValidatorStore } from "./validatorStore.js";
|
|
9
9
|
export type SyncDutySubnet = {
|
|
10
10
|
pubkey: string;
|
|
11
11
|
/** Index of validator in validator registry. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncCommitteeDuties.js","sourceRoot":"","sources":["../../src/services/syncCommitteeDuties.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"syncCommitteeDuties.js","sourceRoot":"","sources":["../../src/services/syncCommitteeDuties.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ApiClient, routes } from "@lodestar/api";
|
|
2
|
-
import { Logger } from "@lodestar/utils";
|
|
3
2
|
import { Slot } from "@lodestar/types";
|
|
4
|
-
import {
|
|
3
|
+
import { Logger } from "@lodestar/utils";
|
|
5
4
|
import { Metrics } from "../metrics.js";
|
|
5
|
+
import { IClock } from "../util/clock.js";
|
|
6
6
|
export type SyncingStatus = routes.node.SyncingStatus;
|
|
7
7
|
type RunOnResyncedFn = (slot: Slot, signal: AbortSignal) => Promise<void>;
|
|
8
8
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncingStatusTracker.js","sourceRoot":"","sources":["../../src/services/syncingStatusTracker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"syncingStatusTracker.js","sourceRoot":"","sources":["../../src/services/syncingStatusTracker.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,YAAY,EAAU,MAAM,eAAe,CAAC;AAOpD;;GAEG;AACH,MAAM,OAAO,oBAAoB;IAK/B,YACmB,MAAc,EACd,GAAc,EACd,KAAa,EACb,OAAuB;QAHvB,WAAM,GAAN,MAAM,CAAQ;QACd,QAAG,GAAH,GAAG,CAAW;QACd,UAAK,GAAL,KAAK,CAAQ;QACb,YAAO,GAAP,OAAO,CAAgB;QANzB,QAAG,GAAsB,EAAE,CAAC;QAqBrC,uBAAkB,GAAG,KAAK,EAAE,IAAU,EAAE,MAAmB,EAAiB,EAAE;YACpF,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;gBACvE,MAAM,EAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAC,GAAG,aAAa,CAAC;gBACnF,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,YAAY,KAAK,IAAI,IAAI,CAAC,iBAAiB,EAAE,SAAS,KAAK,IAAI,CAAC;gBAEjH,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;oBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAC,CAAC;gBACtE,CAAC;qBAAM,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,IAAI,kBAAkB,EAAE,CAAC;oBACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAC,CAAC,CAAC;gBAChF,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAC,IAAI,EAAE,GAAG,aAAa,EAAC,CAAC,CAAC;gBAErE,IAAI,CAAC,iBAAiB,GAAG,aAAa,CAAC;gBAEvC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAC5B,CAAC,SAAS,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CACtF,CAAC;gBAEF,IAAI,kBAAkB,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBAC9C,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAClB,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAC,CAC5F,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,yEAAyE;gBACzE,sEAAsE;gBACtE,IAAI,CAAC,iBAAiB,GAAG,CAAU,CAAC;gBAEpC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAEnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,EAAC,IAAI,EAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtF,CAAC;QACH,CAAC,CAAC;QAhDA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACnD,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,EAAmB;QAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;CAsCF"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { SecretKey } from "@chainsafe/blst";
|
|
2
|
-
import { BeaconConfig } from "@lodestar/config";
|
|
3
|
-
import { altair, BeaconBlock, bellatrix, BlindedBeaconBlock, BLSPubkey, BLSSignature, Epoch, phase0, Root, SignedBeaconBlock, SignedBlindedBeaconBlock, Slot, ValidatorIndex, Attestation, SignedAggregateAndProof } from "@lodestar/types";
|
|
4
2
|
import { routes } from "@lodestar/api";
|
|
3
|
+
import { BeaconConfig } from "@lodestar/config";
|
|
4
|
+
import { Attestation, BLSPubkey, BLSSignature, BeaconBlock, BlindedBeaconBlock, Epoch, Root, SignedAggregateAndProof, SignedBeaconBlock, SignedBlindedBeaconBlock, Slot, ValidatorIndex, altair, bellatrix, phase0 } from "@lodestar/types";
|
|
5
|
+
import { Metrics } from "../metrics.js";
|
|
5
6
|
import { ISlashingProtection } from "../slashingProtection/index.js";
|
|
6
7
|
import { PubkeyHex } from "../types.js";
|
|
7
|
-
import { Metrics } from "../metrics.js";
|
|
8
8
|
import { LoggerVc } from "../util/logger.js";
|
|
9
|
-
import { IndicesService } from "./indices.js";
|
|
10
9
|
import { DoppelgangerService } from "./doppelgangerService.js";
|
|
10
|
+
import { IndicesService } from "./indices.js";
|
|
11
11
|
type BLSPubkeyMaybeHex = BLSPubkey | PubkeyHex;
|
|
12
12
|
type Eth1Address = string;
|
|
13
13
|
export declare enum SignerType {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { BitArray
|
|
2
|
-
import { computeEpochAtSlot, computeSigningRoot, computeStartSlotAtEpoch, computeDomain, ZERO_HASH, blindedOrFullBlockHashTreeRoot, } from "@lodestar/state-transition";
|
|
3
|
-
import { DOMAIN_AGGREGATE_AND_PROOF, DOMAIN_BEACON_ATTESTER, DOMAIN_BEACON_PROPOSER, DOMAIN_CONTRIBUTION_AND_PROOF, DOMAIN_RANDAO, DOMAIN_SELECTION_PROOF, DOMAIN_SYNC_COMMITTEE, DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF, DOMAIN_APPLICATION_BUILDER, ForkSeq, MAX_COMMITTEES_PER_SLOT, } from "@lodestar/params";
|
|
4
|
-
import { ssz, } from "@lodestar/types";
|
|
1
|
+
import { BitArray } from "@chainsafe/ssz";
|
|
5
2
|
import { routes } from "@lodestar/api";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { DOMAIN_AGGREGATE_AND_PROOF, DOMAIN_APPLICATION_BUILDER, DOMAIN_BEACON_ATTESTER, DOMAIN_BEACON_PROPOSER, DOMAIN_CONTRIBUTION_AND_PROOF, DOMAIN_RANDAO, DOMAIN_SELECTION_PROOF, DOMAIN_SYNC_COMMITTEE, DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF, ForkSeq, MAX_COMMITTEES_PER_SLOT, } from "@lodestar/params";
|
|
4
|
+
import { ZERO_HASH, blindedOrFullBlockHashTreeRoot, computeDomain, computeEpochAtSlot, computeSigningRoot, computeStartSlotAtEpoch, } from "@lodestar/state-transition";
|
|
5
|
+
import { ssz, } from "@lodestar/types";
|
|
6
|
+
import { fromHex, toPubkeyHex, toRootHex } from "@lodestar/utils";
|
|
7
|
+
import { SignableMessageType, externalSignerPostSignature } from "../util/externalSignerClient.js";
|
|
8
8
|
import { isValidatePubkeyHex } from "../util/format.js";
|
|
9
9
|
export var SignerType;
|
|
10
10
|
(function (SignerType) {
|
|
@@ -102,7 +102,7 @@ export class ValidatorStore {
|
|
|
102
102
|
throw Error(`Validator pubkey ${pubkeyHex} not known`);
|
|
103
103
|
}
|
|
104
104
|
// This should directly modify data in the map
|
|
105
|
-
delete validatorData
|
|
105
|
+
delete validatorData.feeRecipient;
|
|
106
106
|
}
|
|
107
107
|
getGraffiti(pubkeyHex) {
|
|
108
108
|
return this.validators.get(pubkeyHex)?.graffiti ?? this.defaultProposerConfig.graffiti;
|
|
@@ -119,10 +119,10 @@ export class ValidatorStore {
|
|
|
119
119
|
if (validatorData === undefined) {
|
|
120
120
|
throw Error(`Validator pubkey ${pubkeyHex} not known`);
|
|
121
121
|
}
|
|
122
|
-
delete validatorData
|
|
122
|
+
delete validatorData.graffiti;
|
|
123
123
|
}
|
|
124
124
|
getBuilderSelectionParams(pubkeyHex) {
|
|
125
|
-
const selection =
|
|
125
|
+
const selection = this.validators.get(pubkeyHex)?.builder?.selection ?? this.defaultProposerConfig.builder.selection;
|
|
126
126
|
let boostFactor;
|
|
127
127
|
switch (selection) {
|
|
128
128
|
case routes.validator.BuilderSelection.Default:
|
|
@@ -132,7 +132,7 @@ export class ValidatorStore {
|
|
|
132
132
|
break;
|
|
133
133
|
case routes.validator.BuilderSelection.MaxProfit:
|
|
134
134
|
boostFactor =
|
|
135
|
-
|
|
135
|
+
this.validators.get(pubkeyHex)?.builder?.boostFactor ?? this.defaultProposerConfig.builder.boostFactor;
|
|
136
136
|
break;
|
|
137
137
|
case routes.validator.BuilderSelection.BuilderAlways:
|
|
138
138
|
case routes.validator.BuilderSelection.BuilderOnly:
|
|
@@ -207,14 +207,16 @@ export class ValidatorStore {
|
|
|
207
207
|
if (graffiti !== undefined ||
|
|
208
208
|
strictFeeRecipientCheck !== undefined ||
|
|
209
209
|
feeRecipient !== undefined ||
|
|
210
|
-
builder?.gasLimit !== undefined
|
|
210
|
+
builder?.gasLimit !== undefined ||
|
|
211
|
+
builder?.selection !== undefined ||
|
|
212
|
+
builder?.boostFactor !== undefined) {
|
|
211
213
|
proposerConfig = { graffiti, strictFeeRecipientCheck, feeRecipient, builder };
|
|
212
214
|
}
|
|
213
215
|
return proposerConfig;
|
|
214
216
|
}
|
|
215
217
|
async addSigner(signer, valProposerConfig) {
|
|
216
218
|
const pubkey = getSignerPubkeyHex(signer);
|
|
217
|
-
const proposerConfig =
|
|
219
|
+
const proposerConfig = valProposerConfig?.proposerConfig?.[pubkey];
|
|
218
220
|
const builderBoostFactor = proposerConfig?.builder?.boostFactor;
|
|
219
221
|
if (builderBoostFactor !== undefined && builderBoostFactor > MAX_BUILDER_BOOST_FACTOR) {
|
|
220
222
|
throw Error(`Invalid builderBoostFactor=${builderBoostFactor} > MAX_BUILDER_BOOST_FACTOR for pubkey=${pubkey}`);
|
|
@@ -269,8 +271,8 @@ export class ValidatorStore {
|
|
|
269
271
|
const signingRoot = ssz.phase0.SigningData.hashTreeRoot({ objectRoot: blockRoot, domain });
|
|
270
272
|
logger?.debug("Signing the block proposal", {
|
|
271
273
|
slot: signingSlot,
|
|
272
|
-
blockRoot:
|
|
273
|
-
signingRoot:
|
|
274
|
+
blockRoot: toRootHex(blockRoot),
|
|
275
|
+
signingRoot: toRootHex(signingRoot),
|
|
274
276
|
});
|
|
275
277
|
try {
|
|
276
278
|
await this.slashingProtection.checkAndInsertBlockProposal(pubkey, { slot: signingSlot, signingRoot });
|
|
@@ -325,7 +327,7 @@ export class ValidatorStore {
|
|
|
325
327
|
type: SignableMessageType.ATTESTATION,
|
|
326
328
|
data: attestationData,
|
|
327
329
|
};
|
|
328
|
-
if (this.config.getForkSeq(
|
|
330
|
+
if (this.config.getForkSeq(signingSlot) >= ForkSeq.electra) {
|
|
329
331
|
return {
|
|
330
332
|
aggregationBits: BitArray.fromSingleBit(duty.committeeLength, duty.validatorCommitteeIndex),
|
|
331
333
|
data: attestationData,
|
|
@@ -333,13 +335,11 @@ export class ValidatorStore {
|
|
|
333
335
|
committeeBits: BitArray.fromSingleBit(MAX_COMMITTEES_PER_SLOT, duty.committeeIndex),
|
|
334
336
|
};
|
|
335
337
|
}
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
};
|
|
342
|
-
}
|
|
338
|
+
return {
|
|
339
|
+
aggregationBits: BitArray.fromSingleBit(duty.committeeLength, duty.validatorCommitteeIndex),
|
|
340
|
+
data: attestationData,
|
|
341
|
+
signature: await this.getSignature(duty.pubkey, signingRoot, signingSlot, signableMessage),
|
|
342
|
+
};
|
|
343
343
|
}
|
|
344
344
|
async signAggregateAndProof(duty, selectionProof, aggregate) {
|
|
345
345
|
this.validateAttestationDuty(duty, aggregate.data);
|
|
@@ -350,11 +350,12 @@ export class ValidatorStore {
|
|
|
350
350
|
};
|
|
351
351
|
const signingSlot = aggregate.data.slot;
|
|
352
352
|
const domain = this.config.getDomain(signingSlot, DOMAIN_AGGREGATE_AND_PROOF);
|
|
353
|
-
const
|
|
353
|
+
const isPostElectra = this.config.getForkSeq(signingSlot) >= ForkSeq.electra;
|
|
354
|
+
const signingRoot = isPostElectra
|
|
354
355
|
? computeSigningRoot(ssz.electra.AggregateAndProof, aggregateAndProof, domain)
|
|
355
356
|
: computeSigningRoot(ssz.phase0.AggregateAndProof, aggregateAndProof, domain);
|
|
356
357
|
const signableMessage = {
|
|
357
|
-
type: SignableMessageType.AGGREGATE_AND_PROOF,
|
|
358
|
+
type: isPostElectra ? SignableMessageType.AGGREGATE_AND_PROOF_V2 : SignableMessageType.AGGREGATE_AND_PROOF,
|
|
358
359
|
data: aggregateAndProof,
|
|
359
360
|
};
|
|
360
361
|
return {
|
|
@@ -438,8 +439,8 @@ export class ValidatorStore {
|
|
|
438
439
|
return !this.doppelgangerService || this.doppelgangerService.isDoppelgangerSafe(pubkeyHex);
|
|
439
440
|
}
|
|
440
441
|
async signValidatorRegistration(pubkeyMaybeHex, regAttributes, _slot) {
|
|
441
|
-
const pubkey = typeof pubkeyMaybeHex === "string" ?
|
|
442
|
-
const feeRecipient =
|
|
442
|
+
const pubkey = typeof pubkeyMaybeHex === "string" ? fromHex(pubkeyMaybeHex) : pubkeyMaybeHex;
|
|
443
|
+
const feeRecipient = fromHex(regAttributes.feeRecipient);
|
|
443
444
|
const { gasLimit } = regAttributes;
|
|
444
445
|
const validatorRegistration = {
|
|
445
446
|
feeRecipient,
|
|
@@ -468,18 +469,16 @@ export class ValidatorStore {
|
|
|
468
469
|
if (builderData?.regFullKey === regFullKey) {
|
|
469
470
|
return builderData.validatorRegistration;
|
|
470
471
|
}
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
this.validators.set(pubkeyHex, validatorData);
|
|
477
|
-
}
|
|
478
|
-
return validatorRegistration;
|
|
472
|
+
const validatorRegistration = await this.signValidatorRegistration(pubkeyMaybeHex, regAttributes, slot);
|
|
473
|
+
// If pubkeyHex was actually registered, then update the regData
|
|
474
|
+
if (validatorData !== undefined) {
|
|
475
|
+
validatorData.builderData = { validatorRegistration, regFullKey };
|
|
476
|
+
this.validators.set(pubkeyHex, validatorData);
|
|
479
477
|
}
|
|
478
|
+
return validatorRegistration;
|
|
480
479
|
}
|
|
481
480
|
async getSignature(pubkey, signingRoot, signingSlot, signableMessage) {
|
|
482
|
-
// TODO: Refactor indexing to not have to run
|
|
481
|
+
// TODO: Refactor indexing to not have to run toHex() on the pubkey every time
|
|
483
482
|
const pubkeyHex = typeof pubkey === "string" ? pubkey : toPubkeyHex(pubkey);
|
|
484
483
|
const signer = this.validators.get(pubkeyHex)?.signer;
|
|
485
484
|
if (!signer) {
|
|
@@ -496,7 +495,7 @@ export class ValidatorStore {
|
|
|
496
495
|
const timer = this.metrics?.remoteSignTime.startTimer();
|
|
497
496
|
try {
|
|
498
497
|
const signatureHex = await externalSignerPostSignature(this.config, signer.url, pubkeyHex, signingRoot, signingSlot, signableMessage);
|
|
499
|
-
return
|
|
498
|
+
return fromHex(signatureHex);
|
|
500
499
|
}
|
|
501
500
|
catch (e) {
|
|
502
501
|
this.metrics?.remoteSignErrors.inc();
|
|
@@ -509,7 +508,7 @@ export class ValidatorStore {
|
|
|
509
508
|
}
|
|
510
509
|
}
|
|
511
510
|
getSignerAndPubkeyHex(pubkey) {
|
|
512
|
-
// TODO: Refactor indexing to not have to run
|
|
511
|
+
// TODO: Refactor indexing to not have to run toHex() on the pubkey every time
|
|
513
512
|
const pubkeyHex = typeof pubkey === "string" ? pubkey : toPubkeyHex(pubkey);
|
|
514
513
|
const signer = this.validators.get(pubkeyHex)?.signer;
|
|
515
514
|
if (!signer) {
|
|
@@ -522,8 +521,8 @@ export class ValidatorStore {
|
|
|
522
521
|
if (duty.slot !== data.slot) {
|
|
523
522
|
throw Error(`Inconsistent duties during signing: duty.slot ${duty.slot} != att.slot ${data.slot}`);
|
|
524
523
|
}
|
|
525
|
-
const isPostElectra = this.config.getForkSeq(
|
|
526
|
-
if (!isPostElectra && duty.committeeIndex
|
|
524
|
+
const isPostElectra = this.config.getForkSeq(data.slot) >= ForkSeq.electra;
|
|
525
|
+
if (!isPostElectra && duty.committeeIndex !== data.index) {
|
|
527
526
|
throw Error(`Inconsistent duties during signing: duty.committeeIndex ${duty.committeeIndex} != att.committeeIndex ${data.index}`);
|
|
528
527
|
}
|
|
529
528
|
if (isPostElectra && data.index !== 0) {
|
|
@@ -540,7 +539,7 @@ export class ValidatorStore {
|
|
|
540
539
|
function getSignerPubkeyHex(signer) {
|
|
541
540
|
switch (signer.type) {
|
|
542
541
|
case SignerType.Local:
|
|
543
|
-
return
|
|
542
|
+
return toPubkeyHex(signer.secretKey.toPublicKey().toBytes());
|
|
544
543
|
case SignerType.Remote:
|
|
545
544
|
if (!isValidatePubkeyHex(signer.pubkey)) {
|
|
546
545
|
throw Error(`Bad format in RemoteSigner.pubkey ${signer.pubkey}`);
|