• eric released this 2026-11-03 02:59:27 +00:00 | 0 commits to main since this release

    Promptkit v0.17.0

    This release adopts the vanity module path go.maximumdirect.net/promptkit
    and ConfigKit v1.0.0, standardizes configuration resources as identified lists,
    and removes descriptive prompt-version metadata. These are intentional breaking
    changes before v1. The minimum supported Go version increases from 1.26.0 to
    1.27.0 for the ConfigKit v1 migration.

    Breaking Changes And Upgrade

    Consumers upgrading from v0.16.0 should follow the
    configuration and API migration guide:

    • Change Promptkit imports from gitea.maximumdirect.net/eric/promptkit to
      go.maximumdirect.net/promptkit. Update packages that exchange Promptkit
      types together; old-path and vanity-path types are distinct.
    • Change ConfigKit imports to go.maximumdirect.net/configkit at v1.0.0 and
      adopt its renamed public inspection types and fields where used.
    • Convert root and collection prompts, profiles, and backends from keyed
      mappings to lists whose records contain an explicit id. Collections remain
      keyed by namespace. Sibling inheritance now uses extends: {id: parent};
      later same-ID records replace lower records in full.
    • Change ProfileSource and BackendSource calls to pass slices of
      ProfileConfig and BackendConfig, setting each record's ID.
    • Change source-root configkit: controls to config:. Imports are optional
      unless marked required: true. Optional Promptkit specification headers now
      use version: 2 or version: "2"; headerless sources remain valid.
    • Remove descriptive prompt version values and code consuming PromptVersion,
      PromptIdentity.Version, or corresponding prompt_version output members.
      Collection release_version labels remain available. Prompt hashes may change
      across this migration.

    After adapting Go imports, configuration, and API calls, use Go 1.27.0 or newer:

    go get go.maximumdirect.net/promptkit@v0.17.0
    go mod tidy
    

    Earlier tags retain their original module declarations. No permanent local
    replacement is needed for this cutover. See the
    framework format reference for current configuration semantics
    and the maintained preparation example
    for explicit composition, source-relative imports, and scoped discovery.

    Configuration Inspection And Execution

    Configuration inspection and diffs expose ConfigKit's composed values and
    provenance, including list-index paths. Promptkit applies domain normalization
    and execution defaults to owned interpretations without replacing the source
    origins needed for relative resources. Profile inspection and preparation expose
    their interpreted or effective settings. See the
    migration guide
    for the distinction and inspection-path updates.

    Maintainer Tooling

    Release tooling now uses the module-selected ReleaseKit v0.8.0 through go tool,
    with page-only Gitea delivery and saved-publication-attempt recovery. The
    release procedure describes publication and recovery.

    The three maintained offline examples now have ordinary Go workflow tests,
    included in the standard suite. Their separate Python runner and custom release
    hook have been removed; Python is no longer a normal release prerequisite.
    The optional release-wiring diagnostic remains Python. See the
    development guide.

    COPYRIGHT | LICENSE | ATTRIBUTION

    Downloads