hyperhive/frontend/packages
Repository files (latest commit first)
Filename Latest commit message Latest commit date
iris df78236ce4 agent: meta-nav, favicon fallback, document.title
Ports the 3 remaining gaps argus's lost-functionality audit found beyond
login: the header meta-nav strip (stats/screen/forge/config +
hyperhive.dashboardLinks extras — the only on-page path to those, not
just polish), the header icon's /favicon.svg fallback on a broken
image, and the browser tab title update. All three are straight ports
of app.js's existing logic (refreshState's meta-links loop,
bindHeaderIconFallback, setHeader's document.title block), same
kind -> URL resolution rules, same dataset.fallback loop guard, same
qualified_label/hive_name fallback chain — no new backend fields
needed, hive_agent::web_ui::state::StateSnapshot already serves
links/forge_public_url and useAgentState's whole-payload cast already
threads them to Root.

New <MetaNav> component (reuses agent.css's existing .agent-nav/
.agent-nav-link rules verbatim, no new CSS) renders in Header's title
row via a new nav prop. Favicon fallback lives in Header itself
(onError handler on the .agent-icon <img>). document.title is a
useEffect in Root keyed on label/qualified_label/hive_name.

tsc --noEmit clean, build clean, both pre-push lints clean. Screenshot
verifies meta-nav renders 4 links (stats/forge/config/extra, forge
kind resolving against a mocked forge_public_url) and the favicon
fallback firing against a deliberately-404'd /icon.
2026-08-28 22:05:13 +02:00
..
agent agent: meta-nav, favicon fallback, document.title 2026-08-28 22:05:13 +02:00
dashboard hive dashboard: bulk pause + resume in the selection bar 2026-08-24 11:37:04 +02:00
shared swarm-ui: delete StatusChip, migrate its 3 callers to shared Badge 2026-08-28 13:21:49 +02:00
swarm-ui swarm-ui: delete StatusChip, migrate its 3 callers to shared Badge 2026-08-28 13:21:49 +02:00