Plan staged CommandKit implementation
This commit is contained in:
@@ -11,6 +11,11 @@ breaking changes. The decisions recorded below are accepted; other recommendatio
|
||||
remain proposed. Implementation details and exact Go API declarations remain
|
||||
future work.
|
||||
|
||||
The ADRs record architectural choices and their rationale. Detailed selection,
|
||||
acquisition coordination, report formatting, and diagnostic-delivery mechanics
|
||||
below remain proposals unless explicitly marked accepted. Their presence here
|
||||
does not establish additional contracts in the ADRs.
|
||||
|
||||
### Accepted planning decisions
|
||||
|
||||
- Use namespace/resource first: `app config show` and `app promptkit show`.
|
||||
@@ -212,8 +217,9 @@ available names in the diagnostic; there is no fallback to `app`.
|
||||
Scopes use stable semantic names rather than executable names such as `notarius`.
|
||||
Additional independently meaningful configuration scopes declare their supported
|
||||
inspection operations and applicable providers. CommandKit validates declared
|
||||
wiring and coordinates explicit dependencies, reusing compatible provider results
|
||||
within an invocation. Scope inventory and help report the supported operations.
|
||||
wiring. This roadmap proposes coordinating explicit dependencies and reusing
|
||||
compatible provider results within an invocation; the coordination contract
|
||||
remains API design work. Scope inventory and help report the supported operations.
|
||||
An unsupported scope-operation selection receives a usage diagnostic before
|
||||
acquisition. `all` retains its all-scope meaning and checks coverage for the
|
||||
requested operation. [ADR 0009](../adr/0009-configuration-scopes.md) owns the model.
|
||||
@@ -259,8 +265,8 @@ When `--config` is omitted, CommandKit invokes the registered acquisition callba
|
||||
with that absence preserved. It exposes supplied discovery, environment, and
|
||||
default-only metadata in help. Sharing acquisition code with ordinary execution is
|
||||
recommended consumer practice; execution loading and filesystem discovery remain
|
||||
application choices. [ADR 0010](../adr/0010-configuration-selection.md) owns the
|
||||
parsing and propagation contract.
|
||||
application choices. The detailed selection and propagation rules in this section
|
||||
remain proposals for integration API design.
|
||||
|
||||
`--overlay` always selects a configuration overlay, never a PromptKit execution
|
||||
profile. Follow ConfigKit's naming and resolution semantics: omission, an empty
|
||||
@@ -358,7 +364,8 @@ implements acquisition, composition, defaults, decoding, and domain resolution
|
||||
according to its public result contract. The PromptKit adapter requests upstream
|
||||
configuration validation with all-definition coverage. Missing upstream support
|
||||
is a dependency of that capability, rather than the entire integration.
|
||||
[ADR 0008](../adr/0008-inspection-lifecycle.md) owns this boundary.
|
||||
The acquisition lifecycle and dependency coordination described here remain
|
||||
proposals for provider API design.
|
||||
|
||||
CommandKit's validation handler requests the declared configuration-validation
|
||||
operation and writes its result. Request preparation, execution, and operational
|
||||
@@ -670,8 +677,9 @@ CommandKit release version. `--format yaml` changes presentation of the selected
|
||||
identity. Version subjects are separate from configuration scopes. CommandKit
|
||||
uses build metadata with acquisition callbacks left uninvoked.
|
||||
|
||||
Future component identities can use registered version metadata.
|
||||
[ADR 0004](../adr/0004-standard-inspection-surface.md) records version selection.
|
||||
Registration of future component identities remains an API design proposal.
|
||||
[ADR 0004](../adr/0004-standard-inspection-surface.md) records version subjects;
|
||||
this roadmap retains the selected command syntax.
|
||||
|
||||
Applications supply build identity, with tagged Go build information usable when
|
||||
available. An unversioned development build reports `dev`; unknown revision or
|
||||
|
||||
Reference in New Issue
Block a user