144 lines
2.8 KiB
Markdown
144 lines
2.8 KiB
Markdown
## PR 反馈处理
|
|
|
|
高效处理 Pull Request 的审查评论,采用错误分析三阶段方法寻求根本解决方案。
|
|
|
|
### 使用方法
|
|
|
|
```bash
|
|
# 获取并分析审查评论
|
|
gh pr view --comments
|
|
「请按优先级分类审查评论并创建应对计划」
|
|
|
|
# 错误相关评论的详细分析
|
|
gh pr checks
|
|
「请用三阶段方法分析 CI 错误并找出根本原因」
|
|
|
|
# 修复完成后的质量确认
|
|
npm test && npm run lint
|
|
「修复已完成,请检查回归测试和代码质量」
|
|
```
|
|
|
|
### 基本示例
|
|
|
|
```bash
|
|
# 执行评论分类
|
|
gh pr view 123 --comments | head -20
|
|
"请将审查评论分类为 must/imo/nits/q 并决定处理顺序"
|
|
|
|
# 收集错误信息
|
|
npm run build 2>&1 | tee error.log
|
|
"请找出构建错误的根本原因并提出适当的修复方法"
|
|
|
|
# 确认修复实现
|
|
git diff HEAD~1
|
|
"请评估此修复是否恰当解决了审查指出的问题"
|
|
```
|
|
|
|
### 评论分类体系
|
|
|
|
```text
|
|
🔴 must: 必须修复
|
|
├─ 安全问题
|
|
├─ 功能缺陷
|
|
├─ 设计原则违反
|
|
└─ 规范违反
|
|
|
|
🟡 imo: 改进建议
|
|
├─ 更好的实现方法
|
|
├─ 性能改进
|
|
├─ 可读性提升
|
|
└─ 重构建议
|
|
|
|
🟢 nits: 轻微指摘
|
|
├─ 拼写错误修正
|
|
├─ 缩进调整
|
|
├─ 注释添加
|
|
└─ 命名微调
|
|
|
|
🔵 q: 问题与确认
|
|
├─ 实现意图确认
|
|
├─ 规格明确化
|
|
├─ 设计决策背景
|
|
└─ 替代方案探讨
|
|
```
|
|
|
|
### 错误分析三阶段方法
|
|
|
|
#### 第一阶段:信息收集
|
|
|
|
**必须执行**
|
|
|
|
- 完整获取错误消息
|
|
- 确认堆栈跟踪
|
|
- 确定重现条件
|
|
|
|
**推荐执行**
|
|
|
|
- 收集环境信息
|
|
- 最近的更改历史
|
|
- 确认相关日志
|
|
|
|
#### 第二阶段:根本原因分析
|
|
|
|
- 应用 5 Whys 分析
|
|
- 追踪依赖关系
|
|
- 确认环境差异
|
|
- 创建最小重现代码
|
|
|
|
#### 第三阶段:解决方案实施
|
|
|
|
- 立即处理 (热修复)
|
|
- 根本解决 (本质修复)
|
|
- 预防措施 (防止复发)
|
|
|
|
### 应对流程
|
|
|
|
1. **评论分析**: 按优先级分类
|
|
2. **修复计划**: 决定处理顺序
|
|
3. **阶段性修复**: Critical → High → Medium → Low
|
|
4. **质量确认**: 测试、代码检查、构建
|
|
5. **进度报告**: 具体说明修复内容
|
|
|
|
### 修复后的确认
|
|
|
|
```bash
|
|
# 基本检查
|
|
npm test
|
|
npm run lint
|
|
npm run build
|
|
|
|
# 回归测试
|
|
npm run test:e2e
|
|
|
|
# 代码质量
|
|
npm run test:coverage
|
|
```
|
|
|
|
### 回复模板
|
|
|
|
**修复完成报告**
|
|
|
|
```markdown
|
|
@reviewer 感谢您的指正。
|
|
修复已完成:
|
|
|
|
- [具体修复内容]
|
|
- [测试结果]
|
|
- [确认方法]
|
|
```
|
|
|
|
**技术判断说明**
|
|
|
|
```markdown
|
|
实现背景:[原因]
|
|
考虑的替代方案:[选项与判断依据]
|
|
采用方案的优点:[优势]
|
|
```
|
|
|
|
### 注意事项
|
|
|
|
- **遵守优先级**: 按 Critical → High → Medium → Low 顺序处理
|
|
- **测试优先**: 修复前确认回归测试
|
|
- **明确报告**: 具体描述修复内容和确认方法
|
|
- **建设性对话**: 基于技术依据的礼貌沟通
|