Document ConfigKit adoption

This commit is contained in:
2026-11-04 15:05:42 +00:00
parent 42176a7ac4
commit 5ccdcb91c9
10 changed files with 118 additions and 70 deletions

View File

@@ -363,14 +363,14 @@ sources:
- id: source-1
label: "application config"
path: /etc/example/config.yml
layer: base
layer: main
kind: file
underlay_index: 0
imported_from: null
destination: /server
placement: mapping
destination_unresolved: false
version_check:
destination_is_fallback: false
version_evidence:
path: /version
version:
present: true
@@ -381,22 +381,28 @@ sources:
line: 2
column: 1
redacted: false
empty_import_selections: []
```
Each source includes `id`, `label`, `path`, `layer`, `kind`, `underlay_index`,
and `imported_from`, plus the native destination pointer, placement, unresolved
destination flag, and nullable `version_check`. Placement is `mapping` or
`sequence_item`. The import location is null when absent; otherwise it has
and `imported_from`, plus the native destination pointer, placement,
`destination_is_fallback`, nullable `version_evidence`, and
`empty_import_selections`. Placement is `mapping` or `sequence_item`. The
import location is null when absent; otherwise it has
`source_id`, `line`, and `column`. Version evidence preserves `path`, `present`,
`null`, `text`, optional source `location`, and `redacted` as returned by
ConfigKit. Owning values and source order are preserved, including empty fields,
zero coordinates, false and null observations, and synthetic sources without
paths. An absent version check is null. An empty inventory is `sources: []`.
paths. Absent version evidence is null. Each empty-import record has a source-local
`path`, a `location` mapping (`source_id`, `line`, `column`), and a `selector`;
records preserve their returned order. No records are `empty_import_selections: []`.
An empty inventory is `sources: []`.
Text output begins with the scope heading and prints the same source fields,
quoting labels and paths. These fields project the selected ConfigKit source
records; CommandKit does not reload files or rerun version checks. See the
[ConfigKit v0.8.0 inspection API](https://gitea.maximumdirect.net/eric/ConfigKit/src/commit/137769f3f18a370c68444242fb5d88e620e307e5/inspection.go)
for native evidence definitions.
[ConfigKit v1.1.0 source records](https://forge.maximumdirect.net/base-layer/configkit/src/commit/191015e289d7f2b91abb9fdd9c4f2f5cf75b4de9/records.go)
for native evidence definitions. Ckprompt v0.2.0 uses
[ConfigKit v0.8.0](https://gitea.maximumdirect.net/eric/ConfigKit/src/commit/137769f3f18a370c68444242fb5d88e620e307e5/inspection.go).
### Explain a configuration path
@@ -427,7 +433,7 @@ effective:
redacted: false
yaml: "localhost:8080\n"
origin:
layer: base
layer: main
locations:
- source_id: source-1
line: 4