用途:当 Rust crate 接近发布、目标从“让代码通过测试”转为“证明可以安全发布”时使用。产出发布就绪报告,包含证据、阻塞项与回滚备注;除非用户单独要求发布,否则不上传 crate。
主要能力:检查 Cargo.toml 与工作区成员、包名、版本、许可证、readme、include/exclude、features 与 publish 设置;梳理 src/lib.rs 等公开 API、feature 门控、示例、构建脚本、unsafe 与生成绑定;对比上一发布版本判定 semver(major/minor/patch);验证 rustdoc、doc 测试与 README 示例;运行发布门禁;检查打包内容;执行发布 dry-run;编写回滚说明并给出 GO/NO-GO 决策。
必要用法:先快照候选(git status --short、git rev-parse HEAD、cargo metadata --format-version 1 --no-deps),工作树脏则停止(除非用户只要草稿报告)。门禁命令包括 cargo fmt --all -- --check、cargo build --all-targets、cargo clippy --all-targets -- -D warnings、cargo test、cargo test --all-features(必要时 --no-default-features 与命名 feature 组合)、cargo doc --no-deps、cargo test --doc、cargo package --list、cargo package、cargo publish --dry-run。单 crate 发布可用 -p <crate> 限定,但需记录工作区级失败是否影响发布。
适用场景:Rust crate 发布前评审、版本号决策、打包内容核对、发布风险与回滚预案整理。
限制:无法从文件或命令输出确认的事实应标记为 unknown,不得猜测;已发布版本号与产物通常不可替换,回滚一般是 yank 加修复版本;凭据失败与 crate 就绪失败需分开判断;报告可内联或写为 CRATE-RELEASE-READINESS.md。具体收费、平台支持等信息暂未提供。