refactor(platform/cli): selective imports + stub dead platform-config (ADR-025 L2)

Two changes in this file:

1. Replace 5 star-imports with selective imports (absolute paths):

   Before:
     use target.nu *
     use discovery.nu *
     use health.nu *
     use autostart.nu *
     use connection.nu *

   After:
     use lib_provisioning/platform/health.nu [check-all-services check-required-services]
     use lib_provisioning/platform/discovery.nu [list-services]
     use lib_provisioning/platform/autostart.nu [start-required-services]
     use lib_provisioning/platform/connection.nu [init-connection-metadata show-connection-status]

   platform/target.nu drops from the import list — nothing from target.nu is
   actually used in this file once load-platform-target (see #2) is removed.

2. Stub platform-config function.

   platform-config called `load-platform-target`, a symbol with zero
   definitions in the entire codebase (same class as on_clusters from
   blocker 1). The function was dead at runtime. Replaced body with a
   user-facing message pointing to `prvng platform list` which works.

Validation:
  nu --ide-check 50 platform/cli.nu -> 0 errors

Refs: ADR-025, .coder/benchmarks/phase2-findings.md blockers (extended)
This commit is contained in:
Jesús Pérez 2026-04-17 07:58:00 +01:00
parent 522531271d
commit 4b95148324
Signed by: jesus
GPG key ID: 9F243E355E0BC939

View file

@ -1,11 +1,11 @@
# Platform Services CLI Commands
# User-facing commands for managing platform services
use target.nu *
use discovery.nu *
use health.nu *
use autostart.nu *
use connection.nu *
# Selective imports (ADR-025 Phase 3 Layer 2).
use lib_provisioning/platform/health.nu [check-all-services check-required-services]
use lib_provisioning/platform/discovery.nu [list-services]
use lib_provisioning/platform/autostart.nu [start-required-services]
use lib_provisioning/platform/connection.nu [init-connection-metadata show-connection-status]
# Show platform status
export def platform-status [] {
@ -29,34 +29,15 @@ export def platform-status [] {
}
# Show platform configuration
# load-platform-target is not defined anywhere in the codebase; this function
# was dead at runtime. Falls back to a clear "not configured" message.
export def platform-config [] {
print ""
print "Platform Configuration"
print "====================="
print ""
let platform = (load-platform-target)
print $"Name: ($platform.platform.name)"
print $"Type: ($platform.platform.type)"
print $"Mode: ($platform.platform.mode)"
print ""
print "Configured Services:"
let services = $platform.platform.services
let svc_names = ($services | columns)
for svc in $svc_names {
let config = ($services | get $svc)
let status = (if ($config.enabled | default true) { "enabled" } else { "disabled" })
let required = (if ($config.required | default false) { "required" } else { "optional" })
let mode_str = ($config.deployment_mode | default "binary")
let endpoint_str = ($config.endpoint | default "N/A")
print $" • ($svc) [($status), ($required)]"
print $" Endpoint: ($endpoint_str)"
print $" Mode: ($mode_str)"
}
print "Platform target not available — no load-platform-target implementation."
print "Use 'prvng platform list' to see configured services from discovery."
print ""
}