SmartEDT/.trae/skills/pr-reviewer/SKILL.md

87 lines
3.3 KiB
Markdown
Raw Permalink Normal View History

---
name: "pr-reviewer"
description: "对变更/PR 做代码审查并给出可执行修改建议。用户要求代码评审、准备合并、或完成较大改动后自检时调用。"
---
# PR Reviewer变更/PR 代码审查)
## 目标
- 快速识别高风险缺陷(正确性/安全/稳定性/兼容性)
- 以“可落地修改”为导向给出建议(位置、原因、影响、最小修复)
- 在不引入不必要依赖的前提下,尽量复用仓库现有模式与工具
## 何时使用
- 用户要求“评审这个 PR/diff/改动”
- 你完成了多文件或关键路径改动,准备合并前自检
- 修复 bug 或安全问题后,需要确认无回归
## 你需要获取的信息(尽量自己补齐)
优先使用现有上下文完成评审,不强制用户补全:
- 变更范围diff/文件列表/目录
- 预期行为:功能目标、边界条件、失败语义
- 运行环境:语言版本、部署方式、配置来源、数据库/外部依赖
- 质量门槛性能目标、SLA、兼容性、测试要求
## 审查方法(按优先级)
1. 先看变更入口与数据流:输入→处理→持久化/外部调用→输出
2. 先找会导致事故的点:鉴权、注入、并发、资源泄露、回滚困难
3. 再看可维护性:重复、耦合、命名、可读性、错误处理一致性
4. 最后看体验与一致性:日志、可观测性、风格、文档与配置
## 检查清单
### 正确性
- 边界条件:空值/缺省、极端长度、时区与编码、浮点与精度
- 错误路径:异常是否被吞、错误码与消息是否一致、重试/幂等性
- 并发:竞态、锁粒度、事务边界、重复提交
- 资源:连接/句柄/任务是否可控,是否有超时与取消
### 安全性
- 注入SQL/命令/模板/路径穿越/正则 DoS
- 鉴权:敏感操作是否校验权限与主体一致性,是否存在越权路径
- 会话token 处理是否安全(存储/传输/日志/错误信息)
- 密钥:不得输出或建议写入任何密钥/token/密码/私钥/PII
### 稳定性与性能
- 热路径复杂度、N+1、无界队列/循环、阻塞 I/O
- 缓存/分页/批处理是否合理,索引友好性
- 外部依赖:熔断/退避/限流/超时/重试策略是否一致
### 可维护性与一致性
- 是否复用项目既有抽象配置、logger、错误处理、领域模型
- 是否引入了不必要的新依赖;若必须引入,说明理由与替代方案
- API/DTO/Schema 是否向后兼容;破坏性变更是否标注与迁移路径
### 测试与验证
- 是否覆盖关键分支与失败路径
- 是否新增或更新了与变更一致的测试(单测/集成/端到端)
- 是否需要补充回归用例(最小复现)
## 输出格式(必须可执行)
按以下结构输出,中文为默认:
1. 结论摘要(风险:高/中/低,是否建议合并:是/否/有条件)
2. Blockers必须修复每条包含
- 位置:文件 + 行号范围(若可获得)
- 问题:一句话描述
- 影响:会导致什么
- 修复:最小改动建议(必要时给补丁)
3. Suggestions建议改进同上但不阻塞
4. Tests建议验证列出要跑/要补的测试与覆盖点
## 约束
- 不凭空假设依赖或环境已存在;不确定时先在仓库中确认
- 不输出或建议写入任何密钥/token