docs+comments: say what changed instead of tagging the tracker item

The prose added by this branch named the tracker item in seventeen
places, which check-issue-refs.sh rejects: a `#N` tag is dead weight for
anyone reading the public mirror, where no issue data exists. Each one
now states the fact it was pointing at — the parent field is gone — so
the sentence stands on its own.

Two of those lines also carried a rustdoc break: `[`write`]` in
topology.rs is ambiguous between the module's own `write` fn and the
`write!` macro, which `-D rustdoc::broken-intra-doc-links` fails. Spelled
`[`write()`]`, per rustdoc's own suggestion.

The host_config.rs rewrite is two lines rather than three so the doc
block stays under check-comment-blocks.sh's 30-line ceiling.
This commit is contained in:
atlas 2026-09-21 22:20:21 +02:00
commit 336ed5a010
10 changed files with 28 additions and 28 deletions

View file

@ -2,8 +2,8 @@
<!-- vale write-good.Passive = NO -->
Agents are a **flat set**, with no parent/child tree: #4472 removed the
`parent` field `topology.json` used to carry, and every mechanism that
Agents are a **flat set**, with no parent/child tree: the `parent` field
`topology.json` used to carry is gone, along with every mechanism that
read it. The capability store scopes which agents can manage which
others; a tree position no longer scopes anything.
@ -33,7 +33,7 @@ agent's `state` read-write and `config` read-only; never `harness`). An
agent holding no capability sees its own dirs and nothing else. See
[`persistence.md`](persistence.md)'s _Cross-agent access to state._
### Reading the pre-#4472 format
### Reading the legacy format
`topology.json` used to be a map of `name → parent | null`. The reader
still accepts that shape and keeps its keys, so a hive upgrading across

View file

@ -344,8 +344,8 @@ The RW on `state` is deliberate, not an oversight: the holder recovers
other agents, which includes writing into their state (for example
seeding notes, clearing a stuck sentinel) as well as reading it.
This is the **only** cross-agent mount. #4472 removed the topology
parent field, and with it the unconditional grant every agent used to
This is the **only** cross-agent mount. Dropping the topology parent
field took with it the unconditional grant every agent used to
get over its own direct children — an agent holding no capability now
sees its own dirs and nothing else.
@ -395,8 +395,8 @@ Contents:
- `topology.json` — the agent roster (`["alice", "bob", "ruth"]`).
Written by `topology::reconcile` on every meta sync; read by
`topology::all_agents`, which is the set the `ManageRootAgent`
capability grants mounts over. Carried a `parent` per agent until
#4472; the reader still accepts that shape and keeps its keys.
capability grants mounts over. Carried a `parent` per agent in the
legacy format; the reader still accepts that shape and keeps its keys.
- `tool-groups.json` — per-agent MCP tool group grants
(`{ "alice": ["messaging", "inbox", "execution"] }`). Written by
`tool_groups::set_groups`; injected as `HIVE_TOOL_GROUPS` env

View file

@ -89,8 +89,8 @@ angle-bracket and asterisk shapes below are structurally safe.
inbox view; no agent ever `recv`'s them.
`<parent>` and `<children>` were two more, resolved against a
`topology.json` parent field. #4472 removed that field and both
sentinels with it: address `operator` where you would have said
`topology.json` parent field. That field and both sentinels no longer
exist: address `operator` where you would have said
`<parent>`, and name the recipients (or broadcast to `*`) where you
would have said `<children>`. Nothing rewrites a recipient at send time
any more — what an agent passes is what the broker stores.

View file

@ -59,8 +59,8 @@ surfaces, not tab panes.
**C0NTAINERS** — live containers rendered as a flat,
alphabetically-sorted list. The renderer still walks
`ContainerView.parent` for a depth-first tree with ASCII glyphs
(`├─`, `└─`, `│ ` continuation columns), but #4472 removed that field,
so every row sits at depth 0 and the renderer paints no glyph. The tree
(`├─`, `└─`, `│ ` continuation columns), but that field no longer
exists, so every row sits at depth 0 and the renderer paints no glyph. The tree
sorts alphabetically;
roots likewise. The tree tolerates cycles in the parent graph —
it appends orphaned containers (not reachable from any root)
@ -981,7 +981,7 @@ identically.)
### Topology tree
⚠️ **Dormant since #4472,** which removed `ContainerView.parent`:
⚠️ **Dormant now that `ContainerView.parent` no longer exists:**
`buildAgentTree` now puts every container at depth 0 and the rules below are
all no-ops — the list renders flat. The walk and the prefix painting are
still in `swarm.js`; retiring them falls to the frontend owner rather
@ -1032,8 +1032,8 @@ frosted-mauve bar slides up from the bottom of the viewport
- `DESTR0Y` / `PURG3` — always available
<!-- vale write-good.Passive = YES -->
#4472 removed the `M0V3` picker that used to sit here — an agent has
no parent to move it to any more.
The `M0V3` picker that used to sit here no longer exists — an agent
has no parent to move it to any more.
- **`✕ clear`** button + `Esc` key clear the entire selection.
Every render prunes stale selections (agents destroyed while