pub trait LeaderFairness { }Expand description
Assumption (Leader fairness). The leader schedule selects the correct owner of
ActiveCorrectDriver in infinitely many SingleLeader rounds.
The schedule is deterministic and identical at every validator: by LeaderEligibility, the
leader of SingleLeader(n) is drawn by seeding a ChaCha8Rng with
u64::from(n).rotate_left(32) + seed, where seed is the block height, and sampling the
stake-weighted WeightedAliasIndex over ChainOwnership::owners. The assumption is therefore about the generator, not about the
protocol: it holds if ChaCha8, over the round-indexed seed sequence, selects each positive
weight infinitely often. An owner of weight 0 is never selected, and
ChainOwnership::first_leader, if set, deterministically owns SingleLeader(0).