feat(release): add manually triggered releases - #67
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replaces tag-push releases with a manually dispatched workflow that reads the release version from
Cargo.toml, builds all release outputs, creates the version tag, and publishes the GitHub release and container manifests. Release notes are generated by the newly built Kit CLI using therelease-notesskill and thez-ai/glm-5.3OpenRouter model.Motivation
Release versions should have one source of truth and publication should be an explicit GitHub action rather than a side effect of pushing a tag.
Impact
Maintainers now start releases from Actions > release after bumping the Cargo version. Duplicate versions and tags stop before builds begin, release runs are serialized, and the release-note step requires the
OPENROUTER_API_KEYrepository secret.Technical details
Release-note isolation
The model runs in a read-only job without persisted checkout credentials. It receives a read-only GitHub token so the skill can resolve contributor handles, while release publication remains in a separate write-enabled job.
Safe publication
The workflow waits for binary, app, and container builds before generating notes and publishing. Reruns only replace assets when an existing release targets the same commit.
Versioning boundary
Repository guidance now requires version bumps for changes included in shipped artifacts, including embedded user documentation, while excluding release automation and other repository-only changes.