- Aug 05, 2020
-
-
asynchronous rob authored
* rename protocol ID to network capability * guide: `ProtocolId` -> `NetworkCapability` * guide: remove `RegisterEventProducer` * capabilities and expand on underlying network assumptions * guide: create network.md types file * guide: network bridge is aware of network messages * revert changes in code * Update roadmap/implementers-guide/src/SUMMARY.md Co-authored-by: Pierre Krieger <[email protected]> * remove references to NetworkCapability * Update roadmap/implementers-guide/src/types/network.md Co-authored-by: Sergei Shulepov <[email protected]> Co-authored-by: Pierre Krieger <[email protected]> Co-authored-by: Sergei Shulepov <[email protected]>
-
- Aug 04, 2020
-
-
Sergey Pepyakin authored
-
- Aug 03, 2020
-
-
Sergey Pepyakin authored
* Add notes about contextual execution * Clarify that `validation_data_hash` consists of global and local data * Update roadmap/implementers-guide/src/runtime/inclusion.md Co-authored-by: Bastian Köcher <[email protected]> * Incorporate rphmeier's suggestion. Co-authored-by: Bastian Köcher <[email protected]>
-
- Jul 31, 2020
-
-
ordian authored
* chain-api subsystem skeleton * chain-api subsystem: draft impl * chain-api subsystem: mock testclient * chain-api subsystem: impl HeaderBacked for TestClient * chain-api subsystem: impl basic tests * chain-api subsystem: tiny guide * chain-api subsystem: rename ChainApiRequestMessage to ChainApiMessage * chain-api subsystem: add the page to the ToC * chain-api subsystem: proper error type * chain-api subsystem: impl ancestors request * chain-api subsystem: tests for ancestors request * guide: fix ancestor return type * runtime-api subsystem: remove unused dep * fix fmt * fix outdated comment * chain-api subsystem: s/format/to_string * lower-case subsystem names * chain-api subsystem: resolve Finalized todo * chain-api subsystem: remove TODO * extract request errors into a module * remove caching TODO * fix imports
-
asynchronous rob authored
* Do a small write-up on collation-generation * preamble to collator protocol * notes on protocol * collation-generation: point to collator protocol * fix missing bracket * expand on collator protocol wire protocol * add a couple more sentences * expand on requests some more * go higher level * network bridge: note peerset * note peer-set = validation for protocols * add `ConnectToValidators` message * use ConnectToValidators in collator protocol * typo * remove references to sentry nodes
-
ordian authored
* guide: optimize diagrams for readability * guide: inclusion subsystem diagram * guide: rename Approval Subsystem for clarity * guide: correct the approval subsystem * guide: clarify that validator are selected from the same set * guide: simplify secondary checkers labels
-
- Jul 30, 2020
-
-
asynchronous rob authored
* skeleton for candidate-validation * add to workspace * implement candidate validation logic * guide: note occupied-core assumption for candidate validation * adjust message doc * wire together `run` asynchronously * add a Subsystem implementation * clean up a couple warnings * fix compilation errors due to merge * improve candidate-validation.md * remove old reference to subsystem-test helpers crate * update Cargo.lock * add a couple new Runtime API methods * add a candidate validation message * fetch validation data from the chain state * some tests for assumption checking * make spawn_validate_exhaustive mockable * more tests on the error handling side * fix all other grumbles except for wasm validation API change * wrap a SpawnNamed in candidate-validation * warn * amend guide * squanch warning * remove duplicate after merge
-
- Jul 27, 2020
-
-
Fedor Sakharov authored
* Improve AVStore and Scheduler docs * Update roadmap/implementers-guide/src/node/utility/availability-store.md Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Bug in linking to README.md * Update against new runtime apis Co-authored-by: Peter Goodspeed-Niklaus <[email protected]>
-
Fedor Sakharov authored
* Initial commit * WIP * Make atomic transactions * Remove pruning code * Fix build and add a Nop to bridge * Fixes from review * Move config struct around for clarity * Rename constructor and warn on missing docs * Fix a test and rename a message * Fix some more reviews * Obviously failed to rebase cleanly
-
- Jul 23, 2020
-
-
asynchronous rob authored
* rename GlobalValidationSchedule to GlobalValidationData * guide: update candidate descriptor to contain validation data hash * guide: add note in inclusion module about checking validation data hash * primitives: update CandidateDescriptor to contain new hash * fix payload computation * add helpers for computing validation data to runtime modules * guide: note routines * inclusion: check validation data hash and fix local_validation_data bug * add a case to candidate_checks and improve that test substantially * bump versions * address review comments * add a test for including code upgrade * bump kusama version * bump westend & polkadot versions
-
Peter Goodspeed-Niklaus authored
* update guide to reduce confusion and TODOs * work from previous bitfield signing effort There were large merge issues with the old bitfield signing PR, so we're just copying all the work from that onto this and restarting. Much of the existing work will be discarded because we now have better tools available, but that's fine. * start rewriting bitfield signing in terms of the util module * implement construct_availability_bitvec It's not an ideal implementation--we can make it much more concurrent-- but at least it compiles. * implement the unimplemented portions of bitfield signing * get core availability concurrently, not sequentially * use sp-std instead of std for a parachain item * resolve type inference failure caused by multiple From impls * handle bitfield signing subsystem & Allmessages variant in overseer * fix more multi-From inference issues * more concisely handle overflow Co-authored-by: Andronik Ordian <[email protected]> * Revert "resolve type inference failure caused by multiple From impls" This reverts commit 7fc77805. * Revert "fix more multi-From inference issues" This reverts commit f14ffe58 . * impl From<i32> for ParaId * handle another instance of AllSubsystems * improve consistency when returning existing options Co-authored-by: Andronik Ordian <[email protected]>
-
Bernhard Schuster authored
* feat bitfield distribution * feat bitfield distribution part 2 * pair programming with rustc & cargo * lets go * move bitfield-distribution to the node/network folder * shape shifting * lunchtime * ignore the two fn recursion for now * step by step * triplesteps * bandaid commit * unordered futures magic * chore * reword markdown * clarify * lacks abortable processing impl details * slimify * fix: warnings and avoid ctx.clone() improve comments * review comments * fix details * make sure outgoing messages are tracked * fix name * fix subsystem * partial test impl * relax context bounds * test * X * X * initial test * fix relay_message not tracked when origin is self * fix/guide: grammar Co-authored-by: Robert Habermeier <[email protected]> * work around missing Eq+PartialEq * fix: add missing message to provisioner * unify per_job to job_data * fix/review: part one * fix/review: more grumbles * fix/review: track incoming messages per peer * fix/review: extract fn, avoid nested matches * fix/review: more tests, simplify test * fix/review: extend tests to cover more cases * chore/rename: Tracker -> ProtocolState * chore check and comment rewording * feat test: invalid peer message * remove ignored test cases and unused macros * fix master merge fallout + warnings Co-authored-by: Robert Habermeier <[email protected]>
-
- Jul 22, 2020
-
-
asynchronous rob authored
-
ordian authored
* runtime: rename parachain_rotation_frequency to group_rotation_frequency * scheduler: handle timeouts for no group rotation * scheduler: apply fixes from code review * scheduler: remove my comments
-
- Jul 18, 2020
-
-
asynchronous rob authored
* create a README on Runtime APIs * add ParaId type * write up runtime APIs * more preamble * rename * rejig runtime APIs * add occupied_since to `BlockNumber` * skeleton crate for runtime API subsystem * improve group_for_core * improve docs on availability cores runtime API * guide: freed -> free * add primitives for runtime APIs * create a v1 ParachainHost API trait * guide: make validation code return `Option`al. * skeleton runtime API helpers * make parachain-host runtime-generic * skeleton for most runtime API implementation functions * guide: add runtime API helper methods * implement new helpers of the inclusion module * guide: remove retries check, as it is unneeded * implement helpers for scheduler module for Runtime APIs * clean up `validator_groups` implementation * implement next_rotation_at and last_rotation_at * guide: more helpers on GroupRotationInfo * almost finish implementing runtime APIs * add explicit block parameter to runtime API fns * guide: generalize number parameter * guide: add group_responsible to occupied-core * update primitives due to guide changes * finishing touches on runtime API implementation; squash warnings * break out runtime API impl to separate file * add tests for next_up logic * test group rotation info * point to filed TODO * remove unused TODO [now] * indentation * guide: para -> para_id * rename para field to para_id for core meta * remove reference to outdated AvailabilityCores type * add an event in `inclusion` for candidates being included or timing out * guide: candidate events * guide: adjust language * Candidate events type from guide and adjust inclusion event * implement `candidate_events` runtime API * fix runtime test compilation * max -> min * fix typos * guide: add `RuntimeAPIRequest::CandidateEvents`
-
- Jul 17, 2020
-
-
ordian authored
* inclusion: split PendingAvailability storage into descriptor and commitments * inclusion: fix tests * implementers-guide: update CandidatePendingAvailability type * inclusion: simplify process_candidates a bit * implementers-guide: more updates to the inclusion module * inclusion: fix copy-paste errors in tests * inclusion: revert some of the changes * inclusion: lazy commitments loading and a test * guide: revert enact_candidate changes * inclusion: test process_bitfield for no commitments * Grammar Co-authored-by: Robert Habermeier <[email protected]> Co-authored-by: Robert Habermeier <[email protected]>
-
asynchronous rob authored
* create a README on Runtime APIs * add ParaId type * write up runtime APIs * more preamble * rename * rejig runtime APIs * add occupied_since to `BlockNumber` * improve group_for_core * improve docs on availability cores runtime API * guide: freed -> free * Update roadmap/implementers-guide/src/runtime-api/README.md Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * add explicit block parameter to runtime API fns Co-authored-by: Peter Goodspeed-Niklaus <[email protected]>
-
- Jul 16, 2020
-
-
asynchronous rob authored
* add assumptions made by the Node-side * Update roadmap/implementers-guide/src/node/README.md Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Update roadmap/implementers-guide/src/node/README.md Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Update roadmap/implementers-guide/src/node/README.md Co-authored-by: Bernhard Schuster <[email protected]> * more refinements Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> Co-authored-by: Bernhard Schuster <[email protected]>
-
- Jul 10, 2020
-
-
Peter Goodspeed-Niklaus authored
Per https://github.com/paritytech/polkadot/commit/69ce9ff3#r40392855
-
asynchronous rob authored
* create a v1 primitives module * Improve guide on availability types * punctuate * new parachains runtime uses new primitives * tests of new runtime now use new primitives * add ErasureChunk to guide * export erasure chunk from v1 primitives * subsystem crate uses v1 primitives * node-primitives uses new v1 primitives * port overseer to new primitives * new-proposer uses v1 primitives (no ParachainHost anymore) * fix no-std compilation for primitives * service-new uses v1 primitives * network-bridge uses new primitives * statement distribution uses v1 primitives * PoV distribution uses v1 primitives; add PoV::hash fn * move parachain to v0 * remove inclusion_inherent module and place into v1 * remove everything from primitives crate root * remove some unused old types from v0 primitives * point everything else at primitives::v0 * squanch some warns up * add RuntimeDebug import to no-std as well * port over statement-table and validation * fix final errors in validation and node-primitives * add dummy Ord impl to committed candidate receipt * guide: update CandidateValidationMessage * add primitive for validationoutputs * expand CandidateValidationMessage further * bikeshed * add some impls to omitted-validation-data and available-data * expand CandidateValidationMessage * make erasure-coding generic over v1/v0 * update usages of erasure-coding * implement commitments.hash() * use Arc<Pov> for CandidateValidation * improve new erasure-coding method names * fix up candidate backing * update docs a bit * fix most tests and add short-circuiting to make_pov_available * fix remainder of candidate backing tests * squanching warns * squanch it up * some fallout * overseer fallout * free from polkadot-test-service hell
-
- Jul 09, 2020
-
-
Fedor Sakharov authored
* Updates guide for CandidateBacking * Move assignment types to primitives * Initial implementation. * More functionality * use assert_matches * Changes to report misbehaviors * Some fixes after a review * Remove a blank line * Update guide and some types * Adds run_job function * Some comments and refactorings * Fix review * Remove warnings * Use summary in kicking off validation * Parallelize requests * Validation provides local and global validation params * Test issued validity tracking * Nits from review
-
asynchronous rob authored
* note that the initializer is responsible for buffering session changes * amend initializer definition to include session change buffering * support buffered changes before `on_initialize` * implement and test session buffering * Update roadmap/implementors-guide/src/runtime/README.md Co-authored-by: Bernhard Schuster <[email protected]> * expand on how this affects misbehavior reports * fix typo Co-authored-by: Bernhard Schuster <[email protected]>
-
- Jul 08, 2020
-
-
asynchronous rob authored
* introduce candidatedescriptor type * add PoVDistribution message type * loosen bound on PoV Distribution to account for equivocations * re-export some types from the messages module * begin PoV Distribution subsystem * remove redundant index from PoV distribution * define state machine for pov distribution * handle overseer signals * set up control flow * remove `ValidatorStatement` section * implement PoV fetching * implement distribution logic * add missing ` * implement some network bridge event handlers * stub for message processing, handle our view change * control flow for handling messages * handle `awaiting` message * handle any incoming PoVs and redistribute * actually provide a subsystem implementation * remove set-builder notation * begin testing PoV distribution * test that we send awaiting messages only to peers with same view * ensure we distribute awaited PoVs to peers on view changes * test that peers can complete fetch and are rewarded * test some reporting logic * ensure peer is reported for flooding * test punishing peers diverging from awaited protocol * test that we eagerly complete peers' awaited PoVs based on what we receive * test that we prune the awaited set after receiving * expand pov-distribution in guide to match a change I made * remove unneeded import
-
- Jul 07, 2020
-
-
asynchronous rob authored
* rename implementor's guide to implementer's guide * fix typos in more places
-
- Jul 06, 2020
-
-
asynchronous rob authored
* set up data types and control flow for statement distribution * add some set-like methods to View * implement sending to peers * start fixing equivocation handling * Add a section to the statement distribution subsystem on equivocations and flood protection * fix typo and amend wording * implement flood protection * have peer knowledge tracker follow when peer first learns about a candidate * send dependents after circulating * add another TODO * trigger send in one more place * refactors from review * send new statements to candidate backing * instantiate active head data with runtime API values * track our view changes and peer view changes * apply a benefit to peers who send us statements we want * remove unneeded TODO * add some comments and improve Hash implementation * start tests and fix `note_statement` * test active_head seconding logic * test that the per-peer tracking logic works * test per-peer knowledge tracker * test that peer view updates lead to messages being sent * test statement circulation * address review comments * have view set methods return references
-
- Jul 05, 2020
-
-
Peter Goodspeed-Niklaus authored
* network bridge skeleton * move some primitives around and add debug impls * protocol registration glue & abstract network interface * add send_msgs to subsystemctx * select logic * transform different events into actions and handle * implement remaining network bridge state machine * start test skeleton * make network methods asynchronous * extract subsystem out to subsystem crate * port over overseer to subsystem context trait * fix minimal example * fix overseer doc test * update network-bridge crate * write a subsystem test-helpers crate * write a network test helper for network-bridge * set up (broken) view test * Revamp network to be more async-friendly and not require Sync * fix spacing * fix test compilation * insert side-channel for actions * Add some more message types to AllMessages * introduce a test harness * impl ProvideInherent for InclusionInherent * reduce import churn; correct expect message * move inclusion inherent identifier into primitives It's not clear precisely why this is desired, but it's a pattern I've seen in several places, so I'm going this to be on the safe side. Worst case, we can revert this commit pretty easily. * bump kusama spec_version to placate CI * copy sc_basic_authorship::{ProposerFactory, Proposer} We have from the problem description: > This Proposer will require an OverseerHandle to make requests via. That's next on the plate. * use polkadot custom proposer instead of basic-authorship one * add some tests * ensure service compiles and passes tests * fix typo * fix service-new compilation * Subsystem test helpers send messages synchronously * remove smelly action inspector * remove superfluous let binding * fix warnings * add license header * empty commit; maybe github will notice the one with changes * Update node/network/bridge/src/lib.rs Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * add sanity check to only include valid inherents * stub: encapsulate block production mechanics instead of copying them The goal is to end up with something like what's in validation::block_production::*, which encapsulates basic block production mechanics. This is a better idea than just straight-up copying those mechanics. * partial implementation of propose fn Doesn't actually compile yet; need to bring in some other commits to ensure ProvisionerMessage is a thing, and also figure out how to get the block hash given the current context. * fix compilation * clear a few more compile errors * finish fn propose * broken: add timeout to proposal * add timeout to proposal * guide: provisioner is responsible for selecting parachain candidates * implement ProvisionerMessage::RequestInherentData & update fn propose * impl CreateProposer::init; clean up * impl std::error::Error for Error * document error-handling rationale * cause polkadot-service-new to compile correctly * Move potentially-blocking call from fn init -> fn propose This means that we can wrap the delayed call into the same timeout check used elsewhere. * document struct Proposer * extract provisioner data fetch This satisfies two requirements: - only applies the timeout to actually fetching the provisioner data, not to constructing the block after - simplifies the problem of injecting default data if we could not get the real provisioner data in time. Co-authored-by: Robert Habermeier <[email protected]> Co-authored-by: Gavin Wood <[email protected]>
-
- Jun 24, 2020
-
-
Sergey Pepyakin authored
* Experiment with graphwiz * Convert parachain overview diagrams * add install note for mdbook-graphviz Co-authored-by: Robert Habermeier <[email protected]>
-
- Jun 22, 2020
-
-
asynchronous rob authored
* rejig candidate types a bit * adjust doc * describe basic PoV distribution * replace some straggling html links * address grumbles from review and fix links
-
- Jun 20, 2020
-
-
Peter Goodspeed-Niklaus authored
* add signed wrapper, typedef SignedStatement * typedef SignedAvailabilityBitfield * implement Signed wrapper This is strictly an addition as of this commit; nothing is yet changed in existing behavior. * inline getters, remove review comment * move EncodeAs, Signed from node::primitives to primitives::parachain * Refactor SignedAvailabilityBitfield to use Signed * don't double-encode real payload This isn't an ideal solution, because it depends on the implementation details of how SCALE encodes tuples, but OTOH that behavior seems unlikely to change anytime soon. * fix build errors * cause the runtime to build properly with the new changes Not sure why cargo check didn't catch this earlier; oh well. * fix runtime tests and separate SignedStatement from SignedFullStatement * better explain why CompactStatement exists Co-authored-by: Robert Habermeier <[email protected]> Co-authored-by: Robert Habermeier <[email protected]>
-
Sergey Pepyakin authored
* Add mdbook-linkcheck * Convert todo to not a link * Fix external glossary link * Fix various broken links * Mass replace: s/.html/.md/ * My sloppy attempt to add a gitlab CI check
-
- Jun 18, 2020
-
-
asynchronous rob authored
* add availability bitfield types to primitives * begin inclusion module * use GitHub issue link for limitation * fix some compiler errors * integrate validators into initializer * add generic signing context * make signing-context more generic * fix issues with inclusion module * add TODO * guide: add validators and session index to inclusion * guide: add session index to change notification * implement session change logic * add BackedCandidate type * guide: refine inclusion pipeline * guide: rename group_on to group_validators * guide: add check about collator for parathread * guide: add last_code_upgrade to paras and use in inclusion * implement Paras::last_code_upgrade * implement most checks in process_candidates * make candidate receipt structs more generic * make BackedCandidate struct more generic * use hash param, not block number * check that candidate is in context of the parent block * include inclusion module in initializer * implement enact-candidate * check that only occupied cores have bits set * finish implementing bitfield processing * restructure consistency checks on candidates * make some more primitives generic * signature checking logic for backed candidates * finish implementing process_candidates * implement collect_pending * add some trait implementations to primitives * implement InclusionInherent and squash warnings * test bitfield signing checks * rename parachain head to para_head * fix note_new_head bug in paras * test bitfield enactment in inclusion * helpers for candidate checks * add test for most candidate checks * add test for backing setting storage * test session change logic * remove extraneous type parameter * remove some allow(unused)s * extract threshold computation to const fn * remove some more allow(unused)s * improve doc * add debug assertion * fix primitive test compilation * tag unanimous variant as unused
-
Fedor Sakharov authored
* Router module initial commit * Add the router.md itself * Enqueue only on enact_candidate * Initialization concerns * Ignore the snippet * Update roadmap/implementors-guide/src/runtime/router.md Co-authored-by: Robert Habermeier <[email protected]> * Dispatch messages on finalization * More fixes from review * Update roadmap/implementors-guide/src/SUMMARY.md Co-authored-by: Robert Habermeier <[email protected]> * Adds router to initializer order * Adds messages.md Co-authored-by: Robert Habermeier <[email protected]>
-
- Jun 17, 2020
-
-
asynchronous rob authored
* introduce polkadot-node-primitives * guide: change statement distribution message types * guide: remove variant from `CandidateSelectionMessage` * add a few more message types * add TODOs * Almost all messages * NewBackedCandidate notification * Formatting * Use AttestedCandidate as BackedCandidate * Update node/primitives/src/lib.rs Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Fix the tests * Bring in types from #1242 * Adds network bridge messages * More message types from doc * use fn pointer type * Fixes from the review * Add missing Runtime subsystem message * rename to CandidateValidationMessage and fix tests Co-authored-by: Fedor Sakharov <[email protected]> Co-authored-by: Peter Goodspeed-Niklaus <[email protected]>
-
asynchronous rob authored
* types chapter & candidate types * Factor out some message types * backing and availability types. * spacing * finish thought * info on signed payloads * update links * explicit wrapper types * add remaining message types * add runtime API subsystem * adjust language * tweak candidate validation message * find homes for some misfit types * embed abridged within full candidate receipt * Update roadmap/implementors-guide/src/SUMMARY.md Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * Update roadmap/implementors-guide/src/SUMMARY.md Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> * adjust text on candidate selection message to match Co-authored-by: Peter Goodspeed-Niklaus <[email protected]>
-
Peter Goodspeed-Niklaus authored
* first pass updating candidate validation module in the guide * expand candidate validation functionality section * add candidate fetch; validation requires PoV to be provided * remove candidate fetch
-
- Jun 16, 2020
-
-
Peter Goodspeed-Niklaus authored
* small tweaks to candidate selection * clarify the nature of inputs
-
Fabio Lama authored
* adjust to relative links * additional adjustment to relative link * link directly to file * link directly to file
-
- Jun 15, 2020
-
-
Peter Goodspeed-Niklaus authored
* update provisioner subsystem Closes #1143 * update with answers to the questions posed by previous todos * add misbehavior reports, disputes to provisioner messages * expand on the protocol * updates per code review
-
- Jun 11, 2020
-
-
asynchronous rob authored
* scheduler module skeleton * update scheduler skeleton to match latest version of guide * better session change notification * add mock randomness and fix test compilation * shuffle validators into groups * finish implementing session change logic for scheduler * tweak core assignment type to track retries of parathread * reframe queued parathread core as offset * implement initialzation and finalization routines * implement parathread claim queuing * implement core_para * implement the group_validators routine and fix errors * add a reason for freeing cores * implement `schedule` function * add some docs to the scheduled function * implement `occupied` helper * implement availability predicate * fix some warnings * integrate scheduler into initializer * integrate scheduler into mock module * avoid conflict with Substrate's scheduler storage * add parathreads index to paras module * implement parathreads map in paras module * add is_parathread to paras * test adding parathread claim * test that you cannot add claims when no parathread cores exist * check session change parathread queue pruning * test validator shuffling * add allow_unused to scheduler items * add test for scheduling * add some more tests for scheduling logic * test core rotation * check parathread claim pruning after retries * add bound notes * Apply suggestions from code review Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> Co-authored-by: Bernhard Schuster <[email protected]> * more suggestions from review * test availability predicate, add box to please compiler * add changes to guide Co-authored-by: Peter Goodspeed-Niklaus <[email protected]> Co-authored-by: Bernhard Schuster <[email protected]>
-
Peter Goodspeed-Niklaus authored
* move old implementers' guide, add skeleton of new * Split the old implementers' guide into the new one's sections This is mostly a straightforward copying operation, moving the appropriate sections from the old guide to the new. However, there are certain differences between the old text and the new: - removed horizontal rules between the sections - promoted headers appropriately within each section - deleted certain sections which were in the old guide's ToC but which were not actually present in the old guide. - added Peer Set Manager to the new ToC * remove description headers It is redundant and unnecessary. Descriptions fall directly under the top-level header for any given section. * add stub description of the backing module * add stub description for the availability module * add stub description for collators * add stub description for validity * add stub description for utility * highlight TODO and REVIEW comments * add guide readme describing how to use mdbook * fix markdownlint lints * re-title parachains overview * internal linking for types * module and subsystem internal links * .gitignore should have a trailing newline * node does not have modules, just subsystems
-