docs: retire the stray top-level web-ui.md, fold it into web-ui/README.md
docs/web-ui.md duplicated the web-ui/ directory name at the top level -- the only such collision in docs/ (every other subsystem has just a directory, no sibling <dir>.md file). That's exactly why it rendered outside the directory structure in the docs site nav (mara's report, hyperhive#4054): the site build walks docs/ generically with no special-casing, so a loose top-level file next to a same-named directory shows up as its own flat top-level entry instead of nesting under that directory's section. web-ui.md's own first paragraph already said as much -- 'This doc has been split for readability... start at web-ui/README.md instead.' It was a leftover pointer from before the split, not a page carrying unique content on its own merit. Folded its two sections web-ui/README.md didn't already have (the swarm-ui design-guide link, and the task-oriented 'reading paths' quick-lookup list) into web-ui/README.md's existing 'More depth' section, then deleted the stray file and repointed every real reference at it: 3 in-tree doc cross-links, 3 doc prose mentions (retargeted to the more specific dashboard.md/shape.md sub-page each one was actually about), and ~28 frontend source comments (dashboard/agent/shared packages) that cited it as 'docs/web-ui.md::<heading>' for implementation context -- retargeted each to whichever of dashboard.md/shape.md/agent.md actually carries that heading now, verified against each file's real heading list rather than guessed. Verified via scripts/check-doc-refs.sh (the same lint CI runs): 0 dead pointers, both before write (confirming the tree was clean beforehand) and after (confirming nothing broke).
This commit is contained in:
parent
18de4b48c7
commit
77296aff35
21 changed files with 74 additions and 96 deletions
|
|
@ -44,7 +44,7 @@ const containerRowCache = new Map();
|
|||
const transientsState = new Map();
|
||||
|
||||
// In-memory set of selected agent logical names backing the sticky
|
||||
// #selection-bar. See docs/web-ui.md::Selection bar for the
|
||||
// #selection-bar. See docs/web-ui/dashboard.md::Selection bar for the
|
||||
// interaction model (icon-click toggle, Esc/clear button drop,
|
||||
// tab-gated visibility).
|
||||
const selectionState = new Set();
|
||||
|
|
@ -227,7 +227,7 @@ function derivePortConflicts(containers) {
|
|||
}
|
||||
|
||||
// ─── topology tree ───────────────────────────────────────────────────────────
|
||||
// See docs/web-ui.md::Topology tree for the rendering contract
|
||||
// See docs/web-ui/dashboard.md::Topology tree for the rendering contract
|
||||
// (forest walk, alphabetical sort, orphan + cycle handling).
|
||||
|
||||
function buildAgentTree(containers) {
|
||||
|
|
@ -277,7 +277,7 @@ function buildAgentTree(containers) {
|
|||
return out;
|
||||
}
|
||||
// Builds the .tree-prefix DOM for a row at the given depth.
|
||||
// See docs/web-ui.md::Topology tree for why this is DOM-painted
|
||||
// See docs/web-ui/dashboard.md::Topology tree for why this is DOM-painted
|
||||
// (one positioned <span> per lane) rather than text-glyph-painted.
|
||||
function treePrefixDom({ depth, ancestorIsLast, isLast }) {
|
||||
if (depth === 0) return null;
|
||||
|
|
@ -650,7 +650,7 @@ function buildContainerLi(c, node, opts) {
|
|||
|
||||
// Per-card action buttons (R3ST4RT / ST0P / ST4RT / R3BU1LD /
|
||||
// DESTR0Y / PURG3) live on the selection bar, not here — see
|
||||
// docs/web-ui.md::Selection bar. The contextual `needs update ↻`
|
||||
// docs/web-ui/dashboard.md::Selection bar. The contextual `needs update ↻`
|
||||
// chip in the head row stays — it's a state-hint, not an
|
||||
// action button.
|
||||
|
||||
|
|
@ -830,7 +830,7 @@ export function renderContainers(s) {
|
|||
|
||||
// ─── selection bar ───────────────────────────────────────────────────────────
|
||||
// Sticky-bottom strip; visible when >=1 agent selected on the SW4RM
|
||||
// tab. See docs/web-ui.md::Selection bar for the interaction model
|
||||
// tab. See docs/web-ui/dashboard.md::Selection bar for the interaction model
|
||||
// and the per-action availability rules (disabled-with-tooltip for
|
||||
// actions that don't apply to the full selection). Actions POST per
|
||||
// agent in a loop (endpoints are individually idempotent /
|
||||
|
|
|
|||
Loading…
Reference in a new issue