From f6baea4b08e095a869fc9a3e0f70b6650d784909 Mon Sep 17 00:00:00 2001 From: Eitan Seri- Levi Date: Tue, 31 Mar 2026 23:55:42 -0700 Subject: [PATCH] revert --- consensus/proto_array/src/proto_array.rs | 26 ++++-------------------- 1 file changed, 4 insertions(+), 22 deletions(-) diff --git a/consensus/proto_array/src/proto_array.rs b/consensus/proto_array/src/proto_array.rs index d3abf53b64..53b963b974 100644 --- a/consensus/proto_array/src/proto_array.rs +++ b/consensus/proto_array/src/proto_array.rs @@ -1432,29 +1432,11 @@ impl ProtoArray { .get(node.proto_node_index) .ok_or(Error::InvalidNodeIndex(node.proto_node_index))?; - // V17 (pre-GLOAS) nodes don't have payload_received or parent_payload_status. - // Skip the virtual Empty/Full split and return real children directly. - if proto_node.as_v17().is_ok() { - let child_indices = children_index - .get(node.proto_node_index) - .map(|c| c.as_slice()) - .unwrap_or(&[]); - return Ok(child_indices - .iter() - .filter_map(|&child_index| { - let child_node = self.nodes.get(child_index)?; - Some(( - IndexedForkChoiceNode { - root: child_node.root(), - proto_node_index: child_index, - payload_status: PayloadStatus::Pending, - }, - child_node.clone(), - )) - }) - .collect()); + let mut children = vec![(node.with_status(PayloadStatus::Empty), proto_node.clone())]; + // The FULL virtual child only exists if the payload has been received. + if proto_node.payload_received().is_ok_and(|received| received) { + children.push((node.with_status(PayloadStatus::Full), proto_node.clone())); } - // TODO(gloas) this is the actual change we want to keep once PTC is implemented // let mut children = vec![(node.with_status(PayloadStatus::Empty), proto_node.clone())]; // // The FULL virtual child only exists if the payload has been received.