tabs.js + web-ui.md: drop 'no special-case manager' framing (mara on #728)

mara's review nit: explaining the absence of a manager special-case
implicitly endorses the idea that special cases would be normal.
Default is no special case; the doc shouldn't dwell on it.

- ST0P comment block removed entirely (the bulk-button line above
  is self-explanatory; the substantive 'c0re survives manager-down'
  rationale lives in the host docs, not here).
- M0V3 helper comment reframed: trim the 'no special-case' framing
  but keep the substantive note that the backend refuses moves it
  can't satisfy and the failure surfaces in the bulk roll-up.
- docs/web-ui.md::Selection bar bullet list: drop the 'manager
  included; no special-case' qualifiers; just describe the action.
  M0V3→ROOT keeps the rationale that backend refusals surface in
  the roll-up but stops calling out manager specifically.
This commit is contained in:
iris 2026-05-31 12:13:28 +02:00 committed by Mara
commit 69debe6b7d
2 changed files with 10 additions and 18 deletions

View file

@ -522,15 +522,15 @@ frosted-mauve bar slides up from the bottom of the viewport
support the action; disabled with a tooltip naming the blockers
when the selection is mixed:
- `↺ R3ST4RT` — running agents only
- `■ ST0P` — running agents only (manager included; no special-case)
- `■ ST0P` — running agents only
- `▶ ST4RT` — stopped agents only
- `↻ R3BU1LD` — always available
- `DESTR0Y` / `PURG3` — sub-agents only (disabled if manager selected)
- `⇡ M0V3 → ROOT` (#486) — promote selected agents to top-level
(parent = null); disabled when all selected are already at root.
Manager included with no special-case (matches the `ST0P` policy);
the backend's `topology::set_parent` refuses to move the manager
and the refusal surfaces in the failure roll-up.
Backend `topology::set_parent` refuses moves it can't satisfy
(e.g. moving the manager) and the refusal surfaces in the
failure roll-up.
- `⇢ M0V3 → [select]` (#486) — inline picker available for any
selection size. The dropdown lists every container that isn't IN
the selection itself nor a descendant of any selected agent

View file

@ -783,12 +783,6 @@ window.marked = marked;
confirm: (names) => `restart ${names.length} agent${names.length === 1 ? '' : 's'} (${names.join(', ')})?`,
disabledTitle: why('↺ R3ST4RT', stoppedNames.map((n) => `\`${n}\` is stopped`)),
});
// ST0P does not special-case the manager: when the whole selection
// is running it applies, manager included. host-side hive-c0re
// keeps serving the dashboard either way + per-agent approvals +
// meta-input updates still work without the manager up, so we
// don't special-case the confirm prompt when the manager is in
// the selection (mara: "dont special case manager for stopping").
addBulkButton(actions, 'btn-stop', '■ ST0P', allRunning, selected, {
action: '/kill/',
confirm: (names) => `stop ${names.length} agent${names.length === 1 ? '' : 's'} (${names.join(', ')})?`,
@ -835,14 +829,12 @@ window.marked = marked;
addMoveActions(actions, selected, containers);
}
// #486 — render the M0V3 affordances inside the selection bar. Split
// into its own helper because the picker variant needs a select + button
// pair, not the single-button shape addBulkButton ships.
//
// No client-side manager special-case (mara on #695): backend
// `topology::set_parent` refuses to move the manager and surfaces the
// refusal as a per-agent failure in the bulk-action error roll-up. Same
// pattern as ST0P (which also doesn't special-case manager).
// Render the M0V3 affordances inside the selection bar — separate
// helper because the picker variant needs a select + button pair,
// not the single-button shape addBulkButton ships. Backend
// `topology::set_parent` refuses moves it can't satisfy (manager
// included) and the refusal surfaces in the bulk-action error
// roll-up.
function addMoveActions(parent, selected, containers) {
// M0V3 → ROOT: parent=null for every selected agent. Only meaningful
// when at least one selected agent currently has a non-null parent;