From cffeb26e792e492c74b635db238ca255b460dba7 Mon Sep 17 00:00:00 2001 From: jedarden Date: Fri, 15 May 2026 16:54:23 -0400 Subject: [PATCH] feat(bf-6b9f): sort workers by needle state + hide test workers toggle WorkerGrid now sorts by WORKING > CLAIMING > SELECTING > BOOTING > CLOSING > EXHAUSTED_IDLE > STOPPED and filters out test workers (test-*, claude-test-*, nonexistent-*, needle-test, strand-runner, -test-worker) by default. App header gets a toggle button to show/hide test workers. EXHAUSTED_IDLE added to NeedleState type and propagated to WorkerDetail and WorkerGrid state maps. Co-Authored-By: Claude Sonnet 4.6 --- .beads/traces/bf-6b9f/metadata.json | 16 +++ .beads/traces/bf-6b9f/stderr.txt | 0 .beads/traces/bf-6b9f/stdout.txt | 1 + src/web/frontend/src/App.tsx | 10 ++ .../frontend/src/components/WorkerDetail.tsx | 2 + .../frontend/src/components/WorkerGrid.tsx | 47 +++++++- src/web/frontend/src/types.ts | 1 + src/web/frontend/test/WorkerGrid.test.tsx | 106 ++++++++++++++++++ 8 files changed, 179 insertions(+), 4 deletions(-) create mode 100644 .beads/traces/bf-6b9f/metadata.json create mode 100644 .beads/traces/bf-6b9f/stderr.txt create mode 100644 .beads/traces/bf-6b9f/stdout.txt diff --git a/.beads/traces/bf-6b9f/metadata.json b/.beads/traces/bf-6b9f/metadata.json new file mode 100644 index 0000000..482361c --- /dev/null +++ b/.beads/traces/bf-6b9f/metadata.json @@ -0,0 +1,16 @@ +{ + "bead_id": "bf-6b9f", + "agent": "echo-test", + "provider": null, + "model": null, + "exit_code": 0, + "outcome": "success", + "duration_ms": 0, + "input_tokens": null, + "output_tokens": null, + "cost_usd": null, + "captured_at": "2026-05-15T20:49:31.040008412Z", + "trace_format": "raw_text", + "pruned": false, + "template_version": null +} \ No newline at end of file diff --git a/.beads/traces/bf-6b9f/stderr.txt b/.beads/traces/bf-6b9f/stderr.txt new file mode 100644 index 0000000..e69de29 diff --git a/.beads/traces/bf-6b9f/stdout.txt b/.beads/traces/bf-6b9f/stdout.txt new file mode 100644 index 0000000..19f86f4 --- /dev/null +++ b/.beads/traces/bf-6b9f/stdout.txt @@ -0,0 +1 @@ +done diff --git a/src/web/frontend/src/App.tsx b/src/web/frontend/src/App.tsx index 0ef550e..81a9b84 100644 --- a/src/web/frontend/src/App.tsx +++ b/src/web/frontend/src/App.tsx @@ -258,6 +258,7 @@ const App: React.FC = () => { const [showGitIntegration, setShowGitIntegration] = useState(false); const [showNarrative, setShowNarrative] = useState(false); const [budgetBannerDismissed, setBudgetBannerDismissed] = useState(false); + const [hideTestWorkers, setHideTestWorkers] = useState(true); // Budget alert state polled from /api/cost/summary const [budgetSummary, setBudgetSummary] = useState<{ @@ -826,6 +827,14 @@ const App: React.FC = () => { 📝 Narrative + {unacknowledgedAlertCount > 0 && (