diff --git a/consensus/proto_array/src/proto_array.rs b/consensus/proto_array/src/proto_array.rs index 5d0bee4c85..da110a9da4 100644 --- a/consensus/proto_array/src/proto_array.rs +++ b/consensus/proto_array/src/proto_array.rs @@ -531,15 +531,7 @@ impl ProtoArray { || latest_valid_ancestor_is_descendant { match &node.execution_status { - // It's illegal for an execution client to declare that some previously-valid block - // is now invalid. This is a consensus failure on their behalf. - ExecutionStatus::Valid(hash) => { - return Err(Error::ValidExecutionStatusBecameInvalid { - block_root: node.root, - payload_block_hash: *hash, - }) - } - ExecutionStatus::Optimistic(hash) => { + ExecutionStatus::Valid(hash) | ExecutionStatus::Optimistic(hash) => { invalidated_indices.insert(index); node.execution_status = ExecutionStatus::Invalid(*hash);