hyperhive/nix/host-modules/hive-c0re
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 5d3f2af75e refactor(#2754): make the container weights Option, not a 0 sentinel
Encoding "not configured" as weight 0 worked (the writer omitted the
line) but the type lied: 0 is not a legal cgroup v2 weight, and every
reader had to know the sentinel. Use Option<u32> end to end instead —
wire type, priv_client, HiveEnv, drop-in writer — so "unset" is a state
of the type rather than a magic value.

The nix options become nullOr, keeping their default of 80; null now
expresses "leave the setting out of the drop-in entirely" declaratively,
which is the useful shape on a host whose IO scheduler ignores
io.weight anyway.

Backward compat is unchanged: the fields stay #[serde(default)], so a
request from an older hive-c0re deserialises to None and reproduces the
pre-weights drop-in byte for byte. The test that pins that now passes
None instead of 0.
2026-07-27 10:55:29 +02:00
..
default.nix feat(#2754): hive-wide CPUWeight= / IOWeight= for agent containers 2026-07-27 10:25:30 +02:00
environment.nix fix(#2560): make hive-core git non-interactive + bound stalled fetches 2026-07-17 15:01:47 +02:00
options.nix refactor(#2754): make the container weights Option, not a 0 sentinel 2026-07-27 10:55:29 +02:00
theme.nix refactor: nix/host-modules + nix/agent-modules layout, update doc paths 2026-07-13 22:05:49 +02:00