- MCP Server 新增 GET/SSE 端点,Claude Code 原生 MCP 打通 - 项目导师面板显示复盘笔记覆盖率统计与缺口提醒 - usage.json 快照新增 complexity_dist、rework_count 等扩展字段 - 独立项目自动创建产品组并注入 MCP - 新增 retro-catchup 技能用于批量补写历史复盘笔记 - 补全飞轮存量函数单元测试 - NewProjectModal 支持更灵活的模板参数配置
115 lines
5.5 KiB
Markdown
115 lines
5.5 KiB
Markdown
# 飞轮智能成长
|
||
|
||
炼境通过管理项目产生的多维数据反哺自身,形成可自我进化的成长闭环。
|
||
核心愿景:让炼境像一把可成长神器,执行数据越积越多,自身越来越好用。
|
||
|
||
## 背景
|
||
|
||
现有飞轮仅覆盖一个维度:usage.json 指标 → 梦核分析 → CONVENTIONS 建议。
|
||
复盘笔记、任务时长、返工率等执行质量数据已在采集,但没有进入任何反哺路径——数据在"睡觉"。
|
||
|
||
本模块分三个阶段逐步打通数据→改善的完整闭环。
|
||
|
||
## 阶段触发条件
|
||
|
||
- **阶段二启动条件**:阶段一上线后,梦核输出中稳定出现"高频陷阱摘要"板块,且跨项目复盘笔记数量 ≥ 20 条
|
||
- **阶段三启动条件**:阶段二运行 ≥ 3 个月,accumulated 数据覆盖 ≥ 15 个项目,usage.json 携带 rework_count 和 avg_rounds 字段
|
||
|
||
---
|
||
|
||
## 任务卡
|
||
|
||
### ✅ 阶段一:复盘笔记接入梦核飞轮
|
||
- status: done
|
||
- complexity: M
|
||
- files: src-tauri/src/commands/blueprint_feedback.rs, src/components/blueprint/FlywheelPanel.tsx
|
||
- acceptance: 梦核 prompt 构建时聚合所有项目的 project_notes;Opus 输出新增"高频陷阱摘要"板块,列出跨项目重复出现的踩坑模式;本地验证:有复盘笔记的项目数据能正确注入 prompt
|
||
|
||
阶段一详细设计:
|
||
- 梦核 prompt 模板增加输入段:通过 MCP 读取各项目 project_notes,按"任务类型 × 是否返工"分组
|
||
- Opus 输出格式新增板块:
|
||
```
|
||
### 高频陷阱(跨项目复盘笔记聚合)
|
||
- <任务类型>:<踩坑描述>,出现 N 次(项目:A、B、C)
|
||
```
|
||
- 修改点:梦核 prompt 构建逻辑(Rust 侧)
|
||
|
||
---
|
||
|
||
### ✅ 独立项目自动创建产品组
|
||
- status: done
|
||
- complexity: S
|
||
- files: src-tauri/src/commands/groups.rs, src-tauri/src/commands/buff.rs
|
||
- acceptance: 对未加入任何产品组的蓝图项目,apply_blueprint_buff 时自动创建 "{name} (独立项目)" 产品组并注入 MCP,使 append_project_note 在该项目的 Claude 会话中可用
|
||
|
||
---
|
||
|
||
### ✅ 复盘笔记覆盖率可见性
|
||
- status: done
|
||
- complexity: M
|
||
- files: src-tauri/src/commands/mentor.rs, src/lib/commands.ts, src/components/mentor/MentorPanel.tsx
|
||
- acceptance: 项目导师面板显示"已完成 M/L 任务数 / 复盘笔记数 / 缺口"三格统计;缺口 > 0 时显示琥珀色警告提示;mentor_markdown 同步写入覆盖率表格和补写提醒,让 Claude 每次打开报告时自动感知
|
||
|
||
---
|
||
|
||
### ✅ 补测试:飞轮存量函数安全网
|
||
- status: done
|
||
- complexity: M
|
||
- depends: flywheel-intelligence(阶段二启动前完成,保障数据关键路径)
|
||
- files: src-tauri/src/commands/blueprint.rs
|
||
- acceptance: `collect_flywheel_notes` 有测试覆盖 win_path 匹配、wsl_path 匹配、项目不存在三种情况;`get_flywheel_stats` 有测试覆盖正常快照解析、空项目列表、iteration 跳变检测;所有新测试用依赖注入 + in-memory DB;`cargo test` 全绿
|
||
|
||
> 背景:阶段一实现时因无测试导致"查错表"bug 上线,靠人工 review 才发现。补测试后同类静默失败 bug 可在写代码时立即暴露。
|
||
|
||
---
|
||
|
||
### ✅ MCP Server 支持 SSE 传输
|
||
- status: done
|
||
- complexity: M
|
||
- files: src-tauri/src/mcp_server.rs
|
||
- acceptance: `GET /mcp/group/:group_id` 返回 `text/event-stream`,按 MCP SSE 传输规范完成握手;Claude Code 会话启动时 `append_project_note` 等工具可在工具列表中原生出现;Windows 本地测试通过(curl -N GET 端点可见 SSE 事件流)
|
||
|
||
> 背景:Claude Code MCP 客户端用 GET 发起 SSE 握手,炼境目前只接受 POST,导致 405 → MCP 永久失效。加 GET/SSE 端点后,所有项目原生 MCP 打通,复盘笔记可直接通过 `append_project_note` 写入,飞轮数据链完整,无需任何绕路脚本。
|
||
|
||
---
|
||
|
||
### ✅ 阶段二:usage.json 扩展采集维度
|
||
- status: done
|
||
- complexity: M
|
||
- depends: flywheel-intelligence(阶段一完成后启动)
|
||
- files: src-tauri/src/commands/blueprint.rs
|
||
- acceptance: usage.json 快照新增 complexity_dist、rework_count、avg_rounds_M 字段;字段值从复盘笔记解析填充;梦核分析可输出"M 级任务实际轮数 vs 预估"对比
|
||
|
||
阶段二详细设计:
|
||
```json
|
||
"tasks": {
|
||
...现有字段...,
|
||
"complexity_dist": { "S": 12, "M": 8, "L": 0 },
|
||
"rework_count": 3,
|
||
"avg_rounds_M": 2.4
|
||
}
|
||
```
|
||
- rework_count 和 avg_rounds 从项目 project_notes 中解析"实际轮数"字段聚合
|
||
|
||
---
|
||
|
||
### 阶段三:执行质量预测层
|
||
- status: todo
|
||
- complexity: L
|
||
- depends: flywheel-intelligence(阶段二完成且数据积累达标后启动)
|
||
- files: TBD(需 /architect 后确定)
|
||
- acceptance: TBD
|
||
|
||
阶段三方向(待 /architect 设计):
|
||
- 任务完成时长分布(为 S/M/L 定义时间基准)
|
||
- 高风险任务预警(特定文件组合 → 历史高返工率)
|
||
- 跨项目模式库推荐
|
||
|
||
> ⚠️ 阶段三为 L 级复杂度,到时须先走 /architect → /splitter 流程,禁止直接写代码。
|
||
|
||
## 决策记录
|
||
|
||
- 三阶段串行而非并行:数据积累需要时间,阶段二依赖阶段一跑出足够复盘笔记,阶段三依赖阶段二的字段扩展;提前建设无数据支撑的预测层是无效投入
|
||
- 蓝图管理而非单独文档:三阶段是对炼境自身的迭代开发,bluepint 的 depends 字段天然表达阶段间的触发关系,可视化面板也能直接展示当前在哪个阶段
|
||
- 不存 CONVENTIONS 全文历史到 DB:Git 已有版本记录,效果对比通过 usage.json 的 conventions_version 分组已足够
|