Implement the block production lottery algorithm as well as the underlying required functions and Runtime calls.
Consensus message is provided in the header of each produced block.
The first block of each epoch contains the following epoch’s authority list and randomness seed
Contains the index of an authority that has to be disabled in the current authority list
On config change or first block provides a change in the BABE constant (C) and the secondary slot type in the next epoch
We’ll need a next epoch config that stores data from these messages.
At the start of every epoch we’ll need to update the current epoch with data from the next epoch config and then update it as well.
The block production lottery gives us 2 results:
The slots in the epoch that the node is chosen to produce a block (VRF output < Winning threshold for the epoch)
The secondary slots in the epoch that the node is chosen to produce a block (if the calculated Id (index in the list of authorities) matches the producers public session key)
Implement the block production lottery algorithm as well as the underlying required functions and Runtime calls.
Consensus message is provided in the header of each produced block.
We’ll need a next epoch config that stores data from these messages.
At the start of every epoch we’ll need to update the current epoch with data from the next epoch config and then update it as well.
The block production lottery gives us 2 results:
[x] #545
[x] #546
[x] #547
[x] #548
[x] #593
[x] #594