Crate sp_consensus

source ·
Expand description

Common utilities for building and using consensus engines in substrate.

Much of this crate is unstable and thus the API is likely to undergo change. Implementors of traits should not rely on the interfaces to remain the same.


  • pub use self::error::Error;





  • Environment for a Consensus instance.
  • A trait to express the state of proof recording on type system level.
  • Logic for a proposer.
  • The SelectChain trait defines the strategy upon which the head is chosen if multiple forks are present for an opaque definition of “best” in the specific chain build.
  • A state backend is used to read state data and can have changes committed to it.
  • An oracle for when major synchronization work is being undertaken.