Record agreed namespace default composition
This commit is contained in:
@@ -194,8 +194,9 @@ output-contract overrides and appended-message controls.
|
|||||||
|
|
||||||
Design independent prompt, profile, and backend defaults together. Native
|
Design independent prompt, profile, and backend defaults together. Native
|
||||||
`WithNamespaces` replaces all defaults on its new view; it has no partial-update
|
`WithNamespaces` replaces all defaults on its new view; it has no partial-update
|
||||||
semantics. Omission must therefore have a deliberate meaning when a loader
|
semantics. Under the agreed OD-3 design, opt-in selectors combine explicitly
|
||||||
already returns a scoped engine (OD-3).
|
declared suite defaults with supplied overrides; they do not infer defaults
|
||||||
|
from a loader's engine view.
|
||||||
|
|
||||||
Qualified IDs pass through native selection unchanged. Captured references,
|
Qualified IDs pass through native selection unchanged. Captured references,
|
||||||
configuration inspection, and namespace/collection inventories retain their
|
configuration inspection, and namespace/collection inventories retain their
|
||||||
@@ -366,8 +367,11 @@ Default tests remain offline and independent of real credentials.
|
|||||||
Resolve and cover duplicate-name precedence across the two input forms.
|
Resolve and cover duplicate-name precedence across the two input forms.
|
||||||
- [ ] Output-contract override and appended-message flags remain outside this
|
- [ ] Output-contract override and appended-message flags remain outside this
|
||||||
adoption, with their operator use cases retained in future work.
|
adoption, with their operator use cases retained in future work.
|
||||||
- [ ] Namespace defaults, explicit clearing, qualified selections, and catalog
|
- [ ] Opt-in namespace selectors combine declared suite defaults with supplied
|
||||||
filters are forwarded according to the selected design.
|
fields in one native view update. Omission preserves each declared default;
|
||||||
|
explicit empty values clear only the selected default. Qualified selections
|
||||||
|
and catalog filters retain their native meanings. Custom scoped loaders remain
|
||||||
|
usable without the option.
|
||||||
- [ ] The full configuration suite retains six subcommands. Explanation
|
- [ ] The full configuration suite retains six subcommands. Explanation
|
||||||
discovery and validation diagnostics are modes of existing commands, with
|
discovery and validation diagnostics are modes of existing commands, with
|
||||||
capability-aware help and selected mode/flag combination checks.
|
capability-aware help and selected mode/flag combination checks.
|
||||||
@@ -582,18 +586,27 @@ general-purpose request-building API follows from these CLI choices.
|
|||||||
|
|
||||||
### OD-3: Namespace flags and loader defaults
|
### OD-3: Namespace flags and loader defaults
|
||||||
|
|
||||||
**Recommendation:** make the standard namespace selectors opt-in with explicit
|
**Agreed:** make the standard namespace selectors opt-in with explicit
|
||||||
suite-owned namespace defaults. Compose supplied fields with those defaults,
|
application-supplied defaults for prompts, profiles, and backends in the suite.
|
||||||
then apply one native `WithNamespaces` call. Loaders using this option leave
|
`ckprompt` combines those defaults with the supplied CLI fields, then applies
|
||||||
default selection to that adapter. This gives omission and explicit empty
|
one native `WithNamespaces` call. Loaders using this option leave namespace
|
||||||
values predictable meanings without trying to read private engine state.
|
default selection to that adapter rather than relying on hidden engine-view
|
||||||
Without the option, existing scoped loaders continue as before.
|
state. Without the option, existing scoped loaders continue as before.
|
||||||
|
|
||||||
**Alternative:** pass presence-aware namespace choices to an acquisition
|
Omitting a selector preserves its declared default. Supplying a namespace
|
||||||
callback and let the application combine them with its existing loader defaults.
|
replaces that default for the invocation; supplying an explicitly empty value
|
||||||
This accommodates applications whose defaults depend on domain input, but adds
|
clears it. Each resource type is independent. For example, overriding the
|
||||||
consumer wiring and makes consistent behavior less automatic. Either design
|
prompt namespace must preserve the declared profile and backend defaults.
|
||||||
must account for the native API replacing all three defaults at once.
|
Qualified resource IDs pass through unchanged. Catalog namespace filters remain
|
||||||
|
separate from these resource-resolution defaults.
|
||||||
|
|
||||||
|
The standard option owns composition instead of requiring an application
|
||||||
|
callback to merge every selection. Applications needing custom namespace
|
||||||
|
selection can retain their own loading behavior without enabling the option.
|
||||||
|
|
||||||
|
**Remaining design:** select exact flag names, scoped convenience aliases,
|
||||||
|
and applicability to individual commands. These details are not settled by
|
||||||
|
agreement on default composition.
|
||||||
|
|
||||||
### OD-4: Configuration path and metadata presentation
|
### OD-4: Configuration path and metadata presentation
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user