docs: clear write-good.Passive hits in docs/scheduler/coordinator.md

5 genuine passive-voice rewrites (actor named — nixos-container
create; the passive construction replaced with an active
intransitive verb or 'nothing can X' phrasing matching the pattern
already established on credentials.md); 4 false positives left
untouched — a type-description idiom ('is typed'), a predicate-
adjective in a parallel triple ('is satisfied' alongside two
untouched siblings), and two already-established categories
('is unaffected', 'is tracked' as a follow-up).
This commit is contained in:
iris 2026-09-20 04:54:44 +02:00 • committed by mara
commit f047e509a7

View file

@ -19,8 +19,8 @@ changes) to the global job-DAG queue (`hive-c0re/src/job_queue/`)
as a **DAG of primitive nodes**. One scheduler task drives all DAGs; as a **DAG of primitive nodes**. One scheduler task drives all DAGs;
concurrency comes from the resource classes below, not from multiple workers. concurrency comes from the resource classes below, not from multiple workers.
Special cases like graceful stop, deferred starts, and the meta-update Special cases like graceful stop, deferred starts, and the meta-update
cascade need no bespoke code paths — each is expressed as a DAG _shape_ cascade need no bespoke code paths — each takes the shape of a DAG built
built from the same primitive nodes. from the same primitive nodes.
### Two levels: DAG and node ### Two levels: DAG and node
@ -34,9 +34,9 @@ never from edges between DAGs.
A DAG is **declared, not described**: a template builds it through A DAG is **declared, not described**: a template builds it through
`hive_jobq::JobBuilder`, naming each node it depends on via the handle `hive_jobq::JobBuilder`, naming each node it depends on via the handle
`b.node(kind)` handed back, and the builder inserts the nodes itself. A handle `b.node(kind)` handed back, and the builder inserts the nodes itself. A handle
only exists for a node already declared, so every edge points backwards and a only exists for a node already declared, so every edge points backwards and
cycle can't be written down — there is no submit-time validation pass, because nothing can write a cycle down — there is no submit-time validation pass,
there is no malformed spec to reject. because there is no malformed spec to reject.
### Node inventory (primitives) ### Node inventory (primitives)
@ -340,8 +340,8 @@ live-log panel off the running node.
The event carries no payload by design: shipping a typed projection of The event carries no payload by design: shipping a typed projection of
the whole queue in the event itself would be a second rendering of the the whole queue in the event itself would be a second rendering of the
same graph that has to be kept in agreement by hand with the endpoint same graph that someone has to keep in agreement by hand with the
every consumer actually reads. Telling a client _when_ to refetch is endpoint every consumer actually reads. Telling a client _when_ to refetch is
the event's whole job. the event's whole job.
--- ---
@ -473,7 +473,7 @@ fallback.
### Spawn path (new container) ### Spawn path (new container)
For a first-time `create`, `nixos-container create` is atomic: if the build fails, For a first-time `create`, `nixos-container create` is atomic: if the build fails,
no container record is left to clean up. A separate prebuild would just duplicate it leaves no container record to clean up. A separate prebuild would just duplicate
the eval, so it's skipped. Sequence: `create --flake meta#<name>` → write nspawn the eval, so it's skipped. Sequence: `create --flake meta#<name>` → write nspawn
flags → `systemctl daemon-reload` → `start`. flags → `systemctl daemon-reload` → `start`.
@ -555,7 +555,7 @@ trade-off:
- **On** (recommended for x86_64 hosts that care about first-spawn - **On** (recommended for x86_64 hosts that care about first-spawn
latency): the first `nixos-container start` for any new agent latency): the first `nixos-container start` for any new agent
completes in seconds because nothing is left to fetch. Cost: completes in seconds because nothing remains to fetch. Cost:
`preBuildAgentTemplates` adds the full nixpkgs runtime closure + claude-code + the harness `preBuildAgentTemplates` adds the full nixpkgs runtime closure + claude-code + the harness
binary to the host system closure (low single-digit GB binary to the host system closure (low single-digit GB
additional). additional).