From 688531030bafac85d83f6ecd152f30010c2b8602 Mon Sep 17 00:00:00 2001 From: iris Date: Thu, 2 Jul 2026 11:56:03 +0200 Subject: [PATCH] fix(builds): add missing start/stop/graceful_stop kind glyphs to QUEUE_KIND_GLYPH MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The QueueKind enum has graceful_stop, start, and stop variants but the dashboard QUEUE_KIND_GLYPH map only covered rebuild/meta_update/spawn/ destroy/restart/startup_sweep/perm_change — the three missing kinds rendered as '?' in the build queue UI. This became visible with the deferred start-after-rebuild change: a fast-lane Start entry now appears as a child of its Rebuild parent, but showed the fallback '?' glyph. Glyphs assigned: graceful_stop=⏹, start=▶, stop=■. Also update the dashboard.md kind-glyph list to include all nine kinds and note that deferred start-after-rebuild entries also use parent_id grouping. --- docs/web-ui/dashboard.md | 9 ++++++--- frontend/packages/dashboard/src/builds.js | 3 +++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/docs/web-ui/dashboard.md b/docs/web-ui/dashboard.md index 3271c08d..372ea1bc 100644 --- a/docs/web-ui/dashboard.md +++ b/docs/web-ui/dashboard.md @@ -155,11 +155,14 @@ operations: rebuilds, meta-update cascades, and first-spawns. One operation runs at a time; the worker drains FIFO. Each row shows a state glyph (`⏸` queued / `▶` running / `✔` done / `✖` failed / `⊘` cancelled), kind glyph + verb (`↻ rebuild`, -`◆ meta_update`, `✨ spawn`, `🗑 destroy`), agent name, source +`◆ meta_update`, `✨ spawn`, `🗑 destroy`, `↺ restart`, +`⚡ startup_sweep`, `🔑 perm_change`, `⏹ graceful_stop`, +`▶ start`, `■ stop`), agent name, source chip (`manual | meta_update | auto_update | crash_recover | approval` — green for operator-approved config changes), timing, and an -optional reason / error. Meta-update cascade rebuilds nest under -their parent entry (`parent_id` grouping; `rqe-child` CSS class). +optional reason / error. Meta-update cascade rebuilds and deferred +start-after-rebuild follow-ups nest under their parent entry +(`parent_id` grouping; `rqe-child` CSS class). Dedup: re-enqueueing a still-queued op for the same agent collapses into the existing entry. All timing labels stay live: running entries tick elapsed seconds every second; queued and diff --git a/frontend/packages/dashboard/src/builds.js b/frontend/packages/dashboard/src/builds.js index afed59d2..37f4a1be 100644 --- a/frontend/packages/dashboard/src/builds.js +++ b/frontend/packages/dashboard/src/builds.js @@ -128,6 +128,9 @@ const QUEUE_KIND_GLYPH = { restart: '↺', startup_sweep: '⚡', perm_change: '🔑', + graceful_stop: '⏹', + start: '▶', + stop: '■', }; const QUEUE_STATE_GLYPH = { queued: '⏸',