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
'epoch_boundary_block_root' is the root of block at the most recent epoch boundary
And later proposes how to look up for it:
Let start_slot = compute_start_slot_of_epoch(get_current_epoch(head_state)).
Let epoch_boundary_block_root = signing_root(head_block) if start_slot == head_state.slot else get_block_root(state, start_slot)
Obviously, if the head_state.slot is the start of an epoch, then there is no appropriate block_root in the state. If the head_block.slot == head_state.slot, then everything is fine.
But what if the head_block is stale? If it's younger than the previous epoch, then it seems reasonable too.
But what if it's older then the previous epoch? Then get_block_root(state, compute_start_slot_of_epoch(get_previous_epoch(head_state))) looks like a better match to "the root of block at the most recent epoch boundary".
Actually, it's also not quite clear whether it's a possible situation. E.g. LMD GHOST rule may rule it out.
The text was updated successfully, but these errors were encountered:
There seems to be an edge case in
https://github.com/ethereum/eth2.0-specs/blob/dev/specs/validator/0_beacon-chain-validator.md, regarding calculation of
epoch_boundary_block_root
.The spec says:
And later proposes how to look up for it:
Obviously, if the head_state.slot is the start of an epoch, then there is no appropriate block_root in the state. If the head_block.slot == head_state.slot, then everything is fine.
But what if the head_block is stale? If it's younger than the previous epoch, then it seems reasonable too.
But what if it's older then the previous epoch? Then get_block_root(state, compute_start_slot_of_epoch(get_previous_epoch(head_state))) looks like a better match to "the root of block at the most recent epoch boundary".
Actually, it's also not quite clear whether it's a possible situation. E.g. LMD GHOST rule may rule it out.
The text was updated successfully, but these errors were encountered: