From 220153f124bb51084196bef3f51dbc4226c35997 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jesu=CC=81s=20Pe=CC=81rez?= Date: Fri, 17 Apr 2026 08:11:22 +0100 Subject: [PATCH] refactor(extensions/mod): selective re-exports replace 8 star re-exports (ADR-025 L3) extensions/mod.nu had 8 `export use X *`. Each is now explicit symbol list. Symbol counts per target: loader.nu 7 registry.nu 13 profiles.nu 7 loader_oci.nu 1 cache.nu 9 versions.nu 8 discovery.nu 8 commands.nu 13 (all multi-word "ext X" subcommands, quoted) Total: 66 symbols re-exported, 13 quoted multi-word. Validation: nu --ide-check 50 extensions/mod.nu -> 0 errors Refs: ADR-025, .coder/benchmarks/phase2-transitivity.md Layer 3 --- nulib/lib_provisioning/extensions/mod.nu | 43 +++++++++++++++++++----- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/nulib/lib_provisioning/extensions/mod.nu b/nulib/lib_provisioning/extensions/mod.nu index 4e8319e..1c4296c 100644 --- a/nulib/lib_provisioning/extensions/mod.nu +++ b/nulib/lib_provisioning/extensions/mod.nu @@ -1,11 +1,38 @@ # Extensions Module # Provides extension system functionality -export use loader.nu * -export use registry.nu * -export use profiles.nu * -export use loader_oci.nu * -export use cache.nu * -export use versions.nu * -export use discovery.nu * -export use commands.nu * +# extensions/ subsystem facade — selective re-exports (ADR-025 Phase 3 Layer 3). + +export use loader.nu [ + check-requirements discover-providers discover-taskservs + get-extension-paths is-extension-allowed load-hooks load-manifest +] +export use registry.nu [ + execute-hooks get-default-registry get-provider get-taskserv + get-taskserv-path init-registry list-providers list-taskservs + load-registry provider-exists save-registry taskserv-exists +] +export use profiles.nu [ + create-example-profiles enforce-profile is-command-allowed + is-provider-allowed is-taskserv-allowed load-profile show-profile +] +export use loader_oci.nu [load-extension] +export use cache.nu [ + hetzner_cache_age hetzner_cache_valid hetzner_clean_all_cache + hetzner_clean_cache hetzner_create_cache hetzner_ip_from_cache + hetzner_read_cache hetzner_start_cache_info hetzner_update_cache +] +export use versions.nu [ + compare-semver get-latest-version is-semver resolve-gitea-version + resolve-oci-version resolve-version satisfies-constraint sort-by-semver +] +export use discovery.nu [ + discover-all-extensions discover-local-extensions discover-oci-extensions + get-extension-versions get-oci-extension-metadata list-extensions + search-extensions search-oci-extensions +] +export use commands.nu [ + "ext cache clear" "ext cache list" "ext cache prune" "ext cache stats" + "ext discover" "ext info" "ext list" "ext load" "ext publish" + "ext pull" "ext search" "ext test-oci" "ext versions" +]