Reconcile module docs and release materials
This commit is contained in:
@@ -1,14 +1,12 @@
|
||||
# Developing CommandKit
|
||||
|
||||
CommandKit currently contains adopted repository policies, accepted architectural
|
||||
decisions, identity and outcome primitives, typed command
|
||||
declarations, an instance-owned registry, a Cobra-backed routing and parsing
|
||||
adapter, public `App.Execute` coordination, and generated help/version commands.
|
||||
Configuration suite registration, scope discovery, ConfigKit validation and
|
||||
reports, PromptKit engine configuration inspection, and optional PromptKit
|
||||
prompt/profile inspection commands are implemented. The maintained
|
||||
[consumer guide](consumers/guide.md) links to maintained examples. The
|
||||
[README](../README.md) provides project orientation; the
|
||||
CommandKit is distributed as a core Go module and two optional integration
|
||||
modules. Core owns captured declarations, typed input preparation, installation,
|
||||
dispatch, outcomes, help, and version. `integrations/ckconfig` owns ConfigKit
|
||||
scope adaptation and reports; `integrations/ckprompt` owns PromptKit engine and
|
||||
definition inspection adapters. The maintained
|
||||
[consumer guide](consumers/guide.md) links to the three maintained consumers.
|
||||
The [README](../README.md) provides project orientation; the
|
||||
[documentation policy](policy/documentation.md#canonical-ownership) assigns
|
||||
canonical documentation owners.
|
||||
|
||||
@@ -48,11 +46,11 @@ canonical documentation owners.
|
||||
| Task | Read |
|
||||
| --- | --- |
|
||||
| Implemented CLI behavior | [CLI reference](cli.md) |
|
||||
| Public API usage and standard-suite wiring | [Consumer guide](consumers/guide.md), [configuration declarations](../config.go), [PromptKit declarations](../promptkit.go), and applicable ADRs |
|
||||
| Public API usage and standard-suite wiring | [Consumer guide](consumers/guide.md), [ckconfig package](../integrations/ckconfig/doc.go), [ckprompt package](../integrations/ckprompt/doc.go), and applicable ADRs |
|
||||
| Dispatcher, registration, or typed inputs | [Command declarations](../command.go), [bindings](../binding.go), [invocation](../execute.go), and [ADR 0001](adr/0001-command-dispatch-and-inputs.md), refined by [ADR 0011](adr/0011-captured-declarations-and-installation.md) |
|
||||
| Backend integration | [Internal overview](internal/overview.md), [adapter implementation](../internal/cobra/parse.go), and [ADR 0002](adr/0002-cobra-backend.md) |
|
||||
| Public facade or adapter boundaries | [Internal overview](internal/overview.md), [ADR 0003](adr/0003-public-facade.md) as scoped by [ADR 0010](adr/0010-optional-integration-modules.md), and the architecture policy |
|
||||
| Optional integration module transition and finalized API | [Module roadmap](roadmap/modules.md), [registration API target](roadmap/registration-api.md), and [ADR 0011](adr/0011-captured-declarations-and-installation.md) |
|
||||
| Module ownership and public contracts | [Consumer guide](consumers/guide.md), [internal overview](internal/overview.md), [core GoDoc](../doc.go), [ckconfig GoDoc](../integrations/ckconfig/doc.go), [ckprompt GoDoc](../integrations/ckprompt/doc.go), and applicable ADRs |
|
||||
| Deferred capabilities and proposals | [Deferred work](roadmap/deferred.md) |
|
||||
| Completed planning and implementation history | [Retired records in Git history](https://gitea.maximumdirect.net/eric/CommandKit/src/commit/6bc37e7ba64ca0920b4d0cc77039a18d4006b24e/docs/roadmap) |
|
||||
| Release tooling | [Maintainer release procedure](release.md) |
|
||||
@@ -89,8 +87,25 @@ Sibling-checkout references in retired planning records are historical review
|
||||
evidence, not build dependencies. Implemented contracts belong in CommandKit
|
||||
under their canonical owners.
|
||||
|
||||
Run `go test ./...` from the repository root to compile the module and run its
|
||||
deterministic tests. Format changed Go files with `gofmt`. The
|
||||
The root module does not traverse nested modules. During development, use a
|
||||
local workspace for all three modules; it is ignored and must not be committed.
|
||||
If a local `go.work` already exists, preserve it and add these module directories:
|
||||
|
||||
```sh
|
||||
if [ -f go.work ]; then
|
||||
go work use . ./integrations/ckconfig ./integrations/ckprompt
|
||||
else
|
||||
go work init . ./integrations/ckconfig ./integrations/ckprompt
|
||||
fi
|
||||
go test ./...
|
||||
(cd integrations/ckconfig && go test ./...)
|
||||
(cd integrations/ckprompt && go test ./...)
|
||||
```
|
||||
|
||||
The workspace checks package behavior. Workspace-off checks with each module's
|
||||
own dependency graph are separate evidence; follow the roadmap's disposable
|
||||
module-file procedure when future CommandKit versions are not published.
|
||||
Format changed Go files with `gofmt`. The
|
||||
[maintainer release procedure](release.md) owns candidate preparation and
|
||||
publication commands.
|
||||
|
||||
@@ -112,15 +127,15 @@ or publishing.
|
||||
|
||||
## Current public examples
|
||||
|
||||
The maintained consumers under `examples/` compile with the module suite and
|
||||
run without external services:
|
||||
The maintained consumers compile with their owning module suites and run without
|
||||
external services:
|
||||
|
||||
```sh
|
||||
go run ./examples/simple config show
|
||||
go run ./examples/simple greet --count=0 --tag=first --tag second
|
||||
go run ./examples/composed config validate --scope all --campaign spring
|
||||
go run ./examples/composed promptkit show prompt briefing --campaign spring --format yaml
|
||||
go run ./examples/composed session restore session-42 --campaign spring
|
||||
go run ./examples/core greet --count=0 --tag=first --tag second
|
||||
(cd integrations/ckconfig/examples/simple && go run . config show)
|
||||
(cd integrations/ckprompt/examples/composed && go run . config validate --scope all --campaign spring)
|
||||
(cd integrations/ckprompt/examples/composed && go run . promptkit show prompt briefing --campaign spring --format yaml)
|
||||
(cd integrations/ckprompt/examples/composed && go run . session restore session-42 --campaign spring)
|
||||
```
|
||||
|
||||
The [consumer guide](consumers/guide.md) explains how their public API usage
|
||||
|
||||
Reference in New Issue
Block a user