预 PR 检查
执行所有步骤,并以表格报告 通过/不通过,附带证据(命令和结果摘要)。
-
make check必须全部通过(docs-check, lint + SAST, test, build, license)— 除以下 2 种情况:- 纯文档 PR(
docs(design): …, ADR, docs):只需make docs-check通过即可 - 尚未选定技术栈的仓库(target 显示
not configured— ADR-0001 尚未 accepted):该 target 报告为 N/A(尚未设置),不算通过,也不构成阻止原因 — 禁止修改 recipe 为exit 0以使其通过
如果更改了用户可见内容(需要新增/修改 e2e 测试),还需执行
make e2e;如果触及中间件、header、cookie、错误页面或新路由,还需执行make dast - 纯文档 PR(
-
git diff origin/main...HEAD --stat— 确认只修改了工作相关的文件,无多余文件(构建输出、.env、个人文件) -
检查是否遗留了临时日志:
git diff origin/main...HEAD | grep -n '\[DBG-'必须无结果(fix-bug第 3 条) -
在 diff 中搜索密钥:
git diff origin/main...HEAD | grep -nEi '(api[_-]?key|secret|token|password|BEGIN .*PRIVATE KEY)'— 若发现则停止并报告 -
新增的环境变量必须全部出现在
.env.example中 -
新增/升级的依赖项(查看 lockfile、go.mod、Dockerfile
FROM的 diff):版本和许可证必须符合docs/dependencies.md,并在 PR 描述中注明 -
新的数据库迁移(如有):必须可执行且可回滚
-
文档:README/docs/ADR(
docs/adr/)需根据变更内容更新;领域新词需放入 CONTEXT.md,且代码中的名称与 CONTEXT.md 保持一致 -
按
review技能进行审查(Claude Code:子代理reviewer;其他代理:读取.agents/skills/review/SKILL.md并自审 diff),并修复所有“必须修改”的问题 -
提交信息格式为 Conventional Commits,且分支名不是
main -
PR 描述包含
Closes #<issue>(若无 issue 则先创建),以及标题## CHANGELOG(分类 + 一行面向用户的泰语描述,或-)— 不要自行编辑CHANGELOG.md(参见docs/release.md) -
若涉及 UI:无硬编码文本、所有语言键齐全、无直接颜色值、检查
th/en× light/dark 两种模式(参见docs/ui.md)
若任何一项不通过,请勿创建 PR,应先修复问题或报告阻塞项。