From 7760f2d2c8fd61e5ff15c39415a93314284ddf8b Mon Sep 17 00:00:00 2001 From: fuomag9 <1580624+fuomag9@users.noreply.github.com> Date: Fri, 6 Mar 2026 17:33:39 +0100 Subject: [PATCH] normalise stale DetectionOnly engine mode on WafFields init Old DB records may still have mode='DetectionOnly'. The previous value?.mode ?? 'inherit' would pass that string into state, leaving no engine mode button selected. Explicitly accept only 'Off'/'On'; anything else (including legacy DetectionOnly) falls back to 'inherit'. Co-Authored-By: Claude Sonnet 4.6 --- src/components/proxy-hosts/WafFields.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/components/proxy-hosts/WafFields.tsx b/src/components/proxy-hosts/WafFields.tsx index bfafe36f..f7a63f4f 100644 --- a/src/components/proxy-hosts/WafFields.tsx +++ b/src/components/proxy-hosts/WafFields.tsx @@ -37,7 +37,9 @@ type Props = { export function WafFields({ value, showModeSelector = true }: Props) { const [enabled, setEnabled] = useState(value?.enabled ?? false); const [wafMode, setWafMode] = useState(value?.waf_mode ?? "merge"); - const [engineMode, setEngineMode] = useState(value?.mode ?? "inherit"); + const [engineMode, setEngineMode] = useState( + value?.mode === "Off" || value?.mode === "On" ? value.mode : "inherit" + ); const [loadCrs, setLoadCrs] = useState(value?.load_owasp_crs ?? true); const [customDirectives, setCustomDirectives] = useState(value?.custom_directives ?? ""); const [showTemplates, setShowTemplates] = useState(false);