Adopt PromptKit v0.21.0 and prepare integration release notes

This commit is contained in:
2026-11-10 15:30:59 +00:00
parent 07a329033c
commit f4d7a27d7a
8 changed files with 79 additions and 34 deletions

View File

@@ -665,7 +665,7 @@ request overrides. Backend reports describe configured backend fields. An
`api_key_env` value names an environment variable; it is not a credential
value or a claim that one is available. Neither report resolves references or
performs a network probe. See the [PromptKit resource inspection
contracts](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/resource_inspection.go).
contracts](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/resource_inspection.go).
Omitting the ID is a usage error. Lookup failures and cancellation follow the
shared operational failure rules.
@@ -720,7 +720,7 @@ text output use YAML. Preparation can read resources and include rendered
application content in the report. It does not guarantee that a later model
call will succeed. Application loaders and callbacks may have their own
effects. The [PromptKit Prepare
API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/engine.go)
API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/engine.go)
owns the prepared value and upstream preparation behavior.
## PromptKit requirements
@@ -754,8 +754,8 @@ identity rather than changing the discovered requirements. An enabled profile
namespace qualifies an explicitly supplied short profile ID; it does not
rewrite the prompt's stored default reference. Requirements inspection does
not require the selected profile to be execution-ready. See the [PromptKit
v0.20.0 consumer
guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/docs/consumers/pkg-promptkit.md)
v0.21.0 consumer
guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/docs/consumers/pkg-promptkit.md)
for configuration, selection, and requirements behavior. For built-in flags
other than `--llm-var`, repeating a flag uses its last value.
Application-defined flags follow their own repetition rules.
@@ -865,7 +865,7 @@ applicable. It does not make a model call or retain a prepared execution
snapshot. A successful report describes this preparation invocation; it does
not certify provider acceptance or guarantee later execution. See PromptKit's
[`Engine.ValidateRequest`
API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/engine.go).
API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/engine.go).
Request construction, engine loading, and validation failures use status `1`,
retaining available diagnostics. Malformed syntax, missing arguments, and
@@ -929,8 +929,8 @@ The entries are:
A catalog result is an inventory, not a readiness check or execution result.
The owning provider controls membership and order. Namespace filters are
passed to PromptKit without local membership interpretation. See the
[PromptKit v0.20.0 consumer
guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/docs/consumers/pkg-promptkit.md)
[PromptKit v0.21.0 consumer
guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/docs/consumers/pkg-promptkit.md)
for resource and selection definitions.
## PromptKit smoke testing
@@ -1097,9 +1097,9 @@ separately from delivery failures through the [reporting
API](consumers/guide.md#invocation-reporting).
Native configuration, selection, and diagnostic meanings remain owned by
PromptKit. See the [v0.20.0 consumer guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/docs/consumers/pkg-promptkit.md),
[smoke API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/smoke_diagnostics.go),
and [engine API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/engine.go).
PromptKit. See the [v0.21.0 consumer guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/docs/consumers/pkg-promptkit.md),
[smoke API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/smoke_diagnostics.go),
and [engine API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/engine.go).
## Outcome status

View File

@@ -14,14 +14,14 @@ applications.
| `go.maximumdirect.net/ckconfig` | You want operators to view, validate, explain, and compare ConfigKit configuration. |
| `go.maximumdirect.net/ckprompt` | You want operators to inspect PromptKit resources, check and preview requests, or run smoke tests. |
Current integration source selects ConfigKit v1.2.0.
Current integration source selects ConfigKit v1.2.0 and PromptKit v0.21.0.
| Selection | Core | ckconfig | ckprompt | Upstream libraries and status |
| --- | --- | --- | --- | --- |
| Published core | v0.6.0 | — | — | Usable independently. |
| ConfigKit integration | v0.6.0 | v0.6.0 | — | ConfigKit v1.1.0. |
| PromptKit integration | v0.6.0 | v0.6.0 | v0.6.0 | ConfigKit v1.1.0 and PromptKit v0.20.0. |
| Current integration source | v0.6.0 | Local | Local | ConfigKit v1.2.0 and PromptKit v0.20.0. Coordinated releases are pending. |
| Current integration source | v0.6.0 | Local | Local | ConfigKit v1.2.0 and PromptKit v0.21.0. Coordinated releases are pending. |
| Earlier matched integration set | v0.3.0 | v0.2.0 | v0.2.0 | ConfigKit v0.8.0 and PromptKit v0.16.0, using their earlier import paths. |
Install the published core with:
@@ -43,8 +43,11 @@ loaders should use keyed struct literals when constructing them. ConfigKit's
release notes describe
main-relative imports and overlay contexts. [ConfigKit v1.2.0 upgrade guidance](https://forge.maximumdirect.net/base-layer/configkit/src/tag/v1.2.0/docs/releases/v1.2.0.md#upgrade-notes).
The next PromptKit adoption and coordinated integration releases are tracked
in the future work record. [Pending integration work](../roadmap/future.md#pending-integration-work).
PromptKit v0.21.0 exposes main-relative companion imports through its existing
configuration-source API. Applications select those inputs when constructing
the engine supplied to ckprompt's loader callback. [PromptKit companion import guidance](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/docs/consumers/pkg-promptkit.md#load-companion-prompts-relative-to-the-main-configuration).
Coordinated integration releases are tracked in the future work record. [Pending integration work](../roadmap/future.md#pending-integration-work).
Importing a module does not install its commands. Pass commands to
`commandkit.New` or `App.Register` explicitly. ckprompt depends on ckconfig's
@@ -469,7 +472,7 @@ These are independent defaults for unqualified caller-supplied prompt, profile,
and backend names; qualified IDs pass through. Stored references and configuration
inspection are unchanged, while namespace and collection inventories remain global.
Catalog `--namespace` filters are separate from these defaults. See the released
[namespace API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/namespaces.go).
[namespace API](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/namespaces.go).
## Outcomes and ownership
@@ -484,7 +487,7 @@ Go declarations and GoDoc own exact exported contracts. ConfigKit owns
configuration decoding, validation, and provenance. PromptKit owns prompt
formats, profile resolution, and inspection details. See the
[ConfigKit v1.2.0 source records](https://forge.maximumdirect.net/base-layer/configkit/src/commit/c1c7e87f2cdf77a0cbf3327831ac05578e756b9e/records.go),
[PromptKit engine methods](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/engine.go),
[configuration inspection](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/configuration_inspection.go),
[smoke diagnostics](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/smoke_diagnostics.go),
and [PromptKit v0.20.0 consumer guidance](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/docs/consumers/pkg-promptkit.md).
[PromptKit engine methods](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/engine.go),
[configuration inspection](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/configuration_inspection.go),
[smoke diagnostics](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/smoke_diagnostics.go),
and [PromptKit v0.21.0 consumer guidance](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/docs/consumers/pkg-promptkit.md).

View File

@@ -1,6 +1,6 @@
# Future work
Status: pending PromptKit adoption and integration releases, optional shell
Status: pending integration releases, optional shell
validation, and future capability proposals.
No delivery dates are selected here.
@@ -33,17 +33,16 @@ an idea here does not select its syntax, API, priority, or delivery date.
## Pending integration work
ConfigKit v1.2.0 is adopted in both integration source modules. Both independent
integration suites pass against the published dependencies, and the aligned
workspace suites cover the current integration sources together. PromptKit is
currently selected at v0.20.0.
ConfigKit v1.2.0 is adopted in both integration source modules, and ckprompt
selects PromptKit v0.21.0. Release notes for ckconfig v0.7.0 and ckprompt v0.7.0
are prepared in their respective release directories.
Review and adopt the upcoming PromptKit minor release incorporating ConfigKit
v1.2.0. Then prepare the coordinated ckconfig v0.7.0 and ckprompt v0.7.0 release
notes and compatibility guidance with the final dependency selections. Publish
ckconfig first, update ckprompt to that published ckconfig version, validate its
independent candidate, and publish ckprompt. The release procedure owns version
availability checks, final validation, and publication. [Release procedure](../release.md#scope-and-release-order).
Publish ckconfig v0.7.0 first. Then update ckprompt's declared ckconfig dependency
from v0.6.0 to the published v0.7.0, refresh its checksums, and validate its
independent candidate before publishing ckprompt v0.7.0. Update the consumer
guide's published-version table as each release becomes available. The release
procedure owns version availability checks, final validation, and publication.
[Release procedure](../release.md#scope-and-release-order).
## Optional verification

View File

@@ -0,0 +1,20 @@
# CommandKit ckconfig v0.7.0
CommandKit ckconfig v0.7.0 adopts ConfigKit v1.2.0. Application-owned loaders
can select main-relative companion imports and overlay contexts through
ConfigKit's public APIs, then expose the resulting configuration through
ckconfig's existing scope adapter. [ConfigKit v1.2.0 release notes](https://forge.maximumdirect.net/base-layer/configkit/src/tag/v1.2.0/docs/releases/v1.2.0.md)
## Compatibility and upgrade
Select `go.maximumdirect.net/ckconfig v0.7.0` with CommandKit core v0.6.0.
The consumer minimum is Go 1.27.0.
Application loaders constructing ConfigKit `Input` or `LayeredOptions` must use
field-named struct literals to accommodate the fields added upstream. See the
[consumer guide](../../../../docs/consumers/guide.md#module-selection) for module
selection and loader guidance.
[COPYRIGHT](https://forge.maximumdirect.net/base-layer/commandkit/src/tag/integrations/ckconfig/v0.7.0/integrations/ckconfig/COPYRIGHT) |
[LICENSE](https://forge.maximumdirect.net/base-layer/commandkit/src/tag/integrations/ckconfig/v0.7.0/integrations/ckconfig/LICENSE) |
[ATTRIBUTION](https://forge.maximumdirect.net/base-layer/commandkit/src/tag/integrations/ckconfig/v0.7.0/integrations/ckconfig/docs/oss/attribution.md)

View File

@@ -2,16 +2,16 @@
## PromptKit
Selected module: `go.maximumdirect.net/promptkit` at `v0.20.0`.
Selected module: `go.maximumdirect.net/promptkit` at `v0.21.0`.
Copyright (C) 2026 Eric Rakestraw
SPDX-License-Identifier: LGPL-3.0-or-later
License and notices: [LGPL v3.0](../../LICENSE) |
[LICENSE](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/LICENSE).
[LICENSE](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09/LICENSE).
[Source](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf).
[Source](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/171fb11f4e967a1da3af57843c6467954b14ba09).
## ConfigKit

View File

@@ -0,0 +1,21 @@
# CommandKit ckprompt v0.7.0
CommandKit ckprompt v0.7.0 adopts PromptKit v0.21.0 and ConfigKit v1.2.0.
Application-owned engine loaders can select main-relative companion imports
through PromptKit's existing configuration-source API. ckprompt exposes the
resulting engine through its inspection, request, and smoke-testing adapters.
[PromptKit v0.21.0 release notes](https://forge.maximumdirect.net/base-layer/promptkit/src/tag/v0.21.0/docs/releases/v0.21.0.md)
## Compatibility and upgrade
Pair `go.maximumdirect.net/ckprompt v0.7.0` with ckconfig v0.7.0 and CommandKit
core v0.6.0. The consumer minimum is Go 1.27.0.
Application loaders constructing ConfigKit `Input` or `LayeredOptions` must use
field-named struct literals to accommodate the fields added upstream. See the
[consumer guide](../../../../docs/consumers/guide.md#module-selection) for module
selection and loader guidance.
[COPYRIGHT](https://forge.maximumdirect.net/base-layer/commandkit/src/tag/integrations/ckprompt/v0.7.0/integrations/ckprompt/COPYRIGHT) |
[LICENSE](https://forge.maximumdirect.net/base-layer/commandkit/src/tag/integrations/ckprompt/v0.7.0/integrations/ckprompt/LICENSE) |
[ATTRIBUTION](https://forge.maximumdirect.net/base-layer/commandkit/src/tag/integrations/ckprompt/v0.7.0/integrations/ckprompt/docs/oss/attribution.md)

View File

@@ -6,7 +6,7 @@ require (
go.maximumdirect.net/ckconfig v0.6.0
go.maximumdirect.net/commandkit v0.6.0
go.maximumdirect.net/configkit v1.2.0
go.maximumdirect.net/promptkit v0.20.0
go.maximumdirect.net/promptkit v0.21.0
go.yaml.in/yaml/v4 v4.0.0-rc.6
)

View File

@@ -28,6 +28,8 @@ go.maximumdirect.net/configkit v1.2.0 h1:c4tDJ6Xeh/Jg90UZplLxsnf500lvrZBVj0E3i1y
go.maximumdirect.net/configkit v1.2.0/go.mod h1:s1zLJ9GGB/1Q4a+aOHMLISonJxWFgNWpA6SpPlOafeA=
go.maximumdirect.net/promptkit v0.20.0 h1:ZpwbjiCZWXdnnZ26RuWKoOco0jFnaAX8m2tQAX7ZlnM=
go.maximumdirect.net/promptkit v0.20.0/go.mod h1:kCoyvI0xSax9K9aRPCEkpkyAP5YLs157oBLFLdzgRbM=
go.maximumdirect.net/promptkit v0.21.0 h1:Ws4y28lnW+lIXAq4tGhXVFnQV/6AqkDChhg8knIZFrU=
go.maximumdirect.net/promptkit v0.21.0/go.mod h1:pi9acdCi80HWyzY+XYwRvMEoCiTcDWKyeBh3mzHdIFo=
go.yaml.in/yaml/v4 v4.0.0-rc.6 h1:1h7H1ohdUh93/FyE4YaDa1Zh64K6VVbjF4K6WUxMtH4=
go.yaml.in/yaml/v4 v4.0.0-rc.6/go.mod h1:aZqd9kCMsGL7AuUv/m/PvWLdg5sjJsZ4oHDEnfPPfY0=
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=