@lodestar/validator 1.47.0-dev.9087110398 → 1.47.0-dev.92b9ec6e8b

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 (34) hide show
  1. package/lib/services/block.d.ts.map +1 -1
  2. package/lib/services/block.js +32 -2
  3. package/lib/services/block.js.map +1 -1
  4. package/lib/services/builderPreferences.d.ts +27 -0
  5. package/lib/services/builderPreferences.d.ts.map +1 -0
  6. package/lib/services/builderPreferences.js +127 -0
  7. package/lib/services/builderPreferences.js.map +1 -0
  8. package/lib/services/externalSignerSync.js +1 -1
  9. package/lib/services/externalSignerSync.js.map +1 -1
  10. package/lib/services/prepareBeaconProposer.d.ts.map +1 -1
  11. package/lib/services/prepareBeaconProposer.js +5 -2
  12. package/lib/services/prepareBeaconProposer.js.map +1 -1
  13. package/lib/services/validatorStore.d.ts +40 -2
  14. package/lib/services/validatorStore.d.ts.map +1 -1
  15. package/lib/services/validatorStore.js +174 -10
  16. package/lib/services/validatorStore.js.map +1 -1
  17. package/lib/types.d.ts +1 -1
  18. package/lib/types.d.ts.map +1 -1
  19. package/lib/util/externalSignerClient.d.ts +5 -1
  20. package/lib/util/externalSignerClient.d.ts.map +1 -1
  21. package/lib/util/externalSignerClient.js +4 -0
  22. package/lib/util/externalSignerClient.js.map +1 -1
  23. package/lib/validator.d.ts.map +1 -1
  24. package/lib/validator.js +2 -0
  25. package/lib/validator.js.map +1 -1
  26. package/package.json +14 -14
  27. package/src/services/block.ts +36 -2
  28. package/src/services/builderPreferences.ts +142 -0
  29. package/src/services/externalSignerSync.ts +1 -1
  30. package/src/services/prepareBeaconProposer.ts +5 -2
  31. package/src/services/validatorStore.ts +238 -12
  32. package/src/types.ts +1 -1
  33. package/src/util/externalSignerClient.ts +7 -1
  34. package/src/validator.ts +2 -0
@@ -36,6 +36,7 @@ export enum SignableMessageType {
36
36
  EXECUTION_PAYLOAD_ENVELOPE = "EXECUTION_PAYLOAD_ENVELOPE",
37
37
  PAYLOAD_ATTESTATION = "PAYLOAD_ATTESTATION",
38
38
  PROPOSER_PREFERENCES = "PROPOSER_PREFERENCES",
39
+ BUILDER_REQUEST_AUTH = "BUILDER_REQUEST_AUTH",
39
40
  }
40
41
 
41
42
  const AggregationSlotType = new ContainerType({
@@ -87,7 +88,8 @@ export type SignableMessage =
87
88
  | {type: SignableMessageType.VALIDATOR_REGISTRATION; data: ValidatorRegistrationV1}
88
89
  | {type: SignableMessageType.EXECUTION_PAYLOAD_ENVELOPE; data: gloas.ExecutionPayloadEnvelope}
89
90
  | {type: SignableMessageType.PAYLOAD_ATTESTATION; data: gloas.PayloadAttestationData}
90
- | {type: SignableMessageType.PROPOSER_PREFERENCES; data: gloas.ProposerPreferences};
91
+ | {type: SignableMessageType.PROPOSER_PREFERENCES; data: gloas.ProposerPreferences}
92
+ | {type: SignableMessageType.BUILDER_REQUEST_AUTH; data: gloas.BuilderRequestAuth};
91
93
 
92
94
  const requiresForkInfo: Record<SignableMessageType, boolean> = {
93
95
  [SignableMessageType.AGGREGATION_SLOT]: true,
@@ -105,6 +107,7 @@ const requiresForkInfo: Record<SignableMessageType, boolean> = {
105
107
  [SignableMessageType.EXECUTION_PAYLOAD_ENVELOPE]: true,
106
108
  [SignableMessageType.PAYLOAD_ATTESTATION]: true,
107
109
  [SignableMessageType.PROPOSER_PREFERENCES]: true,
110
+ [SignableMessageType.BUILDER_REQUEST_AUTH]: false,
108
111
  };
109
112
 
110
113
  type Web3SignerSerializedRequest = {
@@ -285,6 +288,9 @@ function serializerSignableMessagePayload(config: BeaconConfig, payload: Signabl
285
288
 
286
289
  case SignableMessageType.PROPOSER_PREFERENCES:
287
290
  return {proposer_preferences: ssz.gloas.ProposerPreferences.toJson(payload.data)};
291
+
292
+ case SignableMessageType.BUILDER_REQUEST_AUTH:
293
+ return {builder_request_auth: ssz.gloas.BuilderRequestAuth.toJson(payload.data)};
288
294
  }
289
295
  }
290
296
 
package/src/validator.ts CHANGED
@@ -16,6 +16,7 @@ import {MetaDataRepository} from "./repositories/metaDataRepository.js";
16
16
  import {AttestationService} from "./services/attestation.js";
17
17
  import {BlockProposingService} from "./services/block.js";
18
18
  import {BlockDutiesService} from "./services/blockDuties.js";
19
+ import {BuilderPreferencesService} from "./services/builderPreferences.js";
19
20
  import {ChainHeaderTracker} from "./services/chainHeaderTracker.js";
20
21
  import {DoppelgangerService} from "./services/doppelgangerService.js";
21
22
  import {ValidatorEventEmitter} from "./services/emitter.js";
@@ -313,6 +314,7 @@ export class Validator {
313
314
  );
314
315
 
315
316
  new ProposerPreferencesService(config, loggerVc, api, clock, validatorStore, blockDutiesService, metrics);
317
+ new BuilderPreferencesService(config, loggerVc, api, clock, validatorStore, blockDutiesService, metrics);
316
318
 
317
319
  return new Validator({
318
320
  opts,