Address remaining review comments

- pending_column.rs: split try_to_sidecar into is_complete-checked to_sidecar
  with typed PendingColumnError so 'incomplete column' is no longer conflated
  with VariableList size-bound failures (jimmygchen, dapplion).
- pending_components.rs: get_cached_data_columns filters by is_complete first,
  then logs an error if a complete column fails to assemble (dknopik's sanity
  check on filter_map silent drops).
- data_column_verification.rs: add the missing column.slot == bid.slot
  consistency check in validate_data_column_sidecar_for_gossip_gloas, using
  the previously-defined-but-unused BlockSlotMismatch error variant
  (jimmygchen).
This commit is contained in:
dapplion
2026-05-01 10:28:59 +02:00
parent 0ce058835a
commit d75963bb86
3 changed files with 53 additions and 25 deletions

View File

@@ -1097,6 +1097,12 @@ pub fn validate_data_column_sidecar_for_gossip_gloas<
slot: column_slot,
},
)?;
if bid.message.slot != column_slot {
return Err(GossipDataColumnError::BlockSlotMismatch {
block_slot: bid.message.slot,
data_column_slot: column_slot,
});
}
let kzg_commitments = &bid.message.blob_kzg_commitments;
verify_data_column_sidecar_with_commitments_len(
&data_column,