You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
to provide more stability in the seed when used. The deeper in the chain the seed is picked from, the more likely there is consensus on the seed when used.
to provide lookahead on validator shard_committee shuffling so that the validator knows SEED_LOOKAHEAD slots in advance what shard they are going to have to crosslink and get get prepared.
(2) is broken as is. The call to get_shuffling utilizes a seed from the past but uses the active validators from present (because passes in state.slot).
Proposed solution
One solution is to use the active_validators from state.slot - SEEDLOOKAHEAD slots ago to get the shard_committees rather than state.slot. This would ensure that committees are known SEED_LOOKAHEAD slots in advance, and this works fine as long as SEED_LOOKAHEAD < ENTRY_EXIT_DELAY (which it currently is).
The text was updated successfully, but these errors were encountered:
I believe the idea is that active_validators should itself be predictable ENTRY_EXIT_DELAY slots in the future because all entry and exit events are delayed by ENTRY_EXIT_DELAY slots.
Am I missing some reason why this is not sufficient?
EDIT: You're right. We can predict the active_validatorsENTRY_EXIT_DELAY slots in the future. To ensure that the point at which we get the seed (SEED_LOOKAHEAD slots in the past) is a safe point of prediction, ENTRY_EXIT_DELAY <= SEED_LOOKAHEAD
Issue
shufflings are calculated using a seed from
SEED_LOOKAHEAD
slots agoThe spec uses
SEED_LOOKAHEAD
for two reasons:shard_committee
shuffling so that the validator knowsSEED_LOOKAHEAD
slots in advance what shard they are going to have to crosslink and get get prepared.(2) is broken as is. The call to
get_shuffling
utilizes a seed from the past but uses the active validators from present (because passes instate.slot
).Proposed solution
One solution is to use the active_validators from
state.slot - SEEDLOOKAHEAD
slots ago to get the shard_committees rather thanstate.slot
. This would ensure that committees are knownSEED_LOOKAHEAD
slots in advance, and this works fine as long asSEED_LOOKAHEAD < ENTRY_EXIT_DELAY
(which it currently is).The text was updated successfully, but these errors were encountered: