diff --git a/docs/web-ui/agent.md b/docs/web-ui/agent.md index 1d6f1169..899a9c3a 100644 --- a/docs/web-ui/agent.md +++ b/docs/web-ui/agent.md @@ -10,120 +10,98 @@ panel for flyouts and long content. ## Header +Preact component tree (`Header.tsx` + `StatusChips.tsx` + +`MetaNav.tsx` + `OverflowMenu.tsx` + `HeaderPill.tsx`, wired together +in `Root.tsx`) — see `frontend/packages/agent/src/components/`. This +section describes the rendered result, not the DOM ids the pre-Preact +page used (there are none any more — every element is component +output, not something a selector reaches by id). + **Fixed-overlay header** (`
`): frosted glass — `backdrop-filter: blur` lets scrolled terminal rows show -through. Three flex columns: +through. Measures its own rendered height via `ResizeObserver` +(`Header.tsx`) and writes it to a CSS custom property the content +below reads for its offset — a fixed `6em` guess used to be baked into +`agent.css`, which silently broke (content overlapping the header) the +moment any row of badges/pills wrapped onto an extra line at some +viewport width; measuring instead of guessing closes that bug class +structurally rather than for one specific trigger. Two columns: - **Agent icon** (``): fixed-size square identity anchor — `width: 5em; height: 5em` with explicit pixel sizing so the ``'s intrinsic (large) dimensions don't push the parent flex container open via `align-items: stretch`-driven - height feedback. 5em ≈ header content area (header `min-height: 6em` - minus `2 × 0.5em` padding). `align-self: flex-start` keeps the - icon stuck to the top so a state-row line-wrap doesn't drag it - down with it. Falls back to the dimmed hyperhive mark on load - error. -- **Main column** (`.agent-header-main`): two rows. - - Row 1 (`.agent-header-title-row`): title (`

`) + - meta-nav (`