Agent Skills › hotpath-rs/hotpath › hotpath_bump

hotpath_bump

GitHub

用于统一提升 hotpath 工作区中所有 crate 及关联文件的版本号,涵盖 Cargo.toml、后端中间件和文档占位符。

dev_skills/hotpath_bump/SKILL.md hotpath-rs/hotpath

触发场景

用户要求 bump 版本 发布新版本 hotpath

安装

npx skills add hotpath-rs/hotpath --skill hotpath_bump -g -y
更多选项

非标准路径

npx skills add https://github.com/hotpath-rs/hotpath/tree/main/dev_skills/hotpath_bump -g -y

不安装直接使用

npx skills use hotpath-rs/hotpath@hotpath_bump

指定 Agent (Claude Code)

npx skills add hotpath-rs/hotpath --skill hotpath_bump -a claude-code -g -y

安装 repo 全部 skill

npx skills add hotpath-rs/hotpath --all -g -y

预览 repo 内 skill

npx skills add hotpath-rs/hotpath --list

SKILL.md

Frontmatter
{
    "name": "hotpath_bump",
    "description": "Bump the hotpath version number across the workspace and related files. Updates the versions of all six published crates (drain included) in Cargo.toml files (exact patch version), version references in the backend middleware and README (major.minor only), and the release tag the docs name (exact `vX.Y.Z` tag). Use when the user wants to bump, bump the version, or release a new hotpath version.",
    "allowed-tools": "Bash, Read, Edit, Grep, Glob"
}

Bump hotpath Version

Bump the hotpath version number in every place it appears. The user provides the new version (e.g. 0.25.0); if only major.minor is given, assume patch 0.

Three formats are used:

  • Exact version (X.Y.Z, e.g. 0.25.0) - all Cargo.toml entries
  • Major.minor only (X.Y, e.g. 0.25) - crate version references
  • Release tag (vX.Y.Z, e.g. v0.25.0) - the {{HOTPATH_RELEASE_TAG}} docs placeholder

1. Cargo.toml files - exact version X.Y.Z

Update the version field in the [package] section of each crate:

  • crates/hotpath/Cargo.toml
  • crates/hotpath-macros/Cargo.toml
  • crates/hotpath-meta/Cargo.toml
  • crates/hotpath-macros-meta/Cargo.toml
  • crates/hotpath-drain/Cargo.toml
  • crates/hotpath-drain-meta/Cargo.toml

Update the version in the six [workspace.dependencies] entries in the root Cargo.toml:

hotpath-macros = { path = "./crates/hotpath-macros", version = "X.Y.Z" }
hotpath-drain = { path = "./crates/hotpath-drain", version = "X.Y.Z" }
hotpath = { path = "./crates/hotpath", version = "X.Y.Z" }
hotpath-meta = { path = "./crates/hotpath-meta", version = "X.Y.Z" }
hotpath-macros-meta = { path = "./crates/hotpath-macros-meta", version = "X.Y.Z" }
hotpath-drain-meta = { path = "./crates/hotpath-drain-meta", version = "X.Y.Z" }

All six crates always share the same version; never bump one without the others. This matters for the drain crates even when their code is unchanged: published hotpath-drain depends on hotpath-meta, so a drain left on an older release keeps pulling a stale hotpath-meta copy into downstream lockfiles (and splits meta profiling across two versions). All six are published together via just cargo-publish, which lists them in dependency order.

2. Other references - major.minor X.Y

  • ../hotpath-backend/src/config/middleware.rs (separate repo, sibling directory):

    ("{{HOTPATH_VERSION}}", "X.Y"),
    
  • README.md - every version occurrence (hotpath = "X.Y")

The docs and the agent pages in docs/agent/ use the {{HOTPATH_VERSION}} and {{HOTPATH_RELEASE_TAG}} placeholders, which the backend fills from its middleware.rs entries above and below; never hardcode a version there.

3. Release tag - vX.Y.Z

The agent pages name the latest release by its tag, so this points at the tag this release creates:

  • ../hotpath-backend/src/config/middleware.rs:

    ("{{HOTPATH_RELEASE_TAG}}", "vX.Y.Z"),
    

The relay is the separate hotpath-rs/hotpath-relay action with its own versions, named in the docs by {{RELAY_RELEASE_TAG}}: a hotpath release does not touch it or its pins.

4. Verify

Search for stragglers with the old version, excluding lockfiles, target dirs, and third-party code:

rg -n 'OLD_X\.OLD_Y' Cargo.toml README.md crates/hotpath/Cargo.toml crates/hotpath-macros/Cargo.toml crates/hotpath-meta/Cargo.toml crates/hotpath-macros-meta/Cargo.toml crates/hotpath-drain/Cargo.toml crates/hotpath-drain-meta/Cargo.toml
rg -n 'OLD_X\.OLD_Y' ../hotpath-backend/src/config/middleware.rs

Ignore matches that are not hotpath version references (other dependencies may coincidentally share the number). Then run cargo check so Cargo.lock picks up the new versions.

Rules

  • Do not commit; leave changes for the user to review.
  • Do not bump versions of test crates or any other dependency versions.

版本历史

  • fe91c2b 当前 2026-11-02 09:15

同 Skill 集合

dev_skills/syncmeta/SKILL.md
skills/hotpath_bump/SKILL.md
skills/hotpath_init_ci_forks/SKILL.md
skills/hotpath_init_ci/SKILL.md
skills/hotpath_init/SKILL.md
skills/syncmeta/SKILL.md
skills/hotpath_cloud/SKILL.md
skills/hotpath_init_grafana/SKILL.md
skills/hotpath-rs/SKILL.md

元信息

文件数
0
版本
fe91c2b
Hash
7a78d3b5
收录时间
2026-11-02 09:15

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-02 13:04
浙ICP备14020137号-1