Files
John Qiu da57cccf96 chore(marketplace): update req-retro karpathy-score dimension, req-test-gate gate-0b docs
- req-retro: 新增 karpathy_score × 0.20 维度,QS 公式扩展为 5 维
- req-test-gate: Gate 0B 新增 check-surgical.sh Ratchet 文档

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-21 10:55:13 +09:30

181 lines
5.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: req-retro
description: 复盘总结。自动采集数据、计算质量评分、跨需求模式识别、技能自动进化。可独立调用或由 /req done 自动触发。
---
# 复盘总结 (retro)
自动采集需求全生命周期数据,计算质量评分,识别跨需求模式,沉淀经验。
## 执行流程
### 1. 数据采集
| 数据 | 来源 | 方式 |
|------|------|------|
| 各阶段时间 | ai-proj | `mcp__ai-proj__get_requirement_history` |
| 任务完成情况 | ai-proj | `mcp__ai-proj__get_requirement_tasks` |
| CR 发现数 | CR 任务文档 | 从【代码评审】任务文档中提取缺陷计数 |
| 测试结果 | test 任务文档 | 从【测试】任务文档中提取通过/失败数 |
| audit 缺陷数 | 本次 audit 结果 | 从 audit 报告中提取 |
| git 统计 | git | `git log --stat` 提交数、变更行数 |
### 2. 质量评分Quality Score
```
QS = lookback_pass_rate × 0.25
+ audit_defect_score × 0.25
+ cr_density_score × 0.15
+ test_pass_rate × 0.15
+ karpathy_score × 0.20 ← Karpathy 四原则执行质量
audit_defect_score:
0 缺陷 = 100
每个低级 -5
每个中级 -20
每个高级 -60
致命 = 0
cr_density_score:
100 - (发现数 / 变更行数 × 1000)
下限 0上限 100
karpathy_score四原则执行质量各 25 分,共 100:
Think Before PRD (25):
PRD 无返工 → 25 | 因需求误解返工 1 次 → 15 | ≥2 次 → 0
Simplicity (25):
CR 第六视角无 Scope 违规 → 25 | 1 个 Low → 20 | ≥1 个 Medium+ → 10 | High+ → 0
Surgical (25):
check-surgical.sh PASS + CR 无顺手改 → 25 | 警告但未阻塞 → 15 | FAIL → 0
Goal-Driven (25):
dev-coding 有验证脚本记录VP-Steps 先于代码执行)→ 25 | 事后补写 → 15 | 无 → 0
```
**Karpathy 数据来源**(按优先级):
1. dev-coding 任务文档中是否有「验证脚本」节
2. CR 报告第六视角的发现数和严重度
3. `git log` 中是否有 check-surgical.sh baseline 更新提交(说明有过违规)
4. PRD 任务文档的版本数(> 1 说明有返工)
**无数据时**:各维度默认 20 分(中性),在报告中标注 `(无记录,按中性计算)`
### 3. 历史趋势对比
读取 `memory/retro_metrics.md` 的明细数据:
```
本次 vs 近 10 次平均:
总耗时: 5h 44min vs avg 8h 12min (↓ 30% 改善)
质量分: 92 vs avg 85 (↑ 8% 提升)
缺陷数: 2 vs avg 3.2 (↓ 37% 改善)
变更行: 279 vs avg 450 (↓ 38%)
```
首次执行时显示:"首次复盘,无历史数据可对比。"
### 4. 跨需求模式识别
读取 retro_metrics.md 全部明细AI 分析三类模式:
**耗时模式**
- 按需求类型(前端/后端/混合/技能)分组统计平均耗时
- 识别异常:某次耗时是同类平均的 2 倍以上 → 标注原因
**缺陷热区**
- 统计各文件在多次需求中的 audit 发现频率
- 同一文件 3 次以上出现 → 标记为热区
**改进验证**
- 对比引入某流程/技能前后的质量分趋势
- 例:"引入 defect-analysis 后 5 次需求平均质量分从 72 → 88"
### 5. 自动更新技能
当模式识别发现高频缺陷类型时:
```
AI: "近 5 次需求中 3 次 audit 发现了 {缺陷类型}。
建议在 dev-review 的 CR 检查清单中增加:'{新检查项}'。"
用户确认?(y/n)
```
用户确认 → 自动在 `~/.claude/skills/dev-review/SKILL.md` 检查清单末尾追加该检查项。
### 6. 更新 retro_metrics.md
追加一行到明细:
```
| REQ-xxx | 2026-04-18 | 5h44m | 92 | 2 | 279 | 3 | frontend | 85 |
```
列说明:`REQ | date | time | QS | audit_defects | changed_lines | cr_findings | type | karpathy_score`
更新汇总:重新计算近 10 次平均值和趋势箭头(↑↓→),包含 karpathy_score 趋势。
超过 30 条明细 → 最早的移入 `retro_metrics_archive.md`
### 7. 生成文档
输出 `04-生命周期总结.md`,附加到【复盘】任务:
```markdown
# 生命周期总结 - REQ-xxx
## 质量评分: 92/100
## 时间线
| 阶段 | 进入时间 | 耗时 |
|------|---------|------|
| 创建 | 04-18 11:14 | - |
| PRD | 04-18 11:18 | 4min |
| 评审 | 04-18 11:19 | 1min |
| 开发 | 04-18 12:00 | 41min |
| 部署 | 04-18 16:58 | 4h58min |
| 总耗时 | | 5h 44min |
## 质量指标
| 指标 | 本次 | 近10次均 | 对比 |
|------|------|---------|------|
| 质量分 (QS) | 92 | 85 | ↑ |
| audit 缺陷 | 2(低) | 3.2 | ↓ |
| CR 发现 | 0 | 1.5 | ↓ |
| 测试通过率 | 100% | 95% | ↑ |
| Karpathy 分 | 85 | 78 | ↑ |
## Karpathy 四原则评分
| 原则 | 得分 | 说明 |
|------|------|------|
| Think Before PRD | 25/25 | PRD 无返工 |
| Simplicity | 20/25 | CR 第六视角发现 1 个 Low |
| Surgical | 25/25 | check-surgical.sh PASS |
| Goal-Driven | 15/25 | 验证脚本为事后补写 |
## git 统计
| 提交数 | 变更文件 | +行 | -行 |
|--------|---------|-----|-----|
| 3 | 1 | 279 | 2 |
## 模式识别
- {耗时/热区/改进 分析结果}
## 经验教训(写入 memory
- {AI 提取的非显然教训}
## 技能更新
- {已更新/无更新}
```
### 8. 写入 memory
将有价值的经验写入 memory
- 类型:`feedback``project`
- 只写非显然的、可指导未来工作的教训
- 用户确认后写入
## 任务关联
- linkRole: `documentation`
- 任务标题: `【复盘】生命周期总结: {需求标题}`
- 04-生命周期总结.md 附加到任务文档