diff --git a/crates/blockchain/src/aggregation.rs b/crates/blockchain/src/aggregation.rs index 8fe3e2d2..9e1bfb97 100644 --- a/crates/blockchain/src/aggregation.rs +++ b/crates/blockchain/src/aggregation.rs @@ -205,9 +205,14 @@ fn build_job( let (children, accepted_child_ids) = resolve_child_pubkeys(&child_proofs, validators); + // Skip aggregation when there's nothing to aggregate if raw_ids.is_empty() && children.len() < 2 { return None; } + // Skip aggregation when there's only a single raw signature to aggregate. + if children.is_empty() && raw_ids.len() <= 1 { + return None; + } let keys_to_delete: Vec<(u64, H256)> = validator_sigs .into_iter()