Skip to content

Deduplicate slasher ingress for identical indexed attestations - #10107

Open
NikhilSharmaWe wants to merge 2 commits into
sigp:unstablefrom
NikhilSharmaWe:fix/slasher-attestation-replay-dedup
Open

NikhilSharmaWe wants to merge 2 commits into
sigp:unstablefrom
NikhilSharmaWe:fix/slasher-attestation-replay-dedup

Conversation

@NikhilSharmaWe

Copy link
Copy Markdown
Contributor

Description

Mutating only SingleAttestation.committee_index produces a new gossip message ID but the same indexed attestation. With --slasher, PriorAttestationKnown replays still did an individual BLS verify and were appended to an unbounded ingress queue.

Deduplicate the slasher ingress queue on (validator_index, attestation_data_hash), and skip verify/accept in process_slash_info when that attestation is already staged. Conflicting AttestationData from the same validator is still accepted.

Fixes #10086

Test plan

  • cargo check -p slasher -p beacon_chain --features "slasher/lmdb"
  • cargo nextest run -p slasher --features "lmdb"
  • cargo nextest run -p beacon_chain --release --features "slasher/lmdb" unaggregated_attestation_committee_index_replay unaggregated_attestation_bogus_attester_index_not_sent_to_slasher

Signed-off-by: Nikhil Sharma <nikhilsharma230303@gmail.com>
@michaelsproul michaelsproul added optimization Something to make Lighthouse run more efficiently. slasher labels Sep 23, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

optimization Something to make Lighthouse run more efficiently. slasher

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants