@lodestar/validator 1.35.0-dev.fcf8d024ea → 1.35.0-dev.feed916580

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.
Files changed (131) hide show
  1. package/lib/metrics.js +14 -14
  2. package/lib/metrics.js.map +1 -1
  3. package/lib/services/attestation.js +27 -35
  4. package/lib/services/attestation.js.map +1 -1
  5. package/lib/services/attestationDuties.js +0 -1
  6. package/lib/services/attestationDuties.js.map +1 -1
  7. package/lib/services/blockDuties.d.ts +2 -2
  8. package/lib/services/blockDuties.js +3 -4
  9. package/lib/services/blockDuties.js.map +1 -1
  10. package/lib/services/syncCommittee.js +22 -30
  11. package/lib/services/syncCommittee.js.map +1 -1
  12. package/lib/util/clock.d.ts +0 -3
  13. package/lib/util/clock.js +0 -4
  14. package/lib/util/clock.js.map +1 -1
  15. package/lib/util/params.js +1 -17
  16. package/lib/util/params.js.map +1 -1
  17. package/package.json +16 -19
  18. package/lib/buckets.d.ts.map +0 -1
  19. package/lib/defaults.d.ts.map +0 -1
  20. package/lib/genesis.d.ts.map +0 -1
  21. package/lib/index.d.ts.map +0 -1
  22. package/lib/metrics.d.ts.map +0 -1
  23. package/lib/repositories/index.d.ts.map +0 -1
  24. package/lib/repositories/metaDataRepository.d.ts.map +0 -1
  25. package/lib/services/attestation.d.ts.map +0 -1
  26. package/lib/services/attestationDuties.d.ts.map +0 -1
  27. package/lib/services/block.d.ts.map +0 -1
  28. package/lib/services/blockDuties.d.ts.map +0 -1
  29. package/lib/services/chainHeaderTracker.d.ts.map +0 -1
  30. package/lib/services/doppelgangerService.d.ts.map +0 -1
  31. package/lib/services/emitter.d.ts.map +0 -1
  32. package/lib/services/externalSignerSync.d.ts.map +0 -1
  33. package/lib/services/indices.d.ts.map +0 -1
  34. package/lib/services/prepareBeaconProposer.d.ts.map +0 -1
  35. package/lib/services/syncCommittee.d.ts.map +0 -1
  36. package/lib/services/syncCommitteeDuties.d.ts.map +0 -1
  37. package/lib/services/syncingStatusTracker.d.ts.map +0 -1
  38. package/lib/services/utils.d.ts.map +0 -1
  39. package/lib/services/validatorStore.d.ts.map +0 -1
  40. package/lib/slashingProtection/attestation/attestationByTargetRepository.d.ts.map +0 -1
  41. package/lib/slashingProtection/attestation/attestationLowerBoundRepository.d.ts.map +0 -1
  42. package/lib/slashingProtection/attestation/errors.d.ts.map +0 -1
  43. package/lib/slashingProtection/attestation/index.d.ts.map +0 -1
  44. package/lib/slashingProtection/block/blockBySlotRepository.d.ts.map +0 -1
  45. package/lib/slashingProtection/block/errors.d.ts.map +0 -1
  46. package/lib/slashingProtection/block/index.d.ts.map +0 -1
  47. package/lib/slashingProtection/index.d.ts.map +0 -1
  48. package/lib/slashingProtection/interchange/errors.d.ts.map +0 -1
  49. package/lib/slashingProtection/interchange/formats/completeV4.d.ts.map +0 -1
  50. package/lib/slashingProtection/interchange/formats/index.d.ts.map +0 -1
  51. package/lib/slashingProtection/interchange/formats/v5.d.ts.map +0 -1
  52. package/lib/slashingProtection/interchange/index.d.ts.map +0 -1
  53. package/lib/slashingProtection/interchange/parseInterchange.d.ts.map +0 -1
  54. package/lib/slashingProtection/interchange/serializeInterchange.d.ts.map +0 -1
  55. package/lib/slashingProtection/interchange/types.d.ts.map +0 -1
  56. package/lib/slashingProtection/interface.d.ts.map +0 -1
  57. package/lib/slashingProtection/minMaxSurround/distanceStoreRepository.d.ts.map +0 -1
  58. package/lib/slashingProtection/minMaxSurround/errors.d.ts.map +0 -1
  59. package/lib/slashingProtection/minMaxSurround/index.d.ts.map +0 -1
  60. package/lib/slashingProtection/minMaxSurround/interface.d.ts.map +0 -1
  61. package/lib/slashingProtection/minMaxSurround/minMaxSurround.d.ts.map +0 -1
  62. package/lib/slashingProtection/types.d.ts.map +0 -1
  63. package/lib/slashingProtection/utils.d.ts.map +0 -1
  64. package/lib/types.d.ts.map +0 -1
  65. package/lib/util/batch.d.ts.map +0 -1
  66. package/lib/util/clock.d.ts.map +0 -1
  67. package/lib/util/difference.d.ts.map +0 -1
  68. package/lib/util/externalSignerClient.d.ts.map +0 -1
  69. package/lib/util/format.d.ts.map +0 -1
  70. package/lib/util/index.d.ts.map +0 -1
  71. package/lib/util/logger.d.ts.map +0 -1
  72. package/lib/util/params.d.ts.map +0 -1
  73. package/lib/util/url.d.ts.map +0 -1
  74. package/lib/validator.d.ts.map +0 -1
  75. package/src/buckets.ts +0 -30
  76. package/src/defaults.ts +0 -8
  77. package/src/genesis.ts +0 -19
  78. package/src/index.ts +0 -22
  79. package/src/metrics.ts +0 -417
  80. package/src/repositories/index.ts +0 -1
  81. package/src/repositories/metaDataRepository.ts +0 -42
  82. package/src/services/attestation.ts +0 -362
  83. package/src/services/attestationDuties.ts +0 -406
  84. package/src/services/block.ts +0 -261
  85. package/src/services/blockDuties.ts +0 -217
  86. package/src/services/chainHeaderTracker.ts +0 -89
  87. package/src/services/doppelgangerService.ts +0 -286
  88. package/src/services/emitter.ts +0 -43
  89. package/src/services/externalSignerSync.ts +0 -81
  90. package/src/services/indices.ts +0 -165
  91. package/src/services/prepareBeaconProposer.ts +0 -119
  92. package/src/services/syncCommittee.ts +0 -338
  93. package/src/services/syncCommitteeDuties.ts +0 -337
  94. package/src/services/syncingStatusTracker.ts +0 -74
  95. package/src/services/utils.ts +0 -58
  96. package/src/services/validatorStore.ts +0 -830
  97. package/src/slashingProtection/attestation/attestationByTargetRepository.ts +0 -77
  98. package/src/slashingProtection/attestation/attestationLowerBoundRepository.ts +0 -44
  99. package/src/slashingProtection/attestation/errors.ts +0 -66
  100. package/src/slashingProtection/attestation/index.ts +0 -171
  101. package/src/slashingProtection/block/blockBySlotRepository.ts +0 -78
  102. package/src/slashingProtection/block/errors.ts +0 -28
  103. package/src/slashingProtection/block/index.ts +0 -94
  104. package/src/slashingProtection/index.ts +0 -95
  105. package/src/slashingProtection/interchange/errors.ts +0 -15
  106. package/src/slashingProtection/interchange/formats/completeV4.ts +0 -125
  107. package/src/slashingProtection/interchange/formats/index.ts +0 -7
  108. package/src/slashingProtection/interchange/formats/v5.ts +0 -120
  109. package/src/slashingProtection/interchange/index.ts +0 -5
  110. package/src/slashingProtection/interchange/parseInterchange.ts +0 -55
  111. package/src/slashingProtection/interchange/serializeInterchange.ts +0 -35
  112. package/src/slashingProtection/interchange/types.ts +0 -18
  113. package/src/slashingProtection/interface.ts +0 -28
  114. package/src/slashingProtection/minMaxSurround/distanceStoreRepository.ts +0 -57
  115. package/src/slashingProtection/minMaxSurround/errors.ts +0 -27
  116. package/src/slashingProtection/minMaxSurround/index.ts +0 -4
  117. package/src/slashingProtection/minMaxSurround/interface.ts +0 -23
  118. package/src/slashingProtection/minMaxSurround/minMaxSurround.ts +0 -104
  119. package/src/slashingProtection/types.ts +0 -12
  120. package/src/slashingProtection/utils.ts +0 -42
  121. package/src/types.ts +0 -31
  122. package/src/util/batch.ts +0 -15
  123. package/src/util/clock.ts +0 -170
  124. package/src/util/difference.ts +0 -10
  125. package/src/util/externalSignerClient.ts +0 -277
  126. package/src/util/format.ts +0 -3
  127. package/src/util/index.ts +0 -6
  128. package/src/util/logger.ts +0 -51
  129. package/src/util/params.ts +0 -320
  130. package/src/util/url.ts +0 -16
  131. package/src/validator.ts +0 -418
package/lib/metrics.js CHANGED
@@ -29,54 +29,54 @@ export function getMetrics(register, gitData) {
29
29
  labelNames: ["builderSelection", "broadcastValidation"],
30
30
  }),
31
31
  // Attestation journey:
32
- // - Wait for block or ATTESTATION_DUE_BPS, call prepare attestation
32
+ // - Wait for block or 1/3, call prepare attestation
33
33
  // - Get attestation, sign, call publish
34
- // - Wait AGGREGATE_DUE_BPS, call prepare aggregate
34
+ // - Wait 2/3, call prepare aggregate
35
35
  // - Get aggregate, sign, call publish
36
36
  attesterStepCallProduceAttestation: register.histogram({
37
37
  name: "vc_attester_step_call_produce_attestation_seconds",
38
- help: "Time between ATTESTATION_DUE_BPS of slot and call produce attestation",
39
- // Attester flow can start early if block is imported before ATTESTATION_DUE_BPS of the slot
38
+ help: "Time between 1/3 of slot and call produce attestation",
39
+ // Attester flow can start early if block is imported before 1/3 of the slot
40
40
  // This measure is critical so we need very good resolution around the 0 second mark
41
41
  buckets: [-3, -1, 0, 1, 2, 3, 6, 12],
42
42
  }),
43
43
  attesterStepCallPublishAttestation: register.histogram({
44
44
  name: "vc_attester_step_call_publish_attestation_seconds",
45
- help: "Time between ATTESTATION_DUE_BPS of slot and call publish attestation",
45
+ help: "Time between 1/3 of slot and call publish attestation",
46
46
  buckets: [-3, -1, 0, 1, 2, 3, 6, 12],
47
47
  }),
48
48
  attesterStepCallProduceAggregate: register.histogram({
49
49
  name: "vc_attester_step_call_produce_aggregate_seconds",
50
- help: "Time between AGGREGATE_DUE_BPS of slot and call produce aggregate",
51
- // Aggregate production starts at AGGREGATE_DUE_BPS the earliest.
50
+ help: "Time between 2/3 of slot and call produce aggregate",
51
+ // Aggregate production starts at 2/3 the earliest.
52
52
  // Track values close to 0 (expected) in greater resolution, values over 12 overflow into the next slot.
53
53
  buckets: [0.5, 1, 2, 3, 6, 12],
54
54
  }),
55
55
  attesterStepCallPublishAggregate: register.histogram({
56
56
  name: "vc_attester_step_call_publish_aggregate_seconds",
57
- help: "Time between AGGREGATE_DUE_BPS of slot and call publish aggregate",
57
+ help: "Time between 2/3 of slot and call publish aggregate",
58
58
  buckets: [0.5, 1, 2, 3, 6, 12],
59
59
  }),
60
60
  syncCommitteeStepCallProduceMessage: register.histogram({
61
61
  name: "vc_sync_committee_step_call_produce_message_seconds",
62
- help: "Time between SYNC_MESSAGE_DUE_BPS of slot and call produce message",
63
- // Max wait time is SYNC_MESSAGE_DUE_BPS of slot
62
+ help: "Time between 1/3 of slot and call produce message",
63
+ // Max wait time is 1 / 3 of slot
64
64
  buckets: [0.5, 1, 2, 3, 6, 12],
65
65
  }),
66
66
  syncCommitteeStepCallPublishMessage: register.histogram({
67
67
  name: "vc_sync_committee_step_call_publish_message_seconds",
68
- help: "Time between SYNC_MESSAGE_DUE_BPS of slot and call publish message",
68
+ help: "Time between 1/3 of slot and call publish message",
69
69
  buckets: [0.5, 1, 2, 3, 6, 12],
70
70
  }),
71
71
  syncCommitteeStepCallProduceAggregate: register.histogram({
72
72
  name: "vc_sync_committee_step_call_produce_aggregate_seconds",
73
- help: "Time between CONTRIBUTION_DUE_BPS of slot and call produce aggregate",
74
- // Min wait time is CONTRIBUTION_DUE_BPS of slot
73
+ help: "Time between 2/3 of slot and call produce aggregate",
74
+ // Min wait time is 2 / 3 of slot
75
75
  buckets: [0.5, 1, 2, 3, 6, 12],
76
76
  }),
77
77
  syncCommitteeStepCallPublishAggregate: register.histogram({
78
78
  name: "vc_sync_committee_step_call_publish_aggregate_seconds",
79
- help: "Time between CONTRIBUTION_DUE_BPS of slot and call publish aggregate",
79
+ help: "Time between 2/3 of slot and call publish aggregate",
80
80
  buckets: [0.5, 1, 2, 3, 6, 12],
81
81
  }),
82
82
  // Min wait time it 0. CallProduceBlock step is a bit redundant since it must be 0, but let's check
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { isForkPostElectra } from "@lodestar/params";
1
+ import { ForkSeq } from "@lodestar/params";
2
2
  import { computeEpochAtSlot, isAggregatorFromCommitteeLength } from "@lodestar/state-transition";
3
3
  import { ssz } from "@lodestar/types";
4
4
  import { prettyBytes, sleep, toRootHex } from "@lodestar/utils";
@@ -49,7 +49,6 @@ export class AttestationService {
49
49
  if (duties.length === 0) {
50
50
  return;
51
51
  }
52
- const fork = this.config.getForkName(slot);
53
52
  if (this.opts?.distributedAggregationSelection) {
54
53
  // Validator in distributed cluster only has a key share, not the full private key.
55
54
  // The partial selection proofs must be exchanged for combined selection proofs by
@@ -57,38 +56,31 @@ export class AttestationService {
57
56
  // This will run in parallel to other attestation tasks but must be finished before starting
58
57
  // attestation aggregation as it is required to correctly determine if validator is aggregator
59
58
  // and to produce a AggregateAndProof that can be threshold aggregated by the middleware client.
60
- this.runDistributedAggregationSelectionTasks(fork, duties, slot, signal).catch((e) => this.logger.error("Error on attestation aggregation selection", { slot }, e));
59
+ this.runDistributedAggregationSelectionTasks(duties, slot, signal).catch((e) => this.logger.error("Error on attestation aggregation selection", { slot }, e));
61
60
  }
62
61
  // A validator should create and broadcast the attestation to the associated attestation subnet when either
63
62
  // (a) the validator has received a valid block from the expected block proposer for the assigned slot or
64
- // (b) ATTESTATION_DUE_BPS of the slot has transpired -- whichever comes first.
65
- const attestationDueMs = this.config.getAttestationDueMs(fork);
66
- await Promise.race([
67
- sleep(attestationDueMs - this.clock.msFromSlot(slot), signal),
68
- this.emitter.waitForBlockSlot(slot),
69
- ]);
70
- this.metrics?.attesterStepCallProduceAttestation.observe(this.clock.secFromSlot(slot) - attestationDueMs / 1000);
63
+ // (b) one-third of the slot has transpired (SECONDS_PER_SLOT / 3 seconds after the start of slot) -- whichever comes first.
64
+ await Promise.race([sleep(this.clock.msToSlot(slot + 1 / 3), signal), this.emitter.waitForBlockSlot(slot)]);
65
+ this.metrics?.attesterStepCallProduceAttestation.observe(this.clock.secFromSlot(slot + 1 / 3));
71
66
  // Beacon node's endpoint produceAttestationData return data is not dependent on committeeIndex.
72
67
  // Produce a single attestation for all committees and submit unaggregated attestations in one go.
73
68
  try {
74
69
  // Produce a single attestation for all committees, and clone mutate before signing
75
70
  const attestationNoCommittee = await this.produceAttestation(0, slot);
76
71
  // Step 1. Mutate, and sign `Attestation` for each validator. Then publish all `Attestations` in one go
77
- await this.signAndPublishAttestations(fork, slot, attestationNoCommittee, duties);
72
+ await this.signAndPublishAttestations(slot, attestationNoCommittee, duties);
78
73
  // Step 2. after all attestations are submitted, make an aggregate.
79
- // First, wait until the `aggregation_production_instant` (AGGREGATE_DUE_BPS of the way through the slot)
80
- const aggregateDueMs = this.config.getAggregateDueMs(fork);
81
- await sleep(aggregateDueMs - this.clock.msFromSlot(slot), signal);
82
- this.metrics?.attesterStepCallProduceAggregate.observe(this.clock.secFromSlot(slot) - aggregateDueMs / 1000);
74
+ // First, wait until the `aggregation_production_instant` (2/3rds of the way through the slot)
75
+ await sleep(this.clock.msToSlot(slot + 2 / 3), signal);
76
+ this.metrics?.attesterStepCallProduceAggregate.observe(this.clock.secFromSlot(slot + 2 / 3));
83
77
  const dutiesByCommitteeIndex = groupAttDutiesByCommitteeIndex(duties);
78
+ const isPostElectra = this.config.getForkSeq(slot) >= ForkSeq.electra;
84
79
  // Then download, sign and publish a `SignedAggregateAndProof` for each
85
80
  // validator that is elected to aggregate for this `slot` and `committeeIndex`.
86
81
  await Promise.all(Array.from(dutiesByCommitteeIndex.entries()).map(([index, dutiesSameCommittee]) => {
87
- const attestationData = {
88
- ...attestationNoCommittee,
89
- index: isForkPostElectra(fork) ? 0 : index,
90
- };
91
- return this.produceAndPublishAggregates(fork, attestationData, index, dutiesSameCommittee);
82
+ const attestationData = { ...attestationNoCommittee, index: isPostElectra ? 0 : index };
83
+ return this.produceAndPublishAggregates(attestationData, index, dutiesSameCommittee);
92
84
  }));
93
85
  }
94
86
  catch (e) {
@@ -109,12 +101,13 @@ export class AttestationService {
109
101
  * Only one `Attestation` is downloaded from the BN. It is then signed by each
110
102
  * validator and the list of individually-signed `Attestation` objects is returned to the BN.
111
103
  */
112
- async signAndPublishAttestations(fork, slot, attestationNoCommittee, duties) {
104
+ async signAndPublishAttestations(slot, attestationNoCommittee, duties) {
113
105
  const signedAttestations = [];
114
106
  const headRootHex = toRootHex(attestationNoCommittee.beaconBlockRoot);
115
107
  const currentEpoch = computeEpochAtSlot(slot);
108
+ const isPostElectra = this.config.getForkSeq(slot) >= ForkSeq.electra;
116
109
  await Promise.all(duties.map(async ({ duty }) => {
117
- const index = isForkPostElectra(fork) ? 0 : duty.committeeIndex;
110
+ const index = isPostElectra ? 0 : duty.committeeIndex;
118
111
  const attestationData = { ...attestationNoCommittee, index };
119
112
  const logCtxValidator = { slot, index, head: headRootHex, validatorIndex: duty.validatorIndex };
120
113
  try {
@@ -126,19 +119,18 @@ export class AttestationService {
126
119
  this.logger.error("Error signing attestation", logCtxValidator, e);
127
120
  }
128
121
  }));
129
- // signAndPublishAttestations() may be called before the ATTESTATION_DUE_BPS cutoff time if the block was received early.
122
+ // signAndPublishAttestations() may be called before the 1/3 cutoff time if the block was received early.
130
123
  // If we produced the block or we got the block sooner than our peers, our attestations can be dropped because
131
124
  // they reach our peers before the block. To prevent that, we wait 2 extra seconds AFTER block arrival, but
132
- // never beyond the ATTESTATION_DUE_BPS cutoff time.
125
+ // never beyond the 1/3 cutoff time.
133
126
  // https://github.com/status-im/nimbus-eth2/blob/7b64c1dce4392731a4a59ee3a36caef2e0a8357a/beacon_chain/validators/validator_duties.nim#L1123
134
- const attestationDueMs = this.config.getAttestationDueMs(fork);
135
- const msToCutoffTime = attestationDueMs - this.clock.msFromSlot(slot);
136
- // submitting attestations asap to avoid busy time at around ATTESTATION_DUE_BPS of slot
127
+ const msToOneThirdSlot = this.clock.msToSlot(slot + 1 / 3);
128
+ // submitting attestations asap to avoid busy time at around 1/3 of slot
137
129
  const afterBlockDelayMs = 1000 *
138
130
  this.clock.secondsPerSlot *
139
131
  (this.opts?.afterBlockDelaySlotFraction ?? DEFAULT_AFTER_BLOCK_DELAY_SLOT_FRACTION);
140
- await sleep(Math.min(msToCutoffTime, afterBlockDelayMs));
141
- this.metrics?.attesterStepCallPublishAttestation.observe(this.clock.secFromSlot(slot) - attestationDueMs / 1000);
132
+ await sleep(Math.min(msToOneThirdSlot, afterBlockDelayMs));
133
+ this.metrics?.attesterStepCallPublishAttestation.observe(this.clock.secFromSlot(slot + 1 / 3));
142
134
  // Step 2. Publish all `Attestations` in one go
143
135
  try {
144
136
  (await this.api.beacon.submitPoolAttestationsV2({ signedAttestations })).assertOk();
@@ -165,7 +157,7 @@ export class AttestationService {
165
157
  * by each validator and the list of individually-signed `SignedAggregateAndProof` objects is
166
158
  * returned to the BN.
167
159
  */
168
- async produceAndPublishAggregates(fork, attestation, committeeIndex, duties) {
160
+ async produceAndPublishAggregates(attestation, committeeIndex, duties) {
169
161
  const logCtx = { slot: attestation.slot, index: committeeIndex };
170
162
  // No validator is aggregator, skip
171
163
  if (duties.every(({ selectionProof }) => selectionProof === null)) {
@@ -193,7 +185,7 @@ export class AttestationService {
193
185
  this.logger.error("Error signing aggregateAndProofs", logCtxValidator, e);
194
186
  }
195
187
  }));
196
- this.metrics?.attesterStepCallPublishAggregate.observe(this.clock.secFromSlot(attestation.slot) - this.config.getAggregateDueMs(fork) / 1000);
188
+ this.metrics?.attesterStepCallPublishAggregate.observe(this.clock.secFromSlot(attestation.slot + 2 / 3));
197
189
  if (signedAggregateAndProofs.length > 0) {
198
190
  try {
199
191
  (await this.api.validator.publishAggregateAndProofsV2({ signedAggregateAndProofs })).assertOk();
@@ -219,7 +211,7 @@ export class AttestationService {
219
211
  *
220
212
  * See https://docs.google.com/document/d/1q9jOTPcYQa-3L8luRvQJ-M0eegtba4Nmon3dpO79TMk/mobilebasic
221
213
  */
222
- async runDistributedAggregationSelectionTasks(fork, duties, slot, signal) {
214
+ async runDistributedAggregationSelectionTasks(duties, slot, signal) {
223
215
  const partialSelections = duties.map(({ duty, partialSelectionProof }) => ({
224
216
  validatorIndex: duty.validatorIndex,
225
217
  slot,
@@ -228,15 +220,15 @@ export class AttestationService {
228
220
  this.logger.debug("Submitting partial beacon committee selection proofs", { slot, count: partialSelections.length });
229
221
  const res = await Promise.race([
230
222
  this.api.validator.submitBeaconCommitteeSelections({ selections: partialSelections }),
231
- // Exit attestation aggregation flow if there is no response after ATTESTATION_DUE_BPS of the slot as
223
+ // Exit attestation aggregation flow if there is no response after 1/3 of slot as
232
224
  // beacon node would likely not have enough time to prepare an aggregate attestation.
233
225
  // Note that the aggregations flow is not explicitly exited but rather will be skipped
234
226
  // due to the fact that calculation of `is_aggregator` in AttestationDutiesService is not done
235
227
  // and selectionProof is set to null, meaning no validator will be considered an aggregator.
236
- sleep(this.config.getAttestationDueMs(fork) - this.clock.msFromSlot(slot), signal),
228
+ sleep(this.clock.msToSlot(slot + 1 / 3), signal),
237
229
  ]);
238
230
  if (!res) {
239
- throw new Error("Failed to receive combined selection proofs before ATTESTATION_DUE_BPS of the slot");
231
+ throw new Error("Failed to receive combined selection proofs before 1/3 of slot");
240
232
  }
241
233
  const combinedSelections = res.value();
242
234
  this.logger.debug("Received combined beacon committee selection proofs", { slot, count: combinedSelections.length });
@@ -1 +1 @@
1
- {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../src/services/attestation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../src/services/attestation.ts"],"names":[],"mappings":"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"}
@@ -103,7 +103,6 @@ export class AttestationDutiesService {
103
103
  if ((slot + 1) % SLOTS_PER_EPOCH !== 0) {
104
104
  return;
105
105
  }
106
- // TODO GLOAS: re-evaluate this timing
107
106
  // during the 1 / 3 of epoch, last block of epoch may come
108
107
  await sleep(this.clock.msToSlot(slot + 1 / 3), signal);
109
108
  const nextEpoch = computeEpochAtSlot(slot) + 1;
@@ -1 +1 @@
1
- {"version":3,"file":"attestationDuties.js","sourceRoot":"","sources":["../../src/services/attestationDuties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attestationDuties.js","sourceRoot":"","sources":["../../src/services/attestationDuties.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ApiClient } from "@lodestar/api";
2
- import { ChainForkConfig } from "@lodestar/config";
2
+ import { ChainConfig } from "@lodestar/config";
3
3
  import { BLSPubkey, Slot } from "@lodestar/types";
4
4
  import { Metrics } from "../metrics.js";
5
5
  import { PubkeyHex } from "../types.js";
@@ -19,7 +19,7 @@ export declare class BlockDutiesService {
19
19
  /** Maps an epoch to all *local* proposers in this epoch. Notably, this does not contain
20
20
  proposals for any validators which are not registered locally. */
21
21
  private readonly proposers;
22
- constructor(config: ChainForkConfig, logger: LoggerVc, api: ApiClient, clock: IClock, validatorStore: ValidatorStore, metrics: Metrics | null, notifyBlockProductionFn: NotifyBlockProductionFn);
22
+ constructor(config: ChainConfig, logger: LoggerVc, api: ApiClient, clock: IClock, validatorStore: ValidatorStore, metrics: Metrics | null, notifyBlockProductionFn: NotifyBlockProductionFn);
23
23
  /**
24
24
  * Returns the pubkeys of the validators which are assigned to propose in the given slot.
25
25
  *
@@ -2,11 +2,10 @@ import { computeEpochAtSlot, computeStartSlotAtEpoch } from "@lodestar/state-tra
2
2
  import { sleep, toPubkeyHex } from "@lodestar/utils";
3
3
  import { differenceHex } from "../util/index.js";
4
4
  /** This polls block duties 1s before the next epoch */
5
- // TODO: change to 8333 (5/6 of slot) to do it 2s before the next epoch
5
+ // TODO: change to 6 to do it 2s before the next epoch
6
6
  // once we have some improvement on epoch transition time
7
7
  // see https://github.com/ChainSafe/lodestar/issues/5792#issuecomment-1647457442
8
- // TODO GLOAS: re-evaluate timing
9
- const BLOCK_DUTIES_LOOKAHEAD_BPS = 9167;
8
+ const BLOCK_DUTIES_LOOKAHEAD_FACTOR = 12;
10
9
  /** Only retain `HISTORICAL_DUTIES_EPOCHS` duties prior to the current epoch */
11
10
  const HISTORICAL_DUTIES_EPOCHS = 2;
12
11
  // Re-declaring to not have to depend on `lodestar-params` just for this 0
@@ -152,7 +151,7 @@ export class BlockDutiesService {
152
151
  */
153
152
  async pollBeaconProposersNextEpoch(currentSlot, nextEpoch, signal) {
154
153
  const nextSlot = currentSlot + 1;
155
- const lookAheadMs = this.config.SLOT_DURATION_MS - this.config.getSlotComponentDurationMs(BLOCK_DUTIES_LOOKAHEAD_BPS);
154
+ const lookAheadMs = (this.config.SECONDS_PER_SLOT * 1000) / BLOCK_DUTIES_LOOKAHEAD_FACTOR;
156
155
  await sleep(this.clock.msToSlot(nextSlot) - lookAheadMs, signal);
157
156
  this.logger.debug("Polling proposers for next epoch", { nextEpoch, nextSlot });
158
157
  // Poll proposers for the next epoch
@@ -1 +1 @@
1
- {"version":3,"file":"blockDuties.js","sourceRoot":"","sources":["../../src/services/blockDuties.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blockDuties.js","sourceRoot":"","sources":["../../src/services/blockDuties.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import { isForkPostAltair } from "@lodestar/params";
2
- import { isSyncCommitteeAggregator } from "@lodestar/state-transition";
1
+ import { computeEpochAtSlot, isSyncCommitteeAggregator } from "@lodestar/state-transition";
3
2
  import { sleep } from "@lodestar/utils";
4
3
  import { SyncCommitteeDutiesService } from "./syncCommitteeDuties.js";
5
4
  import { groupSyncDutiesBySubcommitteeIndex } from "./utils.js";
@@ -39,10 +38,9 @@ export class SyncCommitteeService {
39
38
  this.dutiesService.removeDutiesForKey(pubkey);
40
39
  }
41
40
  runSyncCommitteeTasks = async (slot, signal) => {
42
- const fork = this.config.getForkName(slot);
43
41
  try {
44
42
  // Before altair fork no need to check duties
45
- if (!isForkPostAltair(fork)) {
43
+ if (computeEpochAtSlot(slot) < this.config.ALTAIR_FORK_EPOCH) {
46
44
  return;
47
45
  }
48
46
  // Fetch info first so a potential delay is absorbed by the sleep() below
@@ -57,25 +55,20 @@ export class SyncCommitteeService {
57
55
  // This will run in parallel to other sync committee tasks but must be finished before starting
58
56
  // sync committee contributions as it is required to correctly determine if validator is aggregator
59
57
  // and to produce a ContributionAndProof that can be threshold aggregated by the middleware client.
60
- this.runDistributedAggregationSelectionTasks(fork, dutiesAtSlot, slot, signal).catch((e) => this.logger.error("Error on sync committee aggregation selection", { slot }, e));
58
+ this.runDistributedAggregationSelectionTasks(dutiesAtSlot, slot, signal).catch((e) => this.logger.error("Error on sync committee aggregation selection", { slot }, e));
61
59
  }
62
60
  // unlike Attestation, SyncCommitteeSignature could be published asap
63
- // especially with lodestar, it's very busy at ATTESTATION_DUE_BPS of the slot
61
+ // especially with lodestar, it's very busy at 1/3 of slot
64
62
  // see https://github.com/ChainSafe/lodestar/issues/4608
65
- const syncMessageDueMs = this.config.getSyncMessageDueMs(fork);
66
- await Promise.race([
67
- sleep(syncMessageDueMs - this.clock.msFromSlot(slot), signal),
68
- this.emitter.waitForBlockSlot(slot),
69
- ]);
70
- this.metrics?.syncCommitteeStepCallProduceMessage.observe(this.clock.secFromSlot(slot) - syncMessageDueMs / 1000);
63
+ await Promise.race([sleep(this.clock.msToSlot(slot + 1 / 3), signal), this.emitter.waitForBlockSlot(slot)]);
64
+ this.metrics?.syncCommitteeStepCallProduceMessage.observe(this.clock.secFromSlot(slot + 1 / 3));
71
65
  // Step 1. Download, sign and publish an `SyncCommitteeMessage` for each validator.
72
66
  // Differs from AttestationService, `SyncCommitteeMessage` are equal for all
73
- const beaconBlockRoot = await this.produceAndPublishSyncCommittees(fork, slot, dutiesAtSlot);
67
+ const beaconBlockRoot = await this.produceAndPublishSyncCommittees(slot, dutiesAtSlot);
74
68
  // Step 2. If an attestation was produced, make an aggregate.
75
- // First, wait until the `CONTRIBUTION_DUE_BPS` of the slot
76
- const syncContributionDueMs = this.config.getSyncContributionDueMs(fork);
77
- await sleep(syncContributionDueMs - this.clock.msFromSlot(slot), signal);
78
- this.metrics?.syncCommitteeStepCallProduceAggregate.observe(this.clock.secFromSlot(slot) - syncContributionDueMs / 1000);
69
+ // First, wait until the `aggregation_production_instant` (2/3rds of the way though the slot)
70
+ await sleep(this.clock.msToSlot(slot + 2 / 3), signal);
71
+ this.metrics?.syncCommitteeStepCallProduceAggregate.observe(this.clock.secFromSlot(slot + 2 / 3));
79
72
  // await for all so if the Beacon node is overloaded it auto-throttles
80
73
  // TODO: This approach is conservative to reduce the node's load, review
81
74
  const dutiesBySubcommitteeIndex = groupSyncDutiesBySubcommitteeIndex(dutiesAtSlot);
@@ -84,7 +77,7 @@ export class SyncCommitteeService {
84
77
  return;
85
78
  // Then download, sign and publish a `SignedAggregateAndProof` for each
86
79
  // validator that is elected to aggregate for this `slot` and `subcommitteeIndex`.
87
- await this.produceAndPublishAggregates(fork, slot, subcommitteeIndex, beaconBlockRoot, duties).catch((e) => {
80
+ await this.produceAndPublishAggregates(slot, subcommitteeIndex, beaconBlockRoot, duties).catch((e) => {
88
81
  this.logger.error("Error on SyncCommitteeContribution", { slot, index: subcommitteeIndex }, e);
89
82
  });
90
83
  }));
@@ -102,7 +95,7 @@ export class SyncCommitteeService {
102
95
  * Only one `SyncCommittee` is downloaded from the BN. It is then signed by each
103
96
  * validator and the list of individually-signed `SyncCommittee` objects is returned to the BN.
104
97
  */
105
- async produceAndPublishSyncCommittees(fork, slot, duties) {
98
+ async produceAndPublishSyncCommittees(slot, duties) {
106
99
  const logCtx = { slot };
107
100
  // /eth/v1/beacon/blocks/:blockId/root -> at slot -1
108
101
  // Produce one attestation data per slot and subcommitteeIndex
@@ -124,14 +117,13 @@ export class SyncCommitteeService {
124
117
  // by default we want to submit SyncCommitteeSignature asap after we receive block
125
118
  // provide a delay option just in case any client implementation validate the existence of block in
126
119
  // SyncCommitteeSignature gossip validation.
127
- const syncMessageDueMs = this.config.getSyncMessageDueMs(fork);
128
- const msToCutoffTime = syncMessageDueMs - this.clock.msFromSlot(slot);
120
+ const msToOneThirdSlot = this.clock.msToSlot(slot + 1 / 3);
129
121
  const afterBlockDelayMs = 1000 * this.clock.secondsPerSlot * (this.opts?.scAfterBlockDelaySlotFraction ?? 0);
130
- const toDelayMs = Math.min(msToCutoffTime, afterBlockDelayMs);
122
+ const toDelayMs = Math.min(msToOneThirdSlot, afterBlockDelayMs);
131
123
  if (toDelayMs > 0) {
132
124
  await sleep(toDelayMs);
133
125
  }
134
- this.metrics?.syncCommitteeStepCallPublishMessage.observe(this.clock.secFromSlot(slot) - syncMessageDueMs / 1000);
126
+ this.metrics?.syncCommitteeStepCallPublishMessage.observe(this.clock.secFromSlot(slot + 1 / 3));
135
127
  if (signatures.length > 0) {
136
128
  try {
137
129
  (await this.api.beacon.submitPoolSyncCommitteeSignatures({ signatures })).assertOk();
@@ -154,7 +146,7 @@ export class SyncCommitteeService {
154
146
  * by each validator and the list of individually-signed `SignedAggregateAndProof` objects is
155
147
  * returned to the BN.
156
148
  */
157
- async produceAndPublishAggregates(fork, slot, subcommitteeIndex, beaconBlockRoot, duties) {
149
+ async produceAndPublishAggregates(slot, subcommitteeIndex, beaconBlockRoot, duties) {
158
150
  const logCtx = { slot, index: subcommitteeIndex };
159
151
  // No validator is aggregator, skip
160
152
  if (duties.every(({ selectionProof }) => selectionProof === null)) {
@@ -176,7 +168,7 @@ export class SyncCommitteeService {
176
168
  this.logger.error("Error signing SyncCommitteeContribution", logCtxValidator, e);
177
169
  }
178
170
  }));
179
- this.metrics?.syncCommitteeStepCallPublishAggregate.observe(this.clock.secFromSlot(slot) - this.config.getSyncContributionDueMs(fork) / 1000);
171
+ this.metrics?.syncCommitteeStepCallPublishAggregate.observe(this.clock.secFromSlot(slot + 2 / 3));
180
172
  if (signedContributions.length > 0) {
181
173
  try {
182
174
  (await this.api.validator.publishContributionAndProofs({ contributionAndProofs: signedContributions })).assertOk();
@@ -197,7 +189,7 @@ export class SyncCommitteeService {
197
189
  *
198
190
  * See https://docs.google.com/document/d/1q9jOTPcYQa-3L8luRvQJ-M0eegtba4Nmon3dpO79TMk/mobilebasic
199
191
  */
200
- async runDistributedAggregationSelectionTasks(fork, duties, slot, signal) {
192
+ async runDistributedAggregationSelectionTasks(duties, slot, signal) {
201
193
  const partialSelections = [];
202
194
  for (const { duty, selectionProofs } of duties) {
203
195
  const validatorSelections = selectionProofs.map(({ subcommitteeIndex, partialSelectionProof }) => ({
@@ -211,17 +203,17 @@ export class SyncCommitteeService {
211
203
  this.logger.debug("Submitting partial sync committee selection proofs", { slot, count: partialSelections.length });
212
204
  const res = await Promise.race([
213
205
  this.api.validator.submitSyncCommitteeSelections({ selections: partialSelections }),
214
- // Exit sync committee contributions flow if there is no response after CONTRIBUTION_DUE_BPS of the slot.
215
- // This is in contrast to attestations aggregations flow which is already exited at ATTESTATION_DUE_BPS of the slot
206
+ // Exit sync committee contributions flow if there is no response after 2/3 of slot.
207
+ // This is in contrast to attestations aggregations flow which is already exited at 1/3 of the slot
216
208
  // because for sync committee is not required to resubscribe to subnets as beacon node will assume
217
209
  // validator always aggregates. This allows us to wait until we have to produce sync committee contributions.
218
210
  // Note that the sync committee contributions flow is not explicitly exited but rather will be skipped
219
211
  // due to the fact that calculation of `is_sync_committee_aggregator` in SyncCommitteeDutiesService is not done
220
212
  // and selectionProof is set to null, meaning no validator will be considered an aggregator.
221
- sleep(this.config.getSyncContributionDueMs(fork) - this.clock.msFromSlot(slot), signal),
213
+ sleep(this.clock.msToSlot(slot + 2 / 3), signal),
222
214
  ]);
223
215
  if (!res) {
224
- throw new Error("Failed to receive combined selection proofs before CONTRIBUTION_DUE_BPS of the slot");
216
+ throw new Error("Failed to receive combined selection proofs before 2/3 of slot");
225
217
  }
226
218
  const combinedSelections = res.value();
227
219
  this.logger.debug("Received combined sync committee selection proofs", { slot, count: combinedSelections.length });