ワンクリックで
release
Release a single metriken workspace crate — bump its version, update the changelog, tag, and (gated) publish to crates.io
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Release a single metriken workspace crate — bump its version, update the changelog, tag, and (gated) publish to crates.io
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when starting or picking up a non-trivial effort (feature, investigation, perf probe, refactor, migration) in a shared repo where teammates or future agents must coordinate or hand off; when a repo has no durable in-tree record of decisions and dead-ends; when you're about to drop a well-measured negative result; or when bootstrapping a journal from a repo's commit history.
Create a feature branch, commit changes, push, and open a PR against iopsystems/metriken
| name | release |
| description | Release a single metriken workspace crate — bump its version, update the changelog, tag, and (gated) publish to crates.io |
metriken is a multi-crate workspace with independently versioned and
tagged crates (metriken, metriken-core, metriken-derive,
metriken-exposition, metriken-query). There is no release automation
(CI is build/test only) — releases are manual, per-crate. Tags follow
<crate>-v<version> (e.g. metriken-query-v0.11.1).
This skill releases one crate. To release several, run it once per crate, lowest in the dependency graph first (see "Inter-crate deps" below).
/release <crate> <level> — e.g. /release metriken-query patch.
<crate>: one of the workspace members.<level>: patch | minor | major, or an explicit version X.Y.Z.If either is missing, ask.
Prerequisites:
main, clean working tree, up to date with origin/main.git fetch origin
git branch --show-current # must be main
git status --porcelain # must be empty
git rev-parse HEAD; git rev-parse origin/main # must match
Checks for the crate being released:
cargo clippy -p <crate> --all-features -- -D warnings
cargo test -p <crate> --all-features
cargo fmt -p <crate> -- --check
(Whole-workspace --all-features clippy trips a pre-existing
histogram::percentiles deprecation in metriken-exposition; scope to
the crate.)
Determine the new version (cargo-release computes it; strips any pre-release suffix):
cargo release version <level> -p <crate> --dry-run
Inter-crate deps. If the crate is depended on by others in the
workspace (e.g. metriken-exposition ← metriken-query), releasing it
may require bumping the dependents' required version. Check:
grep -rn "<crate>" */Cargo.toml
Release dependencies before dependents.
Create a release branch (metriken uses PRs; don't push to main directly):
git checkout -b release/<crate>-v<new-version>
Bump the version:
cargo release version <level> -p <crate> --execute --no-confirm
Sync Cargo.lock:
cargo update -p <crate> --precise <new-version>
Update CHANGELOG.md: move the crate's ### <crate> <new-version>
block out of ## Unreleased into a dated released section, and leave a
fresh empty ## Unreleased for that crate. Ask the user to review the
changelog before continuing.
Commit + push + PR:
git add -A
git commit -m "release: <crate> v<new-version>"
git push -u origin release/<crate>-v<new-version>
gh pr create --repo iopsystems/metriken --head release/<crate>-v<new-version> \
--title "release: <crate> v<new-version>" --body "…"
Include the Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> trailer on the commit.
After the PR merges to main — tag and publish. There is no
automation; these steps are manual and cargo publish is IRREVERSIBLE.
main, then tag:
git checkout main && git pull origin main
git tag <crate>-v<new-version>
git push origin <crate>-v<new-version>
cargo publish -p <crate>
<crate>-v<version> — match the existing tags
(git tag --sort=-creatordate).cargo-release isn't installed: cargo install cargo-release.