From 537d6f9dacb759f7c3f49de44ae37a6f72e2737d Mon Sep 17 00:00:00 2001 From: iris Date: Tue, 18 Aug 2026 21:26:01 +0200 Subject: [PATCH] swarm-ui: rename OverviewPage/'overview' to HivesPage/'hives' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #3460. Renamed for accuracy — the page/nav item is the hive roster, not a general dashboard overview. Nav label, page title, component name, and file all renamed together so the internal name doesn't drift from what's displayed (a component still called OverviewPage under a 'hives' nav label would be exactly the kind of stale prior-art that makes the next contributor search harder, not less). --- frontend/packages/swarm-ui/src/App.tsx | 4 ++-- frontend/packages/swarm-ui/src/pages/CreateAgentPage.tsx | 2 +- .../swarm-ui/src/pages/{OverviewPage.tsx => HivesPage.tsx} | 6 +++--- frontend/packages/swarm-ui/src/shell/Shell.tsx | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) rename frontend/packages/swarm-ui/src/pages/{OverviewPage.tsx => HivesPage.tsx} (95%) diff --git a/frontend/packages/swarm-ui/src/App.tsx b/frontend/packages/swarm-ui/src/App.tsx index e41820f6..37464e7b 100644 --- a/frontend/packages/swarm-ui/src/App.tsx +++ b/frontend/packages/swarm-ui/src/App.tsx @@ -5,7 +5,7 @@ import { Shell } from './shell/Shell.js'; import { ComponentsPage } from './pages/ComponentsPage.js'; import { CreateAgentPage } from './pages/CreateAgentPage.js'; import { JobsPage } from './pages/JobsPage.js'; -import { OverviewPage } from './pages/OverviewPage.js'; +import { HivesPage } from './pages/HivesPage.js'; import { Panel } from './ui/panel/Panel.js'; function NotFound() { @@ -20,7 +20,7 @@ export function App() { return ( - + diff --git a/frontend/packages/swarm-ui/src/pages/CreateAgentPage.tsx b/frontend/packages/swarm-ui/src/pages/CreateAgentPage.tsx index 5d6d7634..7bb605b2 100644 --- a/frontend/packages/swarm-ui/src/pages/CreateAgentPage.tsx +++ b/frontend/packages/swarm-ui/src/pages/CreateAgentPage.tsx @@ -36,7 +36,7 @@ import { SelectField, type SelectOption } from '../ui/select-field/SelectField.j import { Button } from '../ui/button/Button.js'; import './CreateAgentPage.css'; -// Mirrors swarm-controller's `HiveEntry` — same shape `OverviewPage` +// Mirrors swarm-controller's `HiveEntry` — same shape `HivesPage` // consumes off `/api/hives/status`, but this page hits the plain // `/api/hives` roster (no status/freshness needed, just "what hives // exist to spawn into"). diff --git a/frontend/packages/swarm-ui/src/pages/OverviewPage.tsx b/frontend/packages/swarm-ui/src/pages/HivesPage.tsx similarity index 95% rename from frontend/packages/swarm-ui/src/pages/OverviewPage.tsx rename to frontend/packages/swarm-ui/src/pages/HivesPage.tsx index a7451303..6fb8f6bd 100644 --- a/frontend/packages/swarm-ui/src/pages/OverviewPage.tsx +++ b/frontend/packages/swarm-ui/src/pages/HivesPage.tsx @@ -1,4 +1,4 @@ -// — the hive-roster overview, `/`'s content. Fetches +// — the hive roster, `/`'s content. Fetches // swarm-controller's `GET /api/hives/status`, the swarm-wide status // aggregate: one row per roster hive, freshness derived at read time // from the status bucket. Supersedes the earlier `GET /api/hives` + @@ -60,7 +60,7 @@ const COLUMNS: TableColumn[] = [ }, ]; -export function OverviewPage() { +export function HivesPage() { const [hives, setHives] = useState(null); const [error, setError] = useState(null); @@ -76,7 +76,7 @@ export function OverviewPage() { }, []); return ( - + {error ? : null} {!error && hives === null ?

loading…

: null} {hives ? h.name} /> : null} diff --git a/frontend/packages/swarm-ui/src/shell/Shell.tsx b/frontend/packages/swarm-ui/src/shell/Shell.tsx index cda6b4fe..fe5fc69d 100644 --- a/frontend/packages/swarm-ui/src/shell/Shell.tsx +++ b/frontend/packages/swarm-ui/src/shell/Shell.tsx @@ -19,7 +19,7 @@ import { LinksMenu } from './LinksMenu.js'; import './Shell.css'; const NAV_ITEMS: { href: string; label: string }[] = [ - { href: '/', label: 'overview' }, + { href: '/', label: 'hives' }, { href: '/create-agent', label: 'new agent' }, { href: '/jobs', label: 'jobs' }, { href: '/components', label: 'components' },