Commit 1e2424ec authored by Adrian Catangiu's avatar Adrian Catangiu Committed by GitHub
Browse files

BEEFY voter bugfixes (#11335)



* beefy: gadget should always use current validator set

The gadget/client-voter was using previous' session validator set
to sign the 1st block in the new session (to have chained validator
set handoffs).

This is not necessary because:
1. BEEFY piggy-backs on GRANDPA and only works on canonical chain,
   so it need not concern itself with the validity of the block header
   (which contains digest with the new session's validator set). It
   can safely assume header is valid and simply use new validator set.
2. The BEEFY payload itself already contains a merkle root for the
   next validator set keys. So at the BEEFY-payload layer we already
   have a validated/trusted hand-off of authority.

Signed-off-by: default avataracatangiu <[email protected]>

* beefy: buffer votes for not yet finalized blocks

Signed-off-by: default avataracatangiu <[email protected]>

* beefy: add buffered votes regression test
parent 9fd4df9c
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment