Crate pallet_grandpa

source ·
Expand description

GRANDPA Consensus module for runtime.

This manages the GRANDPA authority set ready for the native code. These authorities are only for GRANDPA finality, not for consensus overall.

In the future, it will also handle misbehavior reports, and on-chain finality notifications.

For full integration with GRANDPA, the GrandpaApi should be implemented. The necessary items are re-exported via the fg_primitives crate.



  • The pallet module in each FRAME pallet hosts the most important items needed to construct this pallet.


  • GRANDPA equivocation offence report.
  • GRANDPA equivocation offence report system.
  • A stored pending change. Limit is the bound for next_authorities
  • A round number and set id which point on the time of an offence.
  • An AuthorityList that is encoded with a version specifier. The encoding version is updated any time the AuthorityList type changes. This ensures that encodings of different versions of an AuthorityList are differentiable. Attempting to decode an authority list with an unknown version will fail.


  • Current state of the GRANDPA authority set. State transitions must happen in the same order of states defined below, e.g. Paused implies a prior PendingPause.


Type Definitions