POST /admin/api/runtime/classifier_degraded_warn_threshold with null is now pinned as a clean 422 (it was a TypeError/500 before the neutral_path guard). Covered: null, bool, string, 0.0, below-floor and above-max all 422 and leave cfg untouched; floor, 0.2 and max return 200 and update cfg. The float handler's 422 text had lost "or null for neutral" and "(null means neutral, not 0.0)" for every float knob, including the challenger dial, which does have a neutral. They are back, conditional on the knob having a neutral_path, and degraded_warn_threshold's 422s never mention null. Tests pin both directions. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KkCGRantZsSwmcFpet6FTa
26 KiB
26 KiB