Post gloas we cannot enforce that peers who have imported a block also have columns available

This commit is contained in:
Eitan Seri-Levi
2026-05-22 16:15:11 +03:00
parent 60abd4b5b9
commit e66a5c30b7

View File

@@ -305,7 +305,16 @@ impl<T: BeaconChainTypes> ActiveCustodyRequest<T> {
// must have its columns in custody. In that case, set `true = enforce max_requests`
// and downscore if data_columns_by_root does not return the expected custody
// columns. For the rest of peers, don't downscore if columns are missing.
lookup_peers.contains(&peer_id),
//
// Post-Gloas, blocks and payload envelopes are decoupled. A peer may
// have the block but not yet imported the envelope and data columns.
// Don't enforce max_responses in this case.
lookup_peers.contains(&peer_id)
&& !cx
.chain
.spec
.fork_name_at_epoch(cx.chain.epoch().unwrap_or_default())
.gloas_enabled(),
)
.map_err(Error::SendFailed)?;