mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-25 21:11:07 +00:00
d1b1c17285
* choose the straightforward candidate selection algorithm for now * add draft implementation of candidate selection * fix typo in summary * more properly report misbehaving collators * describe how CandidateSelection subsystem becomes aware of candidates * revise candidate selection / collator protocol interaction pattern * implement rest of candidate selection per the guide * review: resolve nits * start writing test suite, harness * implement first test * add second test * implement third test Co-authored-by: Bernhard Schuster <bernhard@ahoi.io>
Backing Subsystems
The backing subsystems, when conceived as a black box, receive an arbitrary quantity of parablock candidates and associated proofs of validity from arbitrary untrusted collators. From these, they produce a bounded quantity of backable candidates which relay chain block authors may choose to include in a subsequent block.
In broad strokes, the flow operates like this:
- Candidate Selection winnows the field of parablock candidates, selecting up to one of them to second.
- Candidate Backing ensures that a seconding candidate is valid, then generates the appropriate
Statement. It also keeps track of which candidates have received the backing of a quorum of other validators. - Statement Distribution is the networking component which ensures that all validators receive each others' statements.
- PoV Distribution is the networking component which ensures that validators considering a candidate can get the appropriate PoV.