用途:在发布准备阶段,按固定顺序执行预发布序列,并在每一步留存证据,最终产出发布就绪报告而非主观判断。
主要能力:六阶段流程——版本(按变更集套用 semver:破坏性改动升 MAJOR、新功能升 MINOR、纯修复升 PATCH)、变更日志定稿([Unreleased] 转为带日期与版本号的分节,按 Added/Changed/Fixed/Removed 分组并标注破坏性改动)、构建与签名产物、冒烟测试(针对已构建产物而非源码树,验证 --version 与主路径)、运行完整门禁套件、打标签并给出 GO/NO-GO 决策。报告含 version、changelog、artifacts、smoke、gates、decision 六节。
使用方式:从候选提交、干净工作树开始。示例:git status --porcelain 必须为空;git log --oneline LAST_TAG..HEAD 查看变更集;写报告后运行 bash scripts/validate.sh 自检。全部阶段通过后记录 GO,再执行 git tag -a vX.Y.Z;发布(推标签、上传产物、公告)仅在 GO 记录之后进行。
约束与限制:决策前不推送标签、不传产物、不公告;版本由变更集而非日期决定;必须从干净已提交工作树构建与打标;每项就绪声明须附命令与退出码,非零退出即为阻塞项;任一阶段为红不得推进,需修复或记为阻塞。具体项目使用的构建、签名与门禁命令未在本资料中提供,需按项目实际工具执行。
适用场景:需要规范化发布流程、留存可复核发布证据的工程团队。