Add ConfigKit validation and diagnostics

This commit is contained in:
2026-10-07 13:50:48 +00:00
parent cc9b0eddab
commit 3945f1c33a
9 changed files with 490 additions and 14 deletions

View File

@@ -1,6 +1,6 @@
# Initial CommandKit implementation plan
Status: implementation underway; Stages 1-7 complete and Stages 8-14 pending.
Status: implementation underway; Stages 1-8 complete and Stages 9-14 pending.
Date: 2026-10-07.
@@ -551,7 +551,7 @@ sequenced in Stages 8-11.
## Stage 8: integrate ConfigKit and implement validation
**Status:** pending. **Prerequisite:** Stage 7.
**Status:** complete. **Prerequisite:** Stage 7.
```go
func NewConfigKitScope[C, T any](name, summary string,
@@ -594,6 +594,16 @@ empty overlay callback input; warnings permit validation success; structured loa
errors retain public identity and render once; all validates in order and stops
on failure. Report/diagnostic short writes retain their writer errors.
**Completion evidence:** added the ConfigKit scope adapter and grouped diagnostic
writer. The adapter exposes native effective/source/explanation facets, captures
success and `LoadError` diagnostics, and preserves loader errors. `config validate`
now installs for declared scopes, preflights all requested capabilities, acquires
in stable order, and emits success records incrementally in text or YAML. Checks
cover ConfigKit defaults, overlay, recorded resolution, absent/empty selections,
warning success, load-error identity and single presentation, aggregate stop
behavior, and report/diagnostic short writes. `go test ./...` passes; README,
development orientation, and CLI reference describe the implemented boundary.
## Stage 9: implement native effective YAML display
**Status:** pending. **Prerequisite:** Stage 8.