Extract explicit configuration loading phases

This commit is contained in:
2026-09-07 01:13:20 +00:00
parent 75a5829132
commit 6a1c7df4be
8 changed files with 342 additions and 256 deletions

View File

@@ -293,7 +293,16 @@ profile/CLI provenance remains identical.
## Stage 7 — Extract explicit loader lifecycle phases
Status: pending.
Status: complete.
Completion: `load.go` now visibly coordinates ordered phases using source assembly
in `load_input.go`, option selection in `options.go`, and typed phase outputs and
publication in `load_result.go`. Version checking lives in `validation.go`.
One composition initializer covers profiles, CLI, and NoSource overrides without
changing budgets. Diagnostics and source handoffs remain explicit, both ownership
clones remain, and publication adds no history copies. Full offline baseline and
race suites passed with Go 1.26.7 on Linux/amd64; lifecycle, early-stop, warning,
precedence, provenance, callback ownership, and secret tests passed unchanged.
Evidence: `loadWithSecretLookup` in [load.go](../../load.go) coordinates roughly
200 lines of source assembly, decoding, callbacks, history, secrets, and result