Include head_payload_status in ForkChoiceView comparison

The early exit check in recompute_head_at_slot compared only
head_block_root and checkpoints. When on_execution_payload changed
the payload status from Empty to Full without changing the head root,
the CachedHead was not updated. Add head_payload_status to
ForkChoiceView so the change is detected.
This commit is contained in:
dapplion
2026-03-25 16:40:17 -05:00
parent e943888ee7
commit 93ef1e395c
3 changed files with 6 additions and 8 deletions

View File

@@ -608,6 +608,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
// was last run.
let old_view = ForkChoiceView {
head_block_root: old_cached_head.head_block_root(),
head_payload_status: old_cached_head.head_payload_status(),
justified_checkpoint: old_cached_head.justified_checkpoint(),
finalized_checkpoint: old_cached_head.finalized_checkpoint(),
};