Rename selected configuration profiles to overlays

This commit is contained in:
2026-09-23 18:27:29 +00:00
parent 66e080ed34
commit ae91f57bbe
32 changed files with 306 additions and 283 deletions

View File

@@ -15,7 +15,7 @@ The initial release deliberately excludes:
- automatic `conf.d` discovery;
- remote imports, arbitrary providers, and additional configuration formats;
- custom merge strategies, sequence merging, reset operators, and profile inheritance;
- custom merge strategies, sequence merging, reset operators, and overlay inheritance;
- parser-specific or custom structural-decoding extension APIs;
- generic dynamic-subtree conversion and module-registry APIs;
- automatic schema migrations;

View File

@@ -1,6 +1,6 @@
# Configuration Overlay Rename Implementation Plan
Status: not started. Execute Stage 1, then Stage 2.
Status: Stage 1 complete. Execute Stage 2.
## Scope and operating instructions
@@ -112,6 +112,15 @@ unchanged.
Stage 1 is complete only with a compiling, passing repository and matching
current documentation. It is not permission to ship before Stage 2's audit.
### Completion
Completed 2026-09-23. Renamed the selected configuration feature across the
facade, engine, maintained consumer, fixtures, contract, and current guidance;
application-owned `ModelProfile` and `model_profile` remain unchanged. `gofmt` and
`./scripts/check.sh` passed on Go 1.26.8/linux. Review confirmed the new
`overlays/<name>.yml` path, `overlay`/`overlay.*` public values, and no retained
legacy Go declarations or filesystem fallback.
## Stage 2 — Verify the breaking migration and finalize the handoff
### Outcome

View File

@@ -17,7 +17,7 @@ not authorize publication or changes to downstream repositories.
The baseline is ConfigKit at `aead20f`, following v0.3.1 and the release-workflow
simplification. Current behavior is owned by the
[selected-profile contract](../config.md#selected-profiles). This roadmap owns
[selected-overlay contract](../config.md#selected-overlays). This roadmap owns
the unimplemented rename; it is not a new current API reference.
## Target terminology and public surface