From 98d015edea9eb1408d4e0b32b0e7ae4daa4cb92a Mon Sep 17 00:00:00 2001 From: iris Date: Mon, 22 Jun 2026 13:11:19 +0200 Subject: [PATCH 1/2] agent ui: shared page-header nav on the stats + screen sub-pages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per mara: the agent sub-pages should use the same back-link nav as the dashboard's standalone pages, while the live terminal page stays as-is (no tabs of each other, not an SPA). Pull the shared `@hive/shared/chrome.css` into the agent bundle (via agent.css's existing @import line; esbuild inlines it into the one dist/static/agent.css all agent pages link), then: - stats.html: replace the ASCII banner + bespoke `.stats-nav` with the shared `page-header` (← live back-link + dashboard link + title). Keeps the #back-link / #dashboard-link / #title ids stats.js drives, and the time-window picker + charts below are unchanged. - screen.html: replace the bespoke `#toolbar` nav with the same `page-header` (← agent back-link + title), keeping the fit / match / debug controls + the status text in the bar. The live terminal (index.html) is untouched. The now-unused `.banner` / `.stats-nav` / `#toolbar` rules in agent.css are left for a follow-up prune to keep this diff focused on the markup. Agent build clean. Closes #1874. --- frontend/packages/agent/src/agent.css | 4 ++++ frontend/packages/agent/src/screen.html | 8 ++++---- frontend/packages/agent/src/stats.html | 11 +++++------ 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/frontend/packages/agent/src/agent.css b/frontend/packages/agent/src/agent.css index 8f980e57..45da2558 100644 --- a/frontend/packages/agent/src/agent.css +++ b/frontend/packages/agent/src/agent.css @@ -2,6 +2,10 @@ Bundled in front of the agent-only rules below via esbuild. */ @import "@hive/shared/base.css"; @import "@hive/shared/terminal.css"; +/* Shared page-header chrome (page-header / page-back / page-title) — gives the + agent SUB-pages (stats, screen) the same back-link nav the dashboard's + standalone pages use. The live terminal page keeps its own header. */ +@import "@hive/shared/chrome.css"; /* ─── full-screen layout overrides ───────────────────────────────── The agent page mounts a full-viewport terminal under a fixed diff --git a/frontend/packages/agent/src/screen.html b/frontend/packages/agent/src/screen.html index d154733a..56e58f43 100644 --- a/frontend/packages/agent/src/screen.html +++ b/frontend/packages/agent/src/screen.html @@ -10,14 +10,14 @@ -
- 🖥 screen - ← agent +
+
diff --git a/frontend/packages/agent/src/stats.html b/frontend/packages/agent/src/stats.html index adecbff1..271f8650 100644 --- a/frontend/packages/agent/src/stats.html +++ b/frontend/packages/agent/src/stats.html @@ -10,12 +10,11 @@ - -
- ← live - dashboard -

◆ … ◆

-
+
From 6a54866ec7315b34d2dfc2cd8ce5da7b1be34948 Mon Sep 17 00:00:00 2001 From: iris Date: Mon, 22 Jun 2026 13:18:05 +0200 Subject: [PATCH 2/2] agent ui: drop dead .stats-nav + #toolbar css now superseded by page-header --- frontend/packages/agent/src/agent.css | 32 +++++---------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/frontend/packages/agent/src/agent.css b/frontend/packages/agent/src/agent.css index 45da2558..561794c7 100644 --- a/frontend/packages/agent/src/agent.css +++ b/frontend/packages/agent/src/agent.css @@ -997,16 +997,8 @@ pre.diff { } /* ─── /stats page ────────────────────────────────────────────────────────── */ - -.stats-nav { - display: flex; - gap: 0.75rem; - align-items: baseline; - margin-bottom: 0.5rem; -} -.stats-nav h2 { margin: 0; } -.stats-nav a { color: var(--cyan); text-decoration: none; } -.stats-nav a:hover { text-decoration: underline; } +/* The stats page header (back link + title) uses the shared + `.page-header` chrome (chrome.css), same as /screen. */ .window-tabs { display: flex; @@ -1092,21 +1084,9 @@ body.screen-shell { overflow: hidden; } -/* Toolbar strip at the top of the screen page. */ -#toolbar { - display: flex; - align-items: center; - gap: 0.75rem; - padding: 0.4rem 0.75rem; - background: var(--bg-elev); - border-bottom: 1px solid var(--border); -} -#toolbar a { - color: var(--blue); - text-decoration: none; - font-size: 0.85rem; -} -#toolbar a:hover { text-decoration: underline; } +/* The screen page header (back link + title + controls) uses the + shared `.page-header` chrome (chrome.css). The fit/match/debug + controls + status chip below sit inside that header. */ /* Toolbar toggle buttons (fit / match-size / debug). */ .tbtn { @@ -1122,7 +1102,7 @@ body.screen-shell { .tbtn.active { color: var(--green); border-color: var(--green); } .tbtn:disabled { opacity: 0.4; cursor: default; } -/* Connection status chip at the right end of the toolbar. */ +/* Connection status chip at the right end of the screen page header. */ #status { margin-left: auto; font-size: 0.75rem;