Remove head_payload_status from ForkchoiceUpdateParameters

head_payload_status is internal fork choice state, not an EL
forkchoiceUpdated parameter. It already lives on CachedHead — source
it directly from get_head() return in recompute_head_at_slot instead
of threading through ForkchoiceUpdateParameters.

Also add TODO(gloas) for parent_head_hash in re-org path (V29 nodes
don't carry execution_status).
This commit is contained in:
dapplion
2026-03-25 21:16:06 -05:00
parent bc28e63585
commit 93f987f3cf
6 changed files with 13 additions and 22 deletions

View File

@@ -13,7 +13,7 @@ use execution_layer::{
LATEST_TAG, PayloadAttributes, PayloadParameters, PayloadStatus,
};
use fixed_bytes::FixedBytesExtended;
use fork_choice::{ForkchoiceUpdateParameters, PayloadStatus as FcPayloadStatus};
use fork_choice::ForkchoiceUpdateParameters;
use reqwest::{Client, header::CONTENT_TYPE};
use sensitive_url::SensitiveUrl;
use serde_json::{Value, json};
@@ -294,7 +294,6 @@ impl<Engine: GenericExecutionEngine> TestRig<Engine> {
let finalized_block_hash = ExecutionBlockHash::zero();
let forkchoice_update_params = ForkchoiceUpdateParameters {
head_root,
head_payload_status: FcPayloadStatus::Pending,
head_hash: Some(parent_hash),
justified_hash: Some(justified_block_hash),
finalized_hash: Some(finalized_block_hash),