prvng_core/nulib/lib_provisioning/mod.nu
Jesús Pérez c917b058b3
fix(core): resolve undefined symbols hidden by lib_provisioning star-imports
Six symbols were referenced across the codebase but had no definition anywhere.
Star-imports from lib_provisioning/mod.nu silenced the missing-def errors at
parse time; at runtime the call sites either threw or took dead code paths.
ADR-025 Phase 2 (AST audit) surfaced them as blockers for Phase 3 because
selective imports would expose them as "variable not found" errors.

Resolution: add stub getters in lib_provisioning/config/accessor/functions.nu
following the existing pattern (env -> config -> PROVISIONING-derived -> ""):

  - get-providers-path          (14 call sites)
  - get-prov-lib-path           (2 call sites)
  - get-core-nulib-path         (7 call sites)
  - get-provisioning-generate-dirpath  (5 call sites)
  - get-provisioning-generate-defsfile (1 call site)
  - get-provisioning-req-versions (4 call sites)

All existing callers already guard results with is-empty / path exists checks,
so empty-string returns fall back to safe no-op paths.

show_tools_info (main_provisioning/tools.nu) was missing a guard around its
open call; added is-empty / path-exists check matching sibling fns.

The only non-path symbol (on_clusters in clusters/create.nu) had no recoverable
implementation; its closure is replaced with a user-facing message directing
to 'prvng cluster deploy' (the supported workflow).

Refs: ADR-025, .coder/benchmarks/phase2-findings.md blockers section
2026-04-17 07:46:03 +01:00

20 lines
492 B
Text

export use plugins_defs.nu *
export use utils *
#export use cmd *
export use defs *
export use sops *
export use kms *
export use secrets *
export use ai *
export use context.nu *
export use setup *
#export use deploy.nu *
export use extensions *
# providers.nu deleted (ADR-025 blocker 3) — callers import directly from
# extensions/providers/prov_lib/middleware.nu
export use workspace *
export use config *
export use diagnostics *
#export use tera_daemon *
#export use fluent_daemon *