Allow absent inputs to use import contexts
This commit is contained in:
@@ -78,9 +78,14 @@ non-root destination. Unknown modes, invalid destinations, and invalid or
|
||||
conflicting sequence registrations fail before source acquisition. Overlay and
|
||||
CLI coordinates remain rooted at the application root. Ordinary `Load` recognizes
|
||||
source-root collection declarations whether or not imports are enabled; an
|
||||
`imports` declaration still requires imports to be enabled. `NoSource` rejects
|
||||
imports, active overlays, and filesystem context as invalid combinations but
|
||||
accepts overrides and remains an absent source rather than an empty document.
|
||||
`imports` declaration still requires imports to be enabled. `NoSource` may enable
|
||||
imports, but it has no main declarations to traverse. It accepts an explicit
|
||||
filesystem context: a host context requires an absolute existing `Root` and may
|
||||
omit `BaseDir` to use that root as its internal import base; a native context
|
||||
requires its namespace, `BaseDir`, and `Root`. Supplied context is validated even
|
||||
when imports are disabled. Active ordinary overlays remain invalid for
|
||||
`NoSource`. It accepts overrides and remains absent rather than contributing an
|
||||
empty document.
|
||||
|
||||
Every source, options, schema, version, defaults, decode, resolution, or validation
|
||||
failure returns a nil result and a `*LoadError`. Successful results contain caller-owned `Config`, detached
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Configuration Discovery Implementation Plan
|
||||
|
||||
Status: in progress. Stages 1, 2, and 3 are complete.
|
||||
Status: in progress. Stages 1, 2, 3, and 4 are complete.
|
||||
|
||||
Implement the target behavior in [the discovery roadmap](discovery.md). That
|
||||
document owns the selected conventions and OD-1 through OD-5; this plan owns the
|
||||
@@ -271,7 +271,7 @@ running defaults/resolution. A selected source's later read failure is not a
|
||||
fallback signal. Run focused discovery/source tests and the everyday check;
|
||||
mark and commit.
|
||||
|
||||
## Stage 4 — Unify Absent Input Acquisition And Context Validation
|
||||
## Stage 4 — Unify Absent Input Acquisition And Context Validation (Complete)
|
||||
|
||||
This stage changes `NoSource()` deliberately, before attaching discovery to loads.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user