界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
效率与协作 · SKILL.md

release-bump

release-bump

【效率与协作】Use when bumping ralph-orchestrator version for a new release, after fixes are committed and ready to publish

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: release-bump description: Use when bumping ralph-orchestrator version for a new release, after fixes are committed and ready to publish

Release Bump

Overview

Bump version and trigger release for ralph-orchestrator. All versions live in workspace Cargo.toml - individual crates inherit via version.workspace = true.

Confirm the new version with the user. Once the bump commit is pushed, track progress of the release.

Quick Reference

StepCommand/Action
1. Bump versionEdit Cargo.toml: replace all version = "X.Y.Z" (7 occurrences)
2. Buildcargo build (updates Cargo.lock)
3. Testcargo test
4. Commitgit add Cargo.toml Cargo.lock && git commit -m "chore: bump to vX.Y.Z"
5. Pushgit push origin main
6. Taggit tag vX.Y.Z && git push origin vX.Y.Z

Version Locations (All in Cargo.toml)

# Line ~17 - workspace version
[workspace.package]
version = "X.Y.Z"

# Lines ~113-118 - internal crate dependencies
ralph-proto = { version = "X.Y.Z", path = "crates/ralph-proto" }
ralph-core = { version = "X.Y.Z", path = "crates/ralph-core" }
ralph-adapters = { version = "X.Y.Z", path = "crates/ralph-adapters" }
ralph-tui = { version = "X.Y.Z", path = "crates/ralph-tui" }
ralph-cli = { version = "X.Y.Z", path = "crates/ralph-cli" }
ralph-bench = { version = "X.Y.Z", path = "crates/ralph-bench" }

Tip: Use Edit tool with replace_all: true on version = "OLD" → version = "NEW" to update all 7 at once.

What CI Does Automatically

Once you push the tag, .github/workflows/release.yml triggers and:

  1. Creates the GitHub Release with auto-generated notes
  2. Builds binaries for macOS (arm64, x64) and Linux (arm64, x64)
  3. Uploads artifacts to the GitHub Release
  4. Publishes to crates.io (in dependency order)
  5. Publishes to npm as @ralph-orchestrator/ralph

Common Mistakes

MistakeFix
Only updating workspace.package.versionMust update all 7 occurrences including internal deps
Forgetting to run testsAlways cargo test before commit
Creating release manually with gh release createJust push the tag - CI creates the release with artifacts
Pushing tag before mainPush main first, then push the tag
我的收藏