diff --git a/packages/cli/src/cmds/validator/handler.ts b/packages/cli/src/cmds/validator/handler.ts index 5365b304bd49..04635dbe1446 100644 --- a/packages/cli/src/cmds/validator/handler.ts +++ b/packages/cli/src/cmds/validator/handler.ts @@ -165,6 +165,7 @@ export async function validatorHandler(args: IValidatorCliArgs & GlobalArgs): Pr doppelgangerProtectionEnabled, afterBlockDelaySlotFraction: args.afterBlockDelaySlotFraction, scAfterBlockDelaySlotFraction: args.scAfterBlockDelaySlotFraction, + disableAttestationGrouping: args.disableAttestationGrouping, valProposerConfig, }, metrics diff --git a/packages/cli/src/cmds/validator/options.ts b/packages/cli/src/cmds/validator/options.ts index 6462c320a578..1ad12b1ef0c5 100644 --- a/packages/cli/src/cmds/validator/options.ts +++ b/packages/cli/src/cmds/validator/options.ts @@ -36,6 +36,7 @@ export type IValidatorCliArgs = AccountValidatorArgs & graffiti: string; afterBlockDelaySlotFraction?: number; scAfterBlockDelaySlotFraction?: number; + disableAttestationGrouping?: boolean; suggestedFeeRecipient?: string; proposerSettingsFile?: string; strictFeeRecipientCheck?: boolean; @@ -189,6 +190,14 @@ export const validatorOptions: CliCommandOptions = { type: "number", }, + disableAttestationGrouping: { + hidden: true, + description: + "Disables attestation service grouping optimization, attestation tasks will be executed per committee instead of just once for all committees.", + default: false, + type: "boolean", + }, + proposerSettingsFile: { description: "A yaml file to specify detailed default and per validator pubkey customized proposer configs. PS: This feature and its format is in alpha and subject to change", diff --git a/packages/validator/src/validator.ts b/packages/validator/src/validator.ts index 7241c9397a2b..88d6033b5210 100644 --- a/packages/validator/src/validator.ts +++ b/packages/validator/src/validator.ts @@ -33,6 +33,7 @@ export type ValidatorOptions = { abortController: AbortController; afterBlockDelaySlotFraction?: number; scAfterBlockDelaySlotFraction?: number; + disableAttestationGrouping?: boolean; doppelgangerProtectionEnabled?: boolean; closed?: boolean; valProposerConfig?: ValidatorProposerConfig; @@ -123,7 +124,10 @@ export class Validator { emitter, chainHeaderTracker, metrics, - {afterBlockDelaySlotFraction: opts.afterBlockDelaySlotFraction} + { + afterBlockDelaySlotFraction: opts.afterBlockDelaySlotFraction, + disableAttestationGrouping: opts.disableAttestationGrouping, + } ); this.syncCommitteeService = new SyncCommitteeService(