Candidate Agreement + Consensus (#29)
* candidate statement importing * import votes on validity * import availability votes * candidate receipt type * make table mod public * test context for table * add harness for tests * some tests for misbehavior * produce proposal from table * count candidate issuance as implicit vote * keep track of messages known by validators * fix primitives compilation * simple BFT agreement * kill unused macro_use annotation * tests for BFT agreement * test for not concluding on different prepares * return summary upon statement import * accept bft agreement on proposal not locally submitted * check justification set for BFT * BFT rewrite: vote accumulator with tests * squash some warnings * a few more tests for the accumulator * add sender to table's signed statement * implement honest node strategy for BFT * inex -> index * import and broadcast lock proofs * poll repeatedly when state changes * don't broadcast advance vote immediately if locked * do not check validity of locked candidate * basic tests for the strategy * remove unused context trait and fix warning * address some review grumbles * address some more review nits * fix lock import logic and add a test * fix spaces * fix a couple more style grumbles * more type-safe justifications * rename Communication enum variants * improve some panic guard proofs * add trailing comma
Showing
- substrate/Cargo.lock 18 additions, 10 deletionssubstrate/Cargo.lock
- substrate/Cargo.toml 1 addition, 0 deletionssubstrate/Cargo.toml
- substrate/candidate-agreement/Cargo.toml 8 additions, 0 deletionssubstrate/candidate-agreement/Cargo.toml
- substrate/candidate-agreement/src/bft/accumulator.rs 607 additions, 0 deletionssubstrate/candidate-agreement/src/bft/accumulator.rs
- substrate/candidate-agreement/src/bft/mod.rs 714 additions, 0 deletionssubstrate/candidate-agreement/src/bft/mod.rs
- substrate/candidate-agreement/src/bft/tests.rs 412 additions, 0 deletionssubstrate/candidate-agreement/src/bft/tests.rs
- substrate/candidate-agreement/src/lib.rs 36 additions, 0 deletionssubstrate/candidate-agreement/src/lib.rs
- substrate/candidate-agreement/src/table.rs 999 additions, 0 deletionssubstrate/candidate-agreement/src/table.rs
- substrate/primitives/src/parachain.rs 25 additions, 6 deletionssubstrate/primitives/src/parachain.rs
Please register or sign in to comment