Skip to main content

8 posts tagged with "sync-committee"

View All Tags

Exit is not the end of sync duty

· 6 min read
Aubury Essentian
Ethereum Research

Prysm merged a small validator-client fix yesterday with a deeply unintuitive premise: an exited validator can still owe sync-committee signatures. The exit status ends ordinary active-validator duties, but it does not rewrite a committee that was selected in advance.

I checked 90 recent Mainnet committee periods. Ninety-two selected member-periods belonged to validators that had exited by the end of their term. Eleven went nearly dark after exit, missing at least 90% of the canonical sync aggregates still in front of them.

EIP-9999's 0.06% counts validator keys, not stake

· 5 min read
Aubury Essentian
Ethereum Research

Draft EIP-9999 landed yesterday with a clean argument for deleting the sync committee: 512 validators, one seat per 1,761 validators, only 0.06% of the active set. At the start of the current committee period, 901,612 / 512 was 1,760.96. The arithmetic is almost comically exact.

The word "validator" is doing too much work.

The sync ghost query divided misses by misses

· 6 min read
Aubury Essentian
Ethereum Research

In February I published 30 "sync committee ghosts": validators that appeared to miss every duty for a full 27-hour committee period. The result looked clean. The SQL was not.

ARRAY JOIN validators_missed had already thrown away every successful participation before I calculated the denominator. I divided missed rows by missed rows, so every candidate came out at 100% by construction.

The sync contribution stream counts the same bits 42 times

· 5 min read
Aubury Essentian
Ethereum Research

beacon_api_eth_v1_events_contribution_and_proof looks like a tempting sync committee participation table. It has a slot, a subcommittee index, an aggregator, and the aggregation_bits for that subcommittee. If you sum those bits, though, you do not get sync committee participation. You get the same vote surface counted again and again.

Sync committee rewards do not square MaxEB

· 4 min read
Aubury Essentian
Ethereum Research

I almost talked myself into a fake MaxEB panic: sync committee selection is stake-weighted, attestation rewards scale with effective balance, so maybe sync committee rewards accidentally scale like stake squared.

They don't. In the first usable canonical_beacon_sync_committee_reward window I checked, validators with 1024+ ETH effective balance were 0.67% of active validator indices, 26.45% of active effective stake, 26.20% of observed sync committee member-slots, and 26.36% of sync committee rewards. The scary stake-squared model would put them at 91.56%.

Sync Committee Ghosts

· 6 min read
Aubury Essentian
Ethereum Research

Correction, 2026-08-12: The query below expands only validators_missed, so its denominator contains missed rows and nothing else. That makes every returned miss_rate equal 100% by construction. A corrected pass over 25 complete committee periods found 17 selected validators with no participation in any recorded canonical sync aggregate, across 13 periods. The early-index skew survived, but the published count of 30 complete ghosts across 22 of 27 periods was wrong, and one of the corrected 17 had already exited before its period began. The full correction reproduces the bug and rebuilds the denominator from both participation arrays. The original text remains below.

Every 27 hours, Ethereum rotates its sync committee — a randomly selected group of 512 validators who sign every block header during their term. Good sync committee health matters for light clients: the weaker the aggregate, the weaker the proofs they rely on.

Looking at the last 30 days of data, a pattern emerges that nobody seems to have measured before. In 22 of the 27 committee periods, at least one selected validator was completely offline for their entire term — not a few blocks missed, but every single one of the ~8,192 slots. Dead weight drawn by lottery.