• # Promptkit v0.13.0

    eric released this 2026-10-09 04:51:36 +00:00 | 92 commits to main since this release

    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
      and GoDoc.
    • 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
      and GoDoc.

    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 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:

    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
    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 | LICENSE | ATTRIBUTION

    Downloads