Classifies a normalized failure as streak-neutral, the class that
leaves the circuit breaker's failure streak untouched, neither advancing
it like an availability failure nor resetting it like a
reachability-proving caller-side error.
A GraphQL envelope error whose entries carry no upstream status (the
common AniList envelope shape, where status falls back to the HTTP 200
envelope default) is ambiguous: it may be a server fault that omitted its
status, so it must not reset the streak. A sustained outage manifesting
as status-less envelope errors would otherwise erase whatever streak
other error classes accumulated. But it carries no availability-class
status either, so it must not advance the streak and trip the breaker on
what may be a consumer-side query bug. The one exception is the reserved
half-open probe, which a neutral failure still settles by closing (see
recordCircuitFailure). The upstream answered the probe with an
HTTP 200 envelope, so it is reachable. Without that result, the breaker
would stay half-open indefinitely.
Classifies a normalized failure as streak-neutral, the class that leaves the circuit breaker's failure streak untouched, neither advancing it like an availability failure nor resetting it like a reachability-proving caller-side error.
A GraphQL envelope error whose entries carry no upstream status (the common AniList envelope shape, where
statusfalls back to the HTTP200envelope default) is ambiguous: it may be a server fault that omitted its status, so it must not reset the streak. A sustained outage manifesting as status-less envelope errors would otherwise erase whatever streak other error classes accumulated. But it carries no availability-class status either, so it must not advance the streak and trip the breaker on what may be a consumer-side query bug. The one exception is the reserved half-open probe, which a neutral failure still settles by closing (see recordCircuitFailure). The upstream answered the probe with an HTTP 200 envelope, so it is reachable. Without that result, the breaker would stay half-open indefinitely.