diff --git a/specs/phase0/validator.md b/specs/phase0/validator.md index 0e3af5b37d..c345508c16 100644 --- a/specs/phase0/validator.md +++ b/specs/phase0/validator.md @@ -597,12 +597,12 @@ each epoch. The `committee`, assigned `index`, and assigned `slot` for which the validator performs this role during an epoch are defined by `get_committee_assignment(state, epoch, validator_index)`. -A validator should create and broadcast the `attestation` to the associated -attestation subnet when either (a) the validator has received a valid block from -the expected block proposer for the assigned `slot` or (b) -`1 / INTERVALS_PER_SLOT` of the `slot` has transpired -(`SECONDS_PER_SLOT / INTERVALS_PER_SLOT` seconds after the start of `slot`) -- -whichever comes _first_. +A validator MUST create and broadcast the `attestation` to the associated +attestation subnet immediately upon receiving a valid block from the expected +block proposer for the assigned `slot`. If no valid block is received by +`1 / INTERVALS_PER_SLOT` of the `slot` transpiring +(`SECONDS_PER_SLOT / INTERVALS_PER_SLOT` seconds after the start of `slot`), the +validator MUST create and broadcast the attestation at that time. *Note*: Although attestations during `GENESIS_EPOCH` do not count toward FFG finality, these initial attestations do give weight to the fork choice, are