From 818ef871baf46254464f7e48fcc8692cba972915 Mon Sep 17 00:00:00 2001 From: Yashas Date: Wed, 9 Sep 2026 12:28:46 +0530 Subject: [PATCH] =?UTF-8?q?fix(console):=20blank=20lead=20page=20=E2=80=94?= =?UTF-8?q?=20statusStrip=20glued=20to=20a=20split=20stalled=20ternary?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When statusStrip was moved (fda1247), the regex that placed it after `const stalled` matched only the FIRST line of stalled's multi-line ternary. The `? { mins, nudge } : null` continuation was left dangling right after `const statusStrip = (…)`, so statusStrip parsed as ` ? {mins,nudge} : null` — a truthy JSX condition — and evaluated to the object {mins, nudge}. Rendering that object threw React #31 and blanked the page for any stalled instance; `stalled` itself was left a bare boolean. Restored stalled to its object form and removed the orphaned ternary. statusStrip is a clean JSX expression again. Co-Authored-By: Claude Opus 4.8 --- src/screens/Lead.jsx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/screens/Lead.jsx b/src/screens/Lead.jsx index fd045dc..f7fa18b 100644 --- a/src/screens/Lead.jsx +++ b/src/screens/Lead.jsx @@ -379,6 +379,8 @@ export default function Lead() { // the way out rather than going on promising two minutes. const stillFor = row.updated_at ? now - Date.parse(row.updated_at) : 0 const stalled = !blocked && stage?.kind === 'auto' && stillFor > STALL_AFTER_MS + ? { mins: Math.round(stillFor / 60000), nudge: nudgeFor(stage, row) } + : null /* WHAT IS HAPPENING NOW, lifted above the numbers. An operator's first question about a lead is "what is going on / what do I do", not "what is @@ -456,9 +458,6 @@ blocked ? ( ) : null ) - ? { mins: Math.round(stillFor / 60000), nudge: nudgeFor(stage, row) } - : null - return (