67 lines
3.3 KiB
Markdown
67 lines
3.3 KiB
Markdown
# Deferred work
|
|
|
|
Status: retained future work and unselected proposals; no implementation schedule.
|
|
|
|
## Purpose and authority
|
|
|
|
Completed initial delivery, performance, ReleaseKit upgrade, and remediation
|
|
records have been retired. This document preserves remaining deferred
|
|
capabilities and unselected ideas under the
|
|
[release policy](../policy/release.md#release-documentation-and-preparation).
|
|
The original records remain available in
|
|
[Git history](https://gitea.maximumdirect.net/eric/CommandKit/src/commit/6bc37e7ba64ca0920b4d0cc77039a18d4006b24e/docs/roadmap).
|
|
|
|
Accepted [ADRs](../adr/) and the [architecture policy](../policy/architecture.md)
|
|
govern any future implementation. The [CLI reference](../cli.md), public GoDoc,
|
|
and [consumer guide](../consumers/guide.md) own implemented behavior. Retaining
|
|
an idea here does not select its syntax, API, priority, or delivery date.
|
|
|
|
## Deferred capability targets
|
|
|
|
### Comparison extensions
|
|
|
|
Independent per-side domain selectors and an optional assertion mode remain
|
|
unselected extensions to the delivered ConfigKit comparison. Consider them only
|
|
for a concrete consumer need and a deliberate API/behavior decision under the
|
|
relevant ADRs.
|
|
|
|
## Other deferred proposals
|
|
|
|
These capabilities remain outside the delivered scope and require a concrete
|
|
operator or consumer need and an appropriate ownership/behavior decision:
|
|
|
|
- JSON reports, shell completion, and output-file management or reloadable export.
|
|
- Configuration mutation, generic value assignment, and exhaustive field-origin
|
|
inventories.
|
|
- Credential diagnostics beyond PromptKit's native smoke checks and additional
|
|
live provider probes.
|
|
- Additional component identity registration and domain artifact catalogs.
|
|
- Additional library families, including possible FeedKit integration; families
|
|
can define suitable verbs without requiring comparison or configuration scopes.
|
|
- Backend selection or replacement, a plugin framework, general dependency
|
|
injection, and concurrent-dispatch guarantees.
|
|
|
|
Execution, rendering, serving, and session operations remain application-owned.
|
|
Shared vocabulary is guidance under [ADR 0006](../adr/0006-command-grammar.md).
|
|
Backend replacement remains possible behind the accepted facade, subject to the
|
|
published API/CLI contracts and deliberate compatibility decisions.
|
|
|
|
## Possible further efficiency work
|
|
|
|
Selected-scope memoization and selector-membership indexes were deferred pending
|
|
measurements that justify their bookkeeping. Mutable backend reuse across
|
|
invocations, segmented aggregate YAML delivery, provider caching, consumer-loader
|
|
redesign, and a replacement backend were outside the completed performance
|
|
target. Reconsider them only with concrete motivation and review of ownership,
|
|
invocation state, native reports, and the affected contracts. Retained measurement
|
|
records are historical evidence, not performance guarantees or release gates.
|
|
|
|
## Consumer adoption
|
|
|
|
Consumer migrations remain separate from library delivery. Applications can
|
|
replace duplicated standard handlers and routing, then update their CLI docs
|
|
and subprocess consumers for intentional changes while retaining domain commands.
|
|
No migration order or claim about individual applications' adoption is recorded
|
|
here; the [consumer guide](../consumers/guide.md) and maintained examples provide
|
|
integration guidance.
|