The slice-2b commit (6f0de7a) repointed cli/component.nu and cli/components_cluster.nu
to domain/cluster/introspect.nu but did not stage the file itself — HEAD imported a
module absent from the repo. Add it.
Also prune the verbs file: components_cluster.nu inherited the full preamble from the
slice-1 copy; now that it holds only the 5 `main cluster *` verbs, 10 unused `use`
lines (orchestrator, run_taskserv, templates, service_check, context_assembler, state,
user/config, ncl-eval, mod.nu *) and 2 over-broad name lists are dead. Trimmed to the
4 imports the verbs actually use.
Verified: module-load of all cli/domain cluster modules; cluster --help + component
list run.
Complete the cluster decomposition: the 23 introspection helpers (capacity,
kubectl/ssh summaries, live-check, badges) move from cli/components_cluster.nu to
domain/cluster/introspect.nu. cli/components_cluster.nu now holds ONLY the 5
`main cluster *` verbs (963 -> 452 lines). introspect.nu imports downward only
(tools/nickel, domain/cluster/access, platform/clients/ssh, primitives/logging).
Exported 4 previously-private helpers (fmt-gib, k8s-quantity-bytes,
node-operator-labels, cluster-top-legend) so the cli verbs can call them across
the module boundary; dropped a dead comp-dag-summary import. component.nu repoints
its 11 helper imports to introspect.nu.
Verified: module-load of all touched modules (no cycle, no upward import); ADR-026
topology clean across the whole cluster subsystem; cluster --help + component list
run. Concludes slices 2a+2b: cli/components.nu 3611 -> 2410 (-33%).
Untangle the shared foundation that the cluster subsystem depends on, moving each
helper to the layer its dependency topology dictates, de-cli-ifying on the way
(cli-err → error make). One-directional imports only; verified no cycles.
comp-ncl-export → tools/nickel/process.nu
ws-resolution (8 fns + root finders) → domain/workspace/resolve.nu (new)
comp-ssh-run, comp-server-ssh-info → platform/clients/ssh.nu (new)
comp-kubectl-access, comp-kubectl-ssh → domain/cluster/access.nu (new)
Consumers (components.nu, components_cluster.nu, component.nu) repointed to the
new locations. components.nu 2664 → 2408.
Verified: NU_LIB_DIRS module-load of all 8 touched modules (no cycle, no missing
command, no export error); ADR-026 hygiene (no upward imports in the new
platform/domain/tools modules); `provisioning component list` runs; component/cluster
--help exit 0. Prereq for slice 2b (cluster helpers → domain/cluster/introspect.nu).