# ReleaseKit adoption and deployment roadmap Status: Pending consumer adoption and live deployment. The v0.2.0 implementation and its remediation are complete. The [v0.2.0 release note](../releases/v0.2.0.md) summarizes the implemented capabilities. The [internal inventory](../internal/overview.md) records their owners and local verification. Completed plans and review findings remain in Git history. The [architecture policy](../policy/architecture.md) and accepted ADRs own the selected architectural constraints. ## Remaining work - Choose the broader consumer integration test plan and migration sequence for PromptKit, ConfigKit, Notarius, Narratio, and Scriptorium. Evaluate API clarity, product-specific checks, and the infrastructure removed from each repository. - Adopt the common publication, validation, runtime-version, build, and delivery conventions where they apply. Keep product identity, compatibility decisions, and substantive application checks with each consumer. - Provision delivery credentials and activate ReleaseKit and consumer Woodpecker workflows as part of deployment. The maintained consumer template selects tooling from the released application's module configuration. - Verify live Gitea delivery and Woodpecker execution. Current verification uses local Git and HTTP fixtures; live deployment remains unverified. - Measure realized reductions in consumer release infrastructure after migration. Audita's module-selected local and CI integration is committed at `17421bc`. ## Proposals and deferred work - Optional recognizable-credential checks remain an unevaluated suggestion from PromptKit's feature request. Evaluate their detection scope, synthetic-fixture handling, false-positive costs, and maintenance benefit before selecting shared support. The proposal establishes no mandatory credential gate. - ReleaseKit executable binary distribution remains deferred until deliverables are deliberately selected. Selecting binaries would require delivery declarations, target checks, automation responsibilities, and corresponding release policy and procedure updates. - Evaluate a maintained ReleaseKit CI image or specialized validation/build settings when a demonstrated consumer need justifies their maintenance cost under [ADR 0002](../adr/0002-routine-releases.md). ## Representative migration review Read-only reviews of the available PromptKit and Narratio checkouts were verified on 2026-10-06 at `4b8169d` and `8afb49c`; both worktrees were clean. These are migration assessments, not changes to either consumer. | Consumer | Retain in its profile and product checks | Adaptation and procedure changes | | --- | --- | --- | | PromptKit, source-only | Product identity; its `Summary`, `Compatibility`, `Upgrade`, and `Changes` release-note sections; checks that exercise the three maintained Go examples and their product outputs. No runtime `buildinfo` import or binary targets are needed. | Its current release scripts total 209 lines. The projected deletion is about 120–160 lines of shared publication and generic validation machinery; retain the note-content rule and product-example checks as a configured additional check plus a small wiring test. PromptKit already pushes `main` before publication and creates annotated tags. Its release policy and procedure still need to add the hosted note page, delivery credentials, module-selected CI invocation, and separate delivery status and recovery. | | Narratio, binary | Product/module identity, the `./cmd/narratio` main package, `narratio` executable name, Linux amd64, Linux arm64, and macOS arm64 targets, and the `narratio ` command. Keep the module-graph check (`go mod tidy -diff`) if it remains useful as a product-specific candidate check. | Its release, check, asset-builder, and helper scripts total 304 lines; two dedicated release test files total 741 lines. Projected deletions are about 220–280 shell lines and 450–650 repeated test lines, leaving a small consumer wiring test and any retained module/note checks. Replace the private linker-version variable with `buildinfo.Version()` while preserving the current command output. Its policy and procedure need to change lightweight tags to annotated tags, state that a successful tag push completes source publication, and move plugin-based page/assets delivery to the shared versioned CI command with content-aware retries and separately provisioned delivery credentials. | The deletion figures are estimates from the reviewed files, not measured migration results or a promise that each line will disappear. Product checks, version output, target choices, and at least one ReleaseKit integration check remain with each consumer. The existing cross-project estimate of 1,000–1,250 potentially removable lines remains directional until migrations are completed. The self-contained ReleaseKit fixtures exercise a meaningful source-only compatibility check through local Git publication, and a `buildinfo` binary consumer with selected targets through local HTTP delivery. These are separate publication and delivery operations.