Source: PR #4 follow-up review (minor)
Problem
evaluate_throttle_level() defaults to THROTTLE_LEVEL_ELEVATED when both probes fail (line 720-723). This is deliberately fail-conservative, which is the right default.
However, on a host where Threads_running is blocked AND the AS table doesn't exist yet, the throttle permanently reports elevated with no way to recover to normal. The operator has no escape hatch other than disabling throttle mode entirely.
Fix
Add a filter like hypercart_query_guard_no_signal_default that lets operators override the no-signal fallback level. Default remains elevated for safety, but operators on hosts with known probe limitations can set it to normal if they've validated their environment.
Dependencies
This becomes less urgent if #14 (AS table existence guard) is fixed, since that eliminates one of the two probe failure paths.
Source: PR #4 follow-up review (minor)
Problem
evaluate_throttle_level()defaults toTHROTTLE_LEVEL_ELEVATEDwhen both probes fail (line 720-723). This is deliberately fail-conservative, which is the right default.However, on a host where
Threads_runningis blocked AND the AS table doesn't exist yet, the throttle permanently reports elevated with no way to recover to normal. The operator has no escape hatch other than disabling throttle mode entirely.Fix
Add a filter like
hypercart_query_guard_no_signal_defaultthat lets operators override the no-signal fallback level. Default remainselevatedfor safety, but operators on hosts with known probe limitations can set it tonormalif they've validated their environment.Dependencies
This becomes less urgent if #14 (AS table existence guard) is fixed, since that eliminates one of the two probe failure paths.