Make attestation timing requirement mandatory#4452
Make attestation timing requirement mandatory#4452ralexstokes wants to merge 3 commits intoethereum:masterfrom
Conversation
Change attestation timing from "should" to "MUST" to require validators to attest immediately upon receiving a valid block, with the timeout only as a fallback when no block is received. This ensures more consistent behavior across implementations and helps proposers receive attestations earlier when blocks are produced on time. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
I would recommend we use the wording from https://github.com/ethereum/consensus-specs/pull/3433/files#diff-ec5d1e18eeb8287e86befaebb407862e0841fad9955e1fb692aa909d518d478dR209 In particular, it addresses the problem @potuz / Prysm has raised in the past, that in order for this "must" to work, the receiving end also must have a mechanism to handle out-of-order messages - attestations typically travel faster than blocks and without clients handling said messages, we would see greater loss enabling this. I'd also recommend updating sync committee messages at the same time to avoid having two sets of rules for what fundamentally should be the same kind of message. |
I would assume in practice most clients already do this since Lodestar publishes attestations asap already since years and attestation performance is not affected by this. |
From a spec perspective, it's valuable to point out in case of future doubt, given it has caused trouble in the past. |
|
I think the plan was to merge |
Summary
Rationale
Currently, the specification allows implementations to wait until the 4-second mark even if they've already received a valid block. This change ensures more consistent behavior across implementations and helps proposers receive attestations earlier when blocks are produced on time.
Note on sync committee timing
The sync committee message timing in the Altair specification (specs/altair/validator.md) follows a similar pattern but was not updated in this PR. It may benefit from the same change to ensure consistent immediate response upon block reception.
Test plan
🤖 Generated with Claude Code