Stage Review 是一个用于“已完成本地功能”的收尾工作流技能。它的核心用途是:在功能开发完成后,检查改动、运行本地验证、显式暂存文件、创建符合 Conventional Commits 规范的提交,然后通过 no-mistakes 的受控审查/修复循环推送代码,只有在门禁通过后才由 no-mistakes 执行真正的上游推送或 PR。
主要能力与规则:
- 禁止在此工作流中使用 git push origin。
- 禁止强制推送。
- 不使用 git add . 暂存;应使用显式路径,或仅在用户明确希望包含所有当前改动时使用捆绑脚本的 --all。
- 在受保护或分离分支上,提交前停止。
- 任何影响远程的命令(包括 git push no-mistakes)执行前都需询问确认。
- 使用 Conventional Commits 类型:feat|fix|refactor|build|ci|chore|docs|style|perf|test。
- 优先使用仓库本地检查命令,来源包括 .no-mistakes.yaml、justfile、package.json、Makefile、go.mod、Cargo.toml 或等效项目配置。
- 诊断前先引用确切的本地检查与流水线错误。
使用方式(工作流):
- 预检:解析相对于技能文件夹的 scripts/stage_review.py,运行 plan 命令,并执行 git status --short --branch 与 git diff --stat。若分支受保护或分离、正在进行 merge/rebase/cherry-pick、改动文件包含无关工作、不存在 origin、不存在 no-mistakes 远程且未批准 no-mistakes init,则停止并询问。
- 本地检查:在暂存前运行仓库真实的本地检查。优先使用 .no-mistakes.yaml 中的显式命令(如 test、lint、format)。若无配置,则检查仓库本地命令入口并选择规范命令,例如 just test/lint/fmt、make test/lint/fmt、pnpm test/lint/typecheck、go test ./... 与 go vet ./...、cargo test 与 cargo clippy --all-targets -- -D warnings。除非用户明确想要一个损坏的检查点,否则相关本地检查失败时不要提交。
- 暂存与提交:根据实际 diff 选择 Conventional Commit 主题,使用脚本显式暂存文件并提交,可附带 --body 记录运行的测试命令。仅在用户明确确认所有改动都属于该功能时使用 --all。
- 通过 no-mistakes 推送:先确认确切命令(git push no-mistakes <branch>),确认后执行 git push no-mistakes <branch> 与 no-mistakes。
- 审查/验证/修复循环:对每个 no-mistakes 发现,识别步骤(rebase、review、test、document、lint、push、pr 或 ci),引用确切的发现/错误,仅在用户希望修复时修改代码/配置,修复后运行针对性本地验证,用同一脚本提交后续修复,并视情况运行 no-mistakes rerun 或 continue/attach。可用命令包括 no-mistakes status、no-mistakes runs --limit 10、no-mistakes attach、no-mistakes rerun。
- 完成标准:仅在能够报告以下内容时结束:本地检查运行及结果、提交 SHA 与 Conventional Commit 主题、no-mistakes 运行状态、创建/更新的 PR URL(如有)、CI 状态(如有)、剩余阻塞项(如有)。
适用场景:适合需要严格提交规范、显式暂存、本地验证与门禁审查的仓库,尤其是使用 no-mistakes 进行审查/修复循环的项目。
限制:该技能依赖 no-mistakes 远程与相关配置;若不存在 origin 或 no-mistakes 远程且未批准初始化,则需停止并询问。具体安装命令、收费、价格、平台支持等信息暂未提供。