hyperhive/hivectl/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas db0eb8829b hivectl, docs: choom is not root-only, and set-limits takes no agent name
Two unrelated changes landed correctly and left their prose behind, both
on operator-facing surfaces.

`hivectl agent <name> choom` gained a `hive-admin` path when hive-c0re
started shipping a polkit rule for `machinectl shell`. `choom.rs`
implements exactly that — `euid != 0 && !in_hive_admin_group()` — but
the `Choom` variant's clap doc comment still said "Requires root and a
running container", eight weeks on. That string is what
`choom --help` prints and what renders into the generated CLI
reference, so it is the sentence an operator actually reads, and it
tells a `hive-admin` member the command is not available to them.
`docs/turn-loop/mcp.md` carried the same staleness inside a
trust-boundary argument ("an operator (root) action"), where naming a
narrower reachable set than the real one is the wrong way to be wrong.

Dating it rather than asserting it: the acceptance landed 2026-09-07,
the doc string 2026-07-16.

Separately, `docs/tools/hivectl.md` states the agent-name hoist itself
("the name is hoisted onto the parent command, so none of the verbs
below repeat it") and its own example block obeys it, then twice writes
`set-limits sock --memory-max 8G` — the pre-hoist order. The generated
reference is unambiguous: `hivectl agent <NAME> <COMMAND>` versus
`hivectl agent set-limits [OPTIONS]`, with `quota set <SIZE>` nearby
showing that positionals do render when they exist. The costly one is a
complete command in backticks inside the paragraph explaining the
footgun it illustrates.

`docs/tools/hivectl-cli.md` is regenerated rather than hand-edited; the
diff against the committed copy is exactly one line.

Closes #4236.
2026-09-11 19:11:13 +02:00
..
agents.rs hive-c0re/hivectl/hive-agent: pause as a job-queue DAG node (closes #3056) 2026-08-11 23:47:09 +02:00
approvals.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
choom.rs hive-c0re: grant hive-admin group a polkit rule for choom 2026-09-07 23:27:15 +02:00
cli.rs hivectl, docs: choom is not root-only, and set-limits takes no agent name 2026-09-11 19:11:13 +02:00
client.rs host.sock: give HostResponse a wire-schema version, warn on mismatch 2026-09-07 14:08:30 +02:00
completions.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
dag_progress.rs feat(#3245): gate rustdoc in nix flake check, and clear the workspace 2026-08-14 02:30:55 +02:00
forge.rs refactor(#2302): type socket wire fields as ident, validated by serde on deserialize 2026-07-20 21:46:18 +02:00
gateway.rs split hivectl main.rs into per-domain modules (#2509) 2026-07-16 11:28:43 +02:00
github.rs refactor(#2302): type socket wire fields as ident, validated by serde on deserialize 2026-07-20 21:46:18 +02:00
main.rs hivectl: batch QueueNodes polling by id set, drop remaining dag wording 2026-08-03 20:35:24 +02:00
matrix.rs refactor(#2302): type socket wire fields as ident, validated by serde on deserialize 2026-07-20 21:46:18 +02:00
open.rs deploy: split the homeserver's host decisions out of swarm.matrix 2026-09-07 14:24:52 +02:00
power.rs hivectl: batch QueueNodes polling by id set, drop remaining dag wording 2026-08-03 20:35:24 +02:00
quota.rs hivectl: rename hivectl agents to hivectl agent <name> <verb> 2026-07-27 19:07:18 +02:00
subvol.rs hivectl: batch QueueNodes polling by id set, drop remaining dag wording 2026-08-03 20:35:24 +02:00
util.rs fix(hivectl): ask the daemon whether an agent exists 2026-07-27 09:34:43 +02:00
watch.rs docs: restructure into topic subdirectories, collapse duplicated index 2026-09-02 01:55:37 +02:00
wg.rs deploy: move the wireguard mesh out of the namespace hives read 2026-09-07 14:24:52 +02:00