nix/docs: fix empty host options page — pick under services.hyperhive.* (#630)

mara on #630: host options page came up empty (template chrome with no
`<h2>` option headers).

Root cause: `pickSubtrees` filtered the host eval against the pre-#615
roots `[ "hyperhive" ]` and `[ "services" "hive-c0re" ]`. #615 moved
the whole host option tree under `services.hyperhive.*`; neither old
root matches anymore, so the filter silently produced an empty tree
and the rendered page degraded to just `<nav> + <main><h1></h1></main>
+ <footer>` chrome.

Fix: pick under `[ "services" "hyperhive" ]`. Agent options stay at
`[ "hyperhive" ]` — per-agent harness options weren't moved by #615.

Before: 100 lines, 0 `<h2>` headers
After:  661 lines, 33 `<h2>` headers covering:
  services.hyperhive.{enable,domain,c0re.*,forge.*,matrix.*,gateway.*}

Closes #630.
This commit is contained in:
atlas 2026-05-30 13:05:04 +02:00
commit 1de4a6f654

View file

@ -106,11 +106,16 @@ let
in
lib.foldl' lib.recursiveUpdate { } (map pick roots);
# Post-#615, host options live entirely under `services.hyperhive.*`
# (closes #630). Pre-#615 had a mix of `hyperhive.*` (forge, matrix,
# domain) and `services.hive-c0re.*` — picking against those roots
# silently produced an empty options tree on current main, so the
# rendered host page was just the template chrome with no `<h2>`
# option headers underneath.
hostOptions = pickSubtrees hostEval.options [
[ "hyperhive" ]
[
"services"
"hive-c0re"
"hyperhive"
]
];