Expand description
Per-view vote collection and certificate formation.
Votes for views arrive concurrently, and each view is tallied on its own
until it crosses a threshold and forms a certificate. VoteCollector
owns the machinery common to every kind of vote, inspecting each vote only
through the Ballot trait. It creates a task per view and voted epoch
and routes votes to the appropriate task, drops duplicate and stale votes,
buffers votes whose epoch is not yet resolved, and GCs decided views. How
a task actually combines votes into an output is delegated to a pluggable
Tally strategy.
Modules§
Structs§
- Epoch
Root Tally - Accumulates epoch-root
Vote1s into the (quorum, state) certificate pair. - Simple
Tally - Accumulates votes into a single
Certificatevia aCheckedAccumulator. - Timeout
Tally - Accumulates
TimeoutBallots into aTimeoutCertificate3once their signers’ combined stake reaches the thresholdTh. - Vote
Collector - Collects votes per view and epoch and forms certificate(s) using the strategy
S. - Vote
Stats - What a single view and epoch has collected.
Traits§
Functions§
Type Aliases§
- Epoch
Root Certs - The quorum and light-client state certificates formed at an epoch-root view.
- Key 🔒
- What a tally is keyed by: the view and the epoch.
- Upgrade
Tally - Accumulates
UpgradeVote2s into anUpgradeCertificate2, under the epoch the votes bind.