Envoy version: 1.11.2
A service in one of our clusters was returning an invalid 304 response with body (which should not happen, according to RFC 7230 section 3.3). What we found curious was that Envoy was not rejecting the response, but emitting a cluster.upstream_cx_protocol_error coming from, we think, this function.
We were honestly expecting Envoy to reject the response in this case, given other cases of Envoy being very strict with the interpretation of the RFC (like this one a colleague of mine found some weeks ago). Any reason why that's not the case?