From e32fdc22f4ab8680f88dfa58eadc96027e2904da Mon Sep 17 00:00:00 2001 From: Eric Rakestraw Date: Fri, 9 Oct 2026 04:49:55 +0000 Subject: [PATCH] Document the v0.13.0 release --- docs/releases/v0.13.0.md | 69 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 docs/releases/v0.13.0.md diff --git a/docs/releases/v0.13.0.md b/docs/releases/v0.13.0.md new file mode 100644 index 0000000..f388813 --- /dev/null +++ b/docs/releases/v0.13.0.md @@ -0,0 +1,69 @@ +# Promptkit v0.13.0 + +This release adds prompt requirement discovery and profile/prompt listing, +reduces avoidable configuration and execution allocations, and standardizes +maintainer publication through ReleaseKit. The minimum supported Go version +increases to 1.26.0. + +## Discover Requirements And Available Definitions + +- `Engine.InspectRequirements` reports recognizable input and caller-variable + dependencies for a selected prompt and supplied caller context before input + artifacts exist. It classifies dependencies as required, conditional, or + optional and reports structured limitations when discovery is incomplete. + Discovery coverage is not proof that requirements are satisfied or execution + will succeed. See the [requirement inspection guide](../consumers/pkg-promptkit.md#inspect-requirements-before-preparation) + and [GoDoc](../../requirements.go). +- `Engine.ListProfiles` returns effective profile IDs, and `Engine.ListPrompts` + returns exact ID/version pairs as `PromptIdentity` values. Lists come from the + engine's captured configuration, are lexically ordered and caller-owned, and + include consumer definitions and maintained profiles that remain effective. + Listing performs no provider or execution work. See the + [discovery guide](../consumers/pkg-promptkit.md#discover-available-profiles-and-prompts) + and [GoDoc](../../listing.go). + +## Efficiency And Tooling + +- Reduce response-sized copies in basic validation and rendered-message output, + and encode valid provider extra parameters only as part of the complete + request rather than serializing them twice. +- Use bounded initial file-size reservations without limiting accepted content, + releasing excess backing storage for small or empty completed artifacts. +- Reuse owned preparation values when creating prepared-execution snapshots, + while preserving independent inspection details and caller-owned data. +- Use lightweight captured profile identities and prompt metadata for inspection + instead of copying execution targets and definitions unnecessarily. +- Upgrade ConfigKit to v0.6.0 for more efficient loading, resolution, metadata, + and inspection processing. Configuration semantics remain unchanged; these + improvements primarily benefit construction and explicit operator inspection, + not upstream inference latency. +- Adopt module-selected ReleaseKit v0.3.0 for maintainer validation and tag + publication. The [release procedure](../release.md) owns the current commands + and recovery workflow; successful tag publication remains the completion + point, without waiting for CI. + +These changes preserve existing execution and ownership contracts. Benefits +depend on workload; this release introduces no fixed performance guarantee. + +## Compatibility And Upgrade + +Consumers upgrading from v0.12.0 need **Go 1.26.0 or newer**, rather than the +previous 1.25.5 minimum. Update application build environments and any CI images +still using Go 1.25 before upgrading: + +```sh +go get gitea.maximumdirect.net/eric/promptkit@v0.13.0 +``` + +No application-code or configuration migration is required from v0.12.0 beyond +the Go toolchain update. The new discovery methods are optional additions; +existing construction, inspection, preparation, and execution workflows remain +available. See [Go compatibility](../consumers/pkg-promptkit.md#go-compatibility) +for the distinction between the consumer minimum and maintainer toolchain. + +Maintainers should follow the current release runbook rather than the retired +`scripts/release-check.sh`. The publication entry point remains +`scripts/release.sh`; ReleaseKit now owns its shared validation and publication +mechanics. + +[COPYRIGHT](https://gitea.maximumdirect.net/eric/promptkit/src/tag/v0.13.0/COPYRIGHT) | [LICENSE](https://gitea.maximumdirect.net/eric/promptkit/src/tag/v0.13.0/LICENSE) | [ATTRIBUTION](https://gitea.maximumdirect.net/eric/promptkit/src/tag/v0.13.0/docs/oss/attribution.md)