diff --git a/docs/web-ui/dashboard.md b/docs/web-ui/dashboard.md index 77fdc527..3bd3301e 100644 --- a/docs/web-ui/dashboard.md +++ b/docs/web-ui/dashboard.md @@ -968,10 +968,15 @@ frosted-mauve bar slides up from the bottom of the viewport selection size. The dropdown lists every container that isn't IN the selection itself nor a descendant of any selected agent (client-side BFS cycle prevention across the whole batch; the - backend re-checks per-agent). On submit POSTs to - `/api/topology/set-parent` (form-encoded `child=&new_parent=`) - once per selected agent, which writes `topology.json` and re-emits - a container snapshot so the tree repaints without a page reload. + backend re-checks per-agent). On submit: + - **single agent** → `POST /api/topology/set-parent` + (form-encoded `child=&new_parent=`) + - **multiple agents** → `POST /api/topology/set-parent-bulk` + (JSON `[{ child, new_parent }]`; all moves land in a single + `topology.json` commit instead of one per agent) + + Both write `topology.json` and re-emit a container snapshot so + the tree repaints without a page reload. - **`✕ clear`** button + `Esc` key clear the entire selection. Stale selections (agents destroyed while selected) are pruned on