2.7 KiB
CommandKit backend planning record
Status: initial Cobra/pflag backend implemented.
Original planning: 2026-10-06. Reconciled: 2026-10-07.
Authority and current owners
ADR 0002 records the backend selection and rationale; ADR 0003 records its isolation behind the public facade. The architecture policy owns boundaries.
Cobra/pflag dependencies, the internal adapter, routing/parsing, generated help, and invocation integration are implemented. Selected dependency versions belong in go.mod; license and notice entries belong in attribution. The former dependency-selection and adapter-construction tasks are complete.
Current mechanics belong in the internal overview, with adapter contracts and implementation in internal/cobra. The root owns registration, typed input preparation, invocation coordination, standard handlers, and reports. The CLI reference owns observable syntax and presentation.
Completed adaptation and evidence
The initial implementation translated registered metadata through a neutral bridge, rebuilt backend state for each invocation, and adapted backend routing, local flags, operands, presence, help, and syntax failures to selected semantics. The completed plan records these stages and their checks.
The earlier discussion of rejecting repeated singletons was superseded by the accepted last-occurrence rule in ADR 0006. Detailed conversion, repetition, and terminator behavior belongs in registered command syntax.
The delivered integrations expose native ConfigKit/PromptKit reports through the root, as recorded in the feature target. Backend selection creates no parallel configuration engine or public backend-specific provider contract. Completed parsing/help, provider integration, attribution, and evidence tasks have been retired from this roadmap.
Future maintenance and adoption
A later backend replacement remains a maintenance possibility governed by the accepted public/CLI boundary and release policy. A second backend or generalized selection framework is outside the initial delivery.
Application migrations and updates to their documentation/subprocess consumers remain separate work. They can use the consumer guide and maintained examples; this record does not claim migration completion. Other deferred capabilities remain in the feature roadmap.