name: pr-description description: 创建包含适当结构、图表和文档的全面PR描述指南,便于代码审查。
PR描述技能
本技能提供了一种结构化方法,用于创建全面的拉取请求描述,帮助审阅者快速理解变更内容。
何时使用
在以下情况使用此技能:
- 创建新的拉取请求时
- 用户要求“创建PR描述”或“撰写PR描述”时
- 为审查记录重大代码变更时
文件创建(可选)
如果要将PR描述保存到文件:
- 模式:
pr_description_<描述性标题>_<时间戳>.md - 获取时间戳:
date +"%Y%m%d_%H%M%S" - 示例:
pr_description_user_auth_refactor_20250612_152832.md
必需结构
# PR标题:[描述性标题]
## 📋 摘要
用2-3句话简要概述此PR完成的内容。
## 📊 数据流图
[显示流程/架构的Mermaid图 - 使用 `mermaid` 技能进行样式设置]
## 🗂️ 实体关系图
[如果创建/修改数据关系则包含 - Mermaid ERD]
## 🎯 目标
- 主要目标 1
- 主要目标 2
- 任何次要目标
## 🔍 此PR中的变更
- 关键变更描述
- 任何配置文件变更
- 架构修改
- 破坏性变更(如果有)
## 🧪 测试
### 运行的命令
```bash
# 列出用于测试的确切命令
npm test
npm run lint
结果
- ✅ 所有测试通过
- ✅ 代码检查通过
- ✅ 构建成功
- 包含任何相关的截图或输出
验证
- 测试的关键场景
- 覆盖的边缘情况
- 性能考虑
📋 给审阅者的说明
- 请关注:[具体领域]
- 做出的假设:[列出任何假设]
- 依赖关系:[任何上游/下游影响]
🔜 未来工作
- 此PR中未包含的任何后续任务
- 潜在的优化
- 需要进行的额外测试
## Mermaid图表
**使用 `mermaid` 技能**获取适用于浅色和深色模式的图表语法和样式。
### 数据流图
显示数据或逻辑的完整流程:
- 输入源
- 处理步骤
- 输出目的地
- 包含颜色编码的图例
### 实体关系图(适用时)
显示对象/数据关系:
- 主键(PK)
- 外键(FK)
- 关系基数(一对多、多对多)
## 内容指南
### 摘要部分
- 简要解释业务背景
- 突出关键优势
- 保持在2-3句话
### 变更部分
- 关注对审阅者重要的内容
- 将相关变更分组
- 显著标注任何破坏性变更
### 测试部分
- **始终包含运行的确切命令**
- 展示成功测试的证据
- 包含验证结果
- 在有用时添加截图
### 未来工作部分
- 列出有意推迟的项目
- 建议优化或增强
- 注意创建的任何技术债务
## 关键原则
1. **具体明确**:包含确切命令、具体示例
2. **展示证据**:截图、命令输出、测试结果
3. **审阅者优先**:审阅者需要什么来理解变更?
4. **业务背景**:解释“为什么”而不仅仅是“是什么”
5. **保持可扫描性**:使用标题、项目符号和格式化
## 良好示例
### 良好摘要
“此PR重构了用户认证流程,使用JWT令牌替代会话Cookie。此变更提高了我们微服务架构的可扩展性,并减少了服务器端会话存储需求。”
### 良好测试描述
```bash
# 运行的命令
npm run test:unit
npm run test:integration
npm run lint
结果:
- ✅ 47个单元测试通过
- ✅ 12个集成测试通过
- ✅ 无代码检查错误
- ✅ 在暂存环境完成手动测试
错误处理
- 如果无法确定变更范围,请向用户询问澄清
- 如果测试尚未完成,提醒用户先运行测试
- 如果未提供图表,创建占位图表并请用户审阅