@lodestar/validator 1.39.0-dev.d4a47659a5 → 1.39.0-dev.dd21e36997

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.
@@ -26,6 +26,7 @@ export class SyncCommitteeDutiesService {
26
26
  config;
27
27
  logger;
28
28
  api;
29
+ clock;
29
30
  validatorStore;
30
31
  opts;
31
32
  /** Maps a validator public key to their duties for each slot */
@@ -34,6 +35,7 @@ export class SyncCommitteeDutiesService {
34
35
  this.config = config;
35
36
  this.logger = logger;
36
37
  this.api = api;
38
+ this.clock = clock;
37
39
  this.validatorStore = validatorStore;
38
40
  this.opts = opts;
39
41
  // Running this task every epoch is safe since a re-org of many epochs is very unlikely
@@ -76,6 +78,15 @@ export class SyncCommitteeDutiesService {
76
78
  selectionProofs: await this.getSelectionProofs(slot, dutyAtPeriod.duty),
77
79
  });
78
80
  }
81
+ if (this.opts?.distributedAggregationSelection) {
82
+ // Validator in distributed cluster only has a key share, not the full private key.
83
+ // The partial selection proofs must be exchanged for combined selection proofs by
84
+ // calling submitSyncCommitteeSelections on the distributed validator middleware client.
85
+ // This will run in parallel to other sync committee tasks but must be finished before starting
86
+ // sync committee contributions as it is required to correctly determine if validator is aggregator
87
+ // and to produce a ContributionAndProof that can be threshold aggregated by the middleware client.
88
+ this.runDistributedAggregationSelectionTasks(duties, slot).catch((e) => this.logger.debug("Error on sync committee aggregation selection", { slot }, e));
89
+ }
79
90
  }
80
91
  return duties;
81
92
  }
@@ -228,8 +239,8 @@ export class SyncCommitteeDutiesService {
228
239
  if (this.opts?.distributedAggregationSelection) {
229
240
  // Validator in distributed cluster only has a key share, not the full private key.
230
241
  // Passing a partial selection proof to `is_sync_committee_aggregator` would produce incorrect result.
231
- // SyncCommitteeService will exchange partial for combined selection proofs retrieved from
232
- // distributed validator middleware client and determine aggregators at beginning of every slot.
242
+ // For all duties in the slot, aggregators are determined by exchanging partial for combined selection
243
+ // proofs retrieved from distributed validator middleware client at beginning of every slot.
233
244
  dutiesAndProofs.push({
234
245
  selectionProof: null,
235
246
  partialSelectionProof: selectionProof,
@@ -255,5 +266,56 @@ export class SyncCommitteeDutiesService {
255
266
  }
256
267
  }
257
268
  }
269
+ /**
270
+ * Performs additional sync committee contribution tasks required if validator is part of distributed cluster
271
+ *
272
+ * 1. Exchange partial for combined selection proofs
273
+ * 2. Determine validators that should produce sync committee contribution
274
+ * 3. Mutate duty objects to set selection proofs for aggregators
275
+ */
276
+ async runDistributedAggregationSelectionTasks(duties, slot) {
277
+ if (duties.length === 0) {
278
+ return;
279
+ }
280
+ const partialSelections = [];
281
+ for (const { duty, selectionProofs } of duties) {
282
+ const validatorSelections = selectionProofs.map(({ subcommitteeIndex, partialSelectionProof }) => ({
283
+ validatorIndex: duty.validatorIndex,
284
+ slot,
285
+ subcommitteeIndex,
286
+ selectionProof: partialSelectionProof,
287
+ }));
288
+ partialSelections.push(...validatorSelections);
289
+ }
290
+ this.logger.debug("Submitting partial sync committee selection proofs", { slot, count: partialSelections.length });
291
+ const res = await this.api.validator.submitSyncCommitteeSelections({ selections: partialSelections }, {
292
+ // Exit sync committee contributions flow if there is no response until CONTRIBUTION_DUE_BPS of the slot.
293
+ // Note that the sync committee contributions flow is not explicitly exited but rather will be skipped
294
+ // due to the fact that calculation of `is_sync_committee_aggregator` in SyncCommitteeDutiesService is not done
295
+ // and selectionProof is set to null, meaning no validator will be considered an aggregator.
296
+ timeoutMs: this.config.getSyncContributionDueMs(this.config.getForkName(slot)) - this.clock.msFromSlot(slot),
297
+ });
298
+ const combinedSelections = res.value();
299
+ this.logger.debug("Received combined sync committee selection proofs", { slot, count: combinedSelections.length });
300
+ for (const dutyAndProofs of duties) {
301
+ const { validatorIndex, subnets } = dutyAndProofs.duty;
302
+ for (const subnet of subnets) {
303
+ const logCtxValidator = { slot, index: subnet, validatorIndex };
304
+ const combinedSelection = combinedSelections.find((s) => s.validatorIndex === validatorIndex && s.slot === slot && s.subcommitteeIndex === subnet);
305
+ if (!combinedSelection) {
306
+ this.logger.debug("Did not receive combined sync committee selection proof", logCtxValidator);
307
+ continue;
308
+ }
309
+ const isAggregator = isSyncCommitteeAggregator(combinedSelection.selectionProof);
310
+ if (isAggregator) {
311
+ const selectionProofObject = dutyAndProofs.selectionProofs.find((p) => p.subcommitteeIndex === subnet);
312
+ if (selectionProofObject) {
313
+ // Update selection proof by mutating proof objects in duty object
314
+ selectionProofObject.selectionProof = combinedSelection.selectionProof;
315
+ }
316
+ }
317
+ }
318
+ }
319
+ }
258
320
  }
259
321
  //# sourceMappingURL=syncCommitteeDuties.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"syncCommitteeDuties.js","sourceRoot":"","sources":["../../src/services/syncCommitteeDuties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syncCommitteeDuties.js","sourceRoot":"","sources":["../../src/services/syncCommitteeDuties.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { LoggerVc } from "../util/logger.js";
9
9
  import { DoppelgangerService } from "./doppelgangerService.js";
10
10
  import { IndicesService } from "./indices.js";
11
11
  type BLSPubkeyMaybeHex = BLSPubkey | PubkeyHex;
12
- type Eth1Address = string;
12
+ type ExecutionAddress = string;
13
13
  export declare enum SignerType {
14
14
  Local = 0,
15
15
  Remote = 1
@@ -26,7 +26,7 @@ export type SignerRemote = {
26
26
  export type ProposerConfig = {
27
27
  graffiti?: string;
28
28
  strictFeeRecipientCheck?: boolean;
29
- feeRecipient?: Eth1Address;
29
+ feeRecipient?: ExecutionAddress;
30
30
  builder?: {
31
31
  gasLimit?: number;
32
32
  selection?: routes.validator.BuilderSelection;
@@ -84,9 +84,9 @@ export declare class ValidatorStore {
84
84
  getAllLocalIndices(): ValidatorIndex[];
85
85
  getPubkeyOfIndex(index: ValidatorIndex): PubkeyHex | undefined;
86
86
  pollValidatorIndices(): Promise<ValidatorIndex[]>;
87
- getFeeRecipient(pubkeyHex: PubkeyHex): Eth1Address;
88
- getFeeRecipientByIndex(index: ValidatorIndex): Eth1Address;
89
- setFeeRecipient(pubkeyHex: PubkeyHex, feeRecipient: Eth1Address): void;
87
+ getFeeRecipient(pubkeyHex: PubkeyHex): ExecutionAddress;
88
+ getFeeRecipientByIndex(index: ValidatorIndex): ExecutionAddress;
89
+ setFeeRecipient(pubkeyHex: PubkeyHex, feeRecipient: ExecutionAddress): void;
90
90
  deleteFeeRecipient(pubkeyHex: PubkeyHex): void;
91
91
  getGraffiti(pubkeyHex: PubkeyHex): string | undefined;
92
92
  setGraffiti(pubkeyHex: PubkeyHex, graffiti: string): void;
@@ -127,11 +127,11 @@ export declare class ValidatorStore {
127
127
  signVoluntaryExit(pubkey: BLSPubkeyMaybeHex, validatorIndex: number, exitEpoch: Epoch): Promise<phase0.SignedVoluntaryExit>;
128
128
  isDoppelgangerSafe(pubkeyHex: PubkeyHex): boolean;
129
129
  signValidatorRegistration(pubkeyMaybeHex: BLSPubkeyMaybeHex, regAttributes: {
130
- feeRecipient: Eth1Address;
130
+ feeRecipient: ExecutionAddress;
131
131
  gasLimit: number;
132
132
  }, _slot: Slot): Promise<bellatrix.SignedValidatorRegistrationV1>;
133
133
  getValidatorRegistration(pubkeyMaybeHex: BLSPubkeyMaybeHex, regAttributes: {
134
- feeRecipient: Eth1Address;
134
+ feeRecipient: ExecutionAddress;
135
135
  gasLimit: number;
136
136
  }, slot: Slot): Promise<bellatrix.SignedValidatorRegistrationV1>;
137
137
  private getSignature;
@@ -1 +1 @@
1
- {"version":3,"file":"validatorStore.d.ts","sourceRoot":"","sources":["../../src/services/validatorStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validatorStore.d.ts","sourceRoot":"","sources":["../../src/services/validatorStore.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validatorStore.js","sourceRoot":"","sources":["../../src/services/validatorStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validatorStore.js","sourceRoot":"","sources":["../../src/services/validatorStore.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodestar/validator",
3
- "version": "1.39.0-dev.d4a47659a5",
3
+ "version": "1.39.0-dev.dd21e36997",
4
4
  "description": "A Typescript implementation of the validator client",
5
5
  "author": "ChainSafe Systems",
6
6
  "license": "Apache-2.0",
@@ -24,18 +24,18 @@
24
24
  "scripts": {
25
25
  "clean": "rm -rf lib && rm -f *.tsbuildinfo",
26
26
  "build": "tsc -p tsconfig.build.json",
27
- "build:release": "yarn clean && yarn run build",
28
- "build:watch": "yarn run build --watch",
27
+ "build:release": "pnpm clean && pnpm run build",
28
+ "build:watch": "pnpm run build --watch",
29
29
  "check-build": "node -e \"(async function() { await import('./lib/index.js') })()\"",
30
30
  "check-types": "tsc",
31
31
  "lint": "biome check src/ test/",
32
- "lint:fix": "yarn run lint --write",
32
+ "lint:fix": "pnpm run lint --write",
33
33
  "test:unit": "vitest run --project unit --project unit-minimal",
34
- "test": "yarn test:unit && yarn test:e2e",
34
+ "test": "pnpm test:unit && pnpm test:e2e",
35
35
  "test:spec": "vitest run --project spec-minimal",
36
36
  "test:e2e": "vitest run --project e2e --project e2e-mainnet",
37
37
  "download-spec-tests": "node --loader=ts-node/esm test/spec/downloadTests.ts",
38
- "check-readme": "typescript-docs-verifier"
38
+ "check-readme": "pnpm exec ts-node ../../scripts/check_readme.ts"
39
39
  },
40
40
  "repository": {
41
41
  "type": "git",
@@ -50,19 +50,21 @@
50
50
  "dependencies": {
51
51
  "@chainsafe/blst": "^2.2.0",
52
52
  "@chainsafe/ssz": "^1.2.2",
53
- "@lodestar/api": "1.39.0-dev.d4a47659a5",
54
- "@lodestar/config": "1.39.0-dev.d4a47659a5",
55
- "@lodestar/db": "1.39.0-dev.d4a47659a5",
56
- "@lodestar/params": "1.39.0-dev.d4a47659a5",
57
- "@lodestar/state-transition": "1.39.0-dev.d4a47659a5",
58
- "@lodestar/types": "1.39.0-dev.d4a47659a5",
59
- "@lodestar/utils": "1.39.0-dev.d4a47659a5",
53
+ "@lodestar/api": "^1.39.0-dev.dd21e36997",
54
+ "@lodestar/config": "^1.39.0-dev.dd21e36997",
55
+ "@lodestar/db": "^1.39.0-dev.dd21e36997",
56
+ "@lodestar/params": "^1.39.0-dev.dd21e36997",
57
+ "@lodestar/state-transition": "^1.39.0-dev.dd21e36997",
58
+ "@lodestar/types": "^1.39.0-dev.dd21e36997",
59
+ "@lodestar/utils": "^1.39.0-dev.dd21e36997",
60
60
  "strict-event-emitter-types": "^2.0.0"
61
61
  },
62
62
  "devDependencies": {
63
- "@lodestar/test-utils": "1.39.0-dev.d4a47659a5",
63
+ "@lodestar/logger": "^1.39.0-dev.dd21e36997",
64
+ "@lodestar/spec-test-util": "^1.39.0-dev.dd21e36997",
65
+ "@lodestar/test-utils": "^1.39.0-dev.dd21e36997",
64
66
  "bigint-buffer": "^1.1.5",
65
67
  "rimraf": "^4.4.1"
66
68
  },
67
- "gitHead": "ece402e986e6babc414c33018cbe7337c68ffd67"
69
+ "gitHead": "e334a5a32b4927f71942359b9a8e64c6927268a9"
68
70
  }
@@ -1,8 +1,8 @@
1
- import {ApiClient, routes} from "@lodestar/api";
1
+ import {ApiClient} from "@lodestar/api";
2
2
  import {ChainForkConfig} from "@lodestar/config";
3
3
  import {ForkName, isForkPostElectra} from "@lodestar/params";
4
- import {computeEpochAtSlot, isAggregatorFromCommitteeLength} from "@lodestar/state-transition";
5
- import {BLSSignature, SignedAggregateAndProof, SingleAttestation, Slot, phase0, ssz} from "@lodestar/types";
4
+ import {computeEpochAtSlot} from "@lodestar/state-transition";
5
+ import {SignedAggregateAndProof, SingleAttestation, Slot, phase0, ssz} from "@lodestar/types";
6
6
  import {prettyBytes, sleep, toRootHex} from "@lodestar/utils";
7
7
  import {Metrics} from "../metrics.js";
8
8
  import {PubkeyHex} from "../types.js";
@@ -75,18 +75,6 @@ export class AttestationService {
75
75
  }
76
76
  const fork = this.config.getForkName(slot);
77
77
 
78
- if (this.opts?.distributedAggregationSelection) {
79
- // Validator in distributed cluster only has a key share, not the full private key.
80
- // The partial selection proofs must be exchanged for combined selection proofs by
81
- // calling submitBeaconCommitteeSelections on the distributed validator middleware client.
82
- // This will run in parallel to other attestation tasks but must be finished before starting
83
- // attestation aggregation as it is required to correctly determine if validator is aggregator
84
- // and to produce a AggregateAndProof that can be threshold aggregated by the middleware client.
85
- this.runDistributedAggregationSelectionTasks(fork, duties, slot, signal).catch((e) =>
86
- this.logger.error("Error on attestation aggregation selection", {slot}, e)
87
- );
88
- }
89
-
90
78
  // A validator should create and broadcast the attestation to the associated attestation subnet when either
91
79
  // (a) the validator has received a valid block from the expected block proposer for the assigned slot or
92
80
  // (b) ATTESTATION_DUE_BPS of the slot has transpired -- whichever comes first.
@@ -274,89 +262,4 @@ export class AttestationService {
274
262
  }
275
263
  }
276
264
  }
277
-
278
- /**
279
- * Performs additional attestation aggregation tasks required if validator is part of distributed cluster
280
- *
281
- * 1. Exchange partial for combined selection proofs
282
- * 2. Determine validators that should aggregate attestations
283
- * 3. Mutate duty objects to set selection proofs for aggregators
284
- * 4. Resubscribe validators as aggregators on beacon committee subnets
285
- *
286
- * See https://docs.google.com/document/d/1q9jOTPcYQa-3L8luRvQJ-M0eegtba4Nmon3dpO79TMk/mobilebasic
287
- */
288
- private async runDistributedAggregationSelectionTasks(
289
- fork: ForkName,
290
- duties: AttDutyAndProof[],
291
- slot: number,
292
- signal: AbortSignal
293
- ): Promise<void> {
294
- const partialSelections: routes.validator.BeaconCommitteeSelection[] = duties.map(
295
- ({duty, partialSelectionProof}) => ({
296
- validatorIndex: duty.validatorIndex,
297
- slot,
298
- selectionProof: partialSelectionProof as BLSSignature,
299
- })
300
- );
301
-
302
- this.logger.debug("Submitting partial beacon committee selection proofs", {slot, count: partialSelections.length});
303
-
304
- const res = await Promise.race([
305
- this.api.validator.submitBeaconCommitteeSelections({selections: partialSelections}),
306
- // Exit attestation aggregation flow if there is no response after ATTESTATION_DUE_BPS of the slot as
307
- // beacon node would likely not have enough time to prepare an aggregate attestation.
308
- // Note that the aggregations flow is not explicitly exited but rather will be skipped
309
- // due to the fact that calculation of `is_aggregator` in AttestationDutiesService is not done
310
- // and selectionProof is set to null, meaning no validator will be considered an aggregator.
311
- sleep(this.config.getAttestationDueMs(fork) - this.clock.msFromSlot(slot), signal),
312
- ]);
313
-
314
- if (!res) {
315
- throw new Error("Failed to receive combined selection proofs before ATTESTATION_DUE_BPS of the slot");
316
- }
317
-
318
- const combinedSelections = res.value();
319
- this.logger.debug("Received combined beacon committee selection proofs", {slot, count: combinedSelections.length});
320
-
321
- const beaconCommitteeSubscriptions: routes.validator.BeaconCommitteeSubscription[] = [];
322
-
323
- for (const dutyAndProof of duties) {
324
- const {validatorIndex, committeeIndex, committeeLength, committeesAtSlot} = dutyAndProof.duty;
325
- const logCtxValidator = {slot, index: committeeIndex, validatorIndex};
326
-
327
- const combinedSelection = combinedSelections.find((s) => s.validatorIndex === validatorIndex && s.slot === slot);
328
-
329
- if (!combinedSelection) {
330
- this.logger.warn("Did not receive combined beacon committee selection proof", logCtxValidator);
331
- continue;
332
- }
333
-
334
- const isAggregator = isAggregatorFromCommitteeLength(committeeLength, combinedSelection.selectionProof);
335
-
336
- if (isAggregator) {
337
- // Update selection proof by mutating duty object
338
- dutyAndProof.selectionProof = combinedSelection.selectionProof;
339
-
340
- // Only push subnet subscriptions with `isAggregator=true` as all validators
341
- // with duties for slot are already subscribed to subnets with `isAggregator=false`.
342
- beaconCommitteeSubscriptions.push({
343
- validatorIndex,
344
- committeesAtSlot,
345
- committeeIndex,
346
- slot,
347
- isAggregator,
348
- });
349
- this.logger.debug("Resubscribing validator as aggregator on beacon committee subnet", logCtxValidator);
350
- }
351
- }
352
-
353
- // If there are any subscriptions with aggregators, push them out to the beacon node.
354
- if (beaconCommitteeSubscriptions.length > 0) {
355
- (await this.api.validator.prepareBeaconCommitteeSubnet({subscriptions: beaconCommitteeSubscriptions})).assertOk();
356
- this.logger.debug("Resubscribed validators as aggregators on beacon committee subnets", {
357
- slot,
358
- count: beaconCommitteeSubscriptions.length,
359
- });
360
- }
361
- }
362
265
  }
@@ -204,6 +204,17 @@ export class AttestationDutiesService {
204
204
  for (const epoch of [currentEpoch, nextEpoch]) {
205
205
  const epochDuties = this.dutiesByIndexByEpoch.get(epoch)?.dutiesByIndex;
206
206
  if (epochDuties) {
207
+ if (this.opts?.distributedAggregationSelection) {
208
+ // Validator in distributed cluster only has a key share, not the full private key.
209
+ // The partial selection proofs must be exchanged for combined selection proofs by
210
+ // calling submitBeaconCommitteeSelections on the distributed validator middleware client.
211
+ // This is required to correctly determine if validator is aggregator and to produce
212
+ // a AggregateAndProof that can be threshold aggregated by the middleware client.
213
+ await this.runDistributedAggregationSelectionTasks(Array.from(epochDuties.values()), epoch).catch((e) =>
214
+ this.logger.debug("Error on attestation aggregation selection", {epoch}, e)
215
+ );
216
+ }
217
+
207
218
  for (const {duty, selectionProof} of epochDuties.values()) {
208
219
  if (indexSet.has(duty.validatorIndex)) {
209
220
  beaconCommitteeSubscriptions.push({
@@ -367,6 +378,12 @@ export class AttestationDutiesService {
367
378
  const epochDuties = this.dutiesByIndexByEpoch.get(dutyEpoch)?.dutiesByIndex;
368
379
 
369
380
  if (epochDuties) {
381
+ if (this.opts?.distributedAggregationSelection) {
382
+ await this.runDistributedAggregationSelectionTasks(Array.from(epochDuties.values()), dutyEpoch).catch((e) =>
383
+ this.logger.debug("Error on attestation aggregation selection after duties reorg", logContext, e)
384
+ );
385
+ }
386
+
370
387
  for (const {duty, selectionProof} of epochDuties.values()) {
371
388
  beaconCommitteeSubscriptions.push({
372
389
  validatorIndex: duty.validatorIndex,
@@ -403,8 +420,8 @@ export class AttestationDutiesService {
403
420
  if (this.opts?.distributedAggregationSelection) {
404
421
  // Validator in distributed cluster only has a key share, not the full private key.
405
422
  // Passing a partial selection proof to `is_aggregator` would produce incorrect result.
406
- // AttestationService will exchange partial for combined selection proofs retrieved from
407
- // distributed validator middleware client and determine aggregators at beginning of every slot.
423
+ // Before subscribing to beacon committee subnets, aggregators are determined by exchanging
424
+ // partial for combined selection proofs retrieved from distributed validator middleware client.
408
425
  return {duty, selectionProof: null, partialSelectionProof: selectionProof};
409
426
  }
410
427
 
@@ -427,4 +444,64 @@ export class AttestationDutiesService {
427
444
  }
428
445
  }
429
446
  }
447
+
448
+ /**
449
+ * Performs additional attestation aggregation tasks required if validator is part of distributed cluster
450
+ *
451
+ * 1. Exchange partial for combined selection proofs
452
+ * 2. Determine validators that should aggregate attestations
453
+ * 3. Mutate duty objects to set selection proofs for aggregators
454
+ */
455
+ private async runDistributedAggregationSelectionTasks(duties: AttDutyAndProof[], epoch: Epoch): Promise<void> {
456
+ if (duties.length === 0) {
457
+ return;
458
+ }
459
+
460
+ const partialSelections: routes.validator.BeaconCommitteeSelection[] = duties.map(
461
+ ({duty, partialSelectionProof}) => ({
462
+ validatorIndex: duty.validatorIndex,
463
+ slot: duty.slot,
464
+ selectionProof: partialSelectionProof as BLSSignature,
465
+ })
466
+ );
467
+
468
+ this.logger.debug("Submitting partial beacon committee selection proofs", {epoch, count: partialSelections.length});
469
+
470
+ const res = await this.api.validator.submitBeaconCommitteeSelections({selections: partialSelections});
471
+
472
+ const combinedSelections = new Map<ValidatorIndex, routes.validator.BeaconCommitteeSelection>();
473
+ for (const selection of res.value()) {
474
+ combinedSelections.set(selection.validatorIndex, selection);
475
+ }
476
+ this.logger.debug("Received combined beacon committee selection proofs", {epoch, count: combinedSelections.size});
477
+
478
+ for (const dutyAndProof of duties) {
479
+ const {slot, validatorIndex, committeeIndex, committeeLength} = dutyAndProof.duty;
480
+ const logCtxValidator = {slot, index: committeeIndex, validatorIndex};
481
+
482
+ const combinedSelection = combinedSelections.get(validatorIndex);
483
+
484
+ if (!combinedSelection) {
485
+ this.logger.debug("Did not receive combined beacon committee selection proof", logCtxValidator);
486
+ continue;
487
+ }
488
+
489
+ if (combinedSelection.slot !== slot) {
490
+ this.logger.debug("Received combined beacon committee selection proof for different slot", {
491
+ expected: slot,
492
+ actual: combinedSelection.slot,
493
+ index: committeeIndex,
494
+ validatorIndex,
495
+ });
496
+ continue;
497
+ }
498
+
499
+ const isAggregator = isAggregatorFromCommitteeLength(committeeLength, combinedSelection.selectionProof);
500
+
501
+ if (isAggregator) {
502
+ // Update selection proof by mutating duty object
503
+ dutyAndProof.selectionProof = combinedSelection.selectionProof;
504
+ }
505
+ }
506
+ }
430
507
  }