From 1527f515defc625e96f09c716eb062f66c7cefd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Drwi=C4=99ga?= Date: Fri, 27 Aug 2021 05:31:56 +0200 Subject: [PATCH] Update high-level-overview.md (#1093) Update outdated GRANDPA pallet docs. --- bridges/docs/high-level-overview.md | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/bridges/docs/high-level-overview.md b/bridges/docs/high-level-overview.md index 2fc210ed7a..2642c20c86 100644 --- a/bridges/docs/high-level-overview.md +++ b/bridges/docs/high-level-overview.md @@ -48,27 +48,15 @@ High level sequence charts of the process can be found in [a separate document]( ### Substrate (GRANDPA) Header Sync -The header sync pallet (`pallet-substrate-bridge`) is an on-chain light client for chains which use -GRANDPA finality. It is part of the target chain's runtime, and accepts headers from the source -chain. Its main goals are to accept valid headers, track GRANDPA finality set changes, and verify -GRANDPA finality proofs (a.k.a justifications). +The header sync pallet (`pallet-bridge-grandpa`) is an on-chain light client for chains which use +GRANDPA finality. It is part of the target chain's runtime, and accepts finality proofs from the source +chain. Verify GRANDPA finality proofs (a.k.a justifications) and track GRANDPA finality set changes. The pallet does not care about what block production mechanism is used for the source chain -(e.g Aura or BABE) as long as it uses the GRANDPA finality gadget. Due to this it is possible for -the pallet to import (but not necessarily finalize) headers which are _not_ valid according to the -source chain's block production mechanism. +(e.g Aura or BABE) as long as it uses the GRANDPA finality gadget. In fact the pallet does not +necessarily store all produced headers, we only import headers with valid GRANDPA justifications. -The pallet has support for tracking forks and uses the longest chain rule to determine what the -canonical chain is. The pallet allows headers to be imported on a different fork from the canonical -one as long as the headers being imported don't conflict with already finalized headers (for -example, it will not allow importing a header at a lower height than the best finalized header). - -When tracking authority set changes, the pallet - unlike the full GRANDPA protocol - does not -support tracking multiple authority set changes across forks. Each fork can have at most one pending -authority set change. This is done to prevent DoS attacks if GRANDPA on the source chain were to -stall for a long time (the pallet would have to do a lot of expensive ancestry checks to catch up). - -Referer to the [pallet documentation](../modules/substrate/src/lib.rs) for more details. +Referer to the [pallet documentation](../modules/grandpa/src/lib.rs) for more details. #### Header Relayer strategy