跳到正文
FunCoding

pre-commit-quality-review

大量代码合并主干分支前的质量自查:功能逻辑内聚、代码分层、可维护性三问走查整个待合并批次;当用户要求合并主干前查质量、提测/发版/特性分支大批量合入前走查、自查内聚/分层/可维护性时使用。

Star
892
许可证
Apache-2.0
最近提交
2026年10月12日

.agents/skills/pre-commit-quality-review/SKILL.md

在 GitHub 上查看

合并主干前质量自查(Pre-Merge Quality Review)

适用时机:大量代码合并主干分支前必做(提测、发版、特性分支大批量合入等场景)——对整个待合并批次做一轮实现质量走查; 日常小 commit(样式微调、文案、单点修复)可跳过。本自查是 writer 侧质量门, 不替代 PR 评审(REVIEW.md 五遍清单;writer 不自批)。

承接「先功能后重构」的开发节奏:功能先跑通 → 重构收敛(内聚/分层/可维护)→ 本自查作重构完成后的验收门——三问发现的问题当场修复、修完复查,全过 + 质量门绿才可合并交付。

目标

回答三个问题,每个结论都带证据(文件:行号):

  1. 功能逻辑是否内聚?
  2. 代码分层是否正确?
  3. 后续是否便于维护?

工作方式

  1. 以待合并批次为单位走查:git diff <主干分支>...HEAD 加工作区未提交改动圈定改动面(新增文件读全文),不逐行复读未改代码。
  2. 逐问检查,发现问题当场修复(属重构收敛的一部分),修完复查该问,不带着已知问题进主干。
  3. 走查后跑质量门:有分域快速门先跑分域,再按需跑全量(pnpm exec vitest run),贴结论数字。
  4. 回报结论:可合并 / 需修改(列问题清单与位置)。

三问清单

一、功能逻辑内聚

  • 该功能的知识(状态、缓存失效、副作用与清理)是否收在属主模块内,还是散落在多个调用方?
  • 同一不变量是否只有一处维护点?兜底/防御逻辑是否跟着属主走?
  • 组件或函数是否只服务一类使用者?混入的无关职责是否拆出去了?

二、代码分层

  • 依赖方向是否单向(页面 → 组件 → hooks/services → utils)?有无越层 import?
  • 对外契约(props/参数/接口)是否最小?调用方是否无须了解实现细节即可正确使用?
  • 新代码落点是否符合本仓分层约定?(本仓:docs/engineering-conventions.md,含分层依赖禁令与命名/I18n 规范)

三、便于维护

  • 注释是否解释「为什么」(约束、坑、边界),而非复述代码?
  • 命名是否与既有代码同族?魔法数字是否收敛为具名常量?
  • 后续接手者能否凭接入注释独立使用/扩展?易错点是否有防呆(防御 guard、cleanup 配对)?

判定口径

  • 三问全过 + 质量门绿 → 可合并。
  • Important(会错、会泄漏、破坏分层约束)→ 必须先修再合并。
  • Nit(风格/更优雅写法)≤ 5 条,记录不阻塞;格式化工具已覆盖的不算。

参考

  • slash command:/quality-review 可直接点名本流程。
  • PR 评审清单:根目录 REVIEW.md(评审侧五遍清单)。
  • 「错两次进规则」:同类问题第二次被抓,纠正写入 AGENTS.md。

相似的 Skill

using-git-worktrees

OBobra/superpowers298k近 7 天新增 2,631 个 star

verification-before-completion

OBobra/superpowers298k近 7 天新增 2,631 个 star

finishing-a-development-branch

OBobra/superpowers298k近 7 天新增 2,631 个 star

wizard

MAmattpocock/skills288k近 7 天新增 10,178 个 star

git-guardrails-claude-code

MAmattpocock/skills288k近 7 天新增 10,178 个 star

triage

MAmattpocock/skills288k近 7 天新增 10,178 个 star