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.
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).