dev-manager-tauri/.blueprint/modules/flywheel-intelligence.md
lanrtop 3befc50d20 feat(flywheel): L0 从 git 自吸执行质量(commit_metrics)
buff watcher 解析每条新 commit 的 conventional type/scope,将返工(fix)/CI自修信号写入 commit_metrics 表;append_usage_snapshot 的 rework_count 改由此表聚合,取代枯竭的复盘笔记解析。avg_rounds_M 暂留空(需 PR 边界,待档2)。含 parse_conventional 纯解析器 + 11 单测、project_id 索引、事务批量写入、首次限 50 条。
2026-06-19 12:23:40 +09:00

7.4 KiB
Raw Blame History

飞轮智能成长

炼境通过管理项目产生的多维数据反哺自身,形成可自我进化的成长闭环。 核心愿景:让炼境像一把可成长神器,执行数据越积越多,自身越来越好用。

背景

现有飞轮仅覆盖一个维度usage.json 指标 → 梦核分析 → CONVENTIONS 建议。 复盘笔记、任务时长、返工率等执行质量数据已在采集,但没有进入任何反哺路径——数据在"睡觉"。

本模块分三个阶段逐步打通数据→改善的完整闭环。

方向修订2026-06-19

阶段一/二依赖「AI 主动写结构化复盘笔记」作为执行质量数据源。实测发现该进料口几乎枯竭70 条笔记仅炼境自身 4 条结构化,外部项目存量为旧格式,rework_count/avg_rounds_M 长期为 0/null。

根本转向执行质量数据从「AI 主动上报」改为「炼境从 git 被动自吸」——解析 conventional commit 的 typefix=返工)/scope=模块)自动计算,客户端无关、工作流无关。新增 L0 解析层(见任务卡)作为阶段三预测层的数据地基。详见 memory project_gitea_unified_architecture 及 onboarding-pack / gitea-integration 模块。

阶段触发条件

  • 阶段二启动条件:阶段一上线后,梦核输出中稳定出现"高频陷阱摘要"板块,且跨项目复盘笔记数量 ≥ 20 条
  • 阶段三启动条件(已修订)L0 解析层上线后conventional commit 执行质量数据稳定覆盖 ≥ 10 个项目(不再依赖复盘笔记积累时长,见上「方向修订」)

任务卡

阶段一:复盘笔记接入梦核飞轮

  • status: done
  • complexity: M
  • files: src-tauri/src/commands/blueprint_feedback.rs, src/components/blueprint/FlywheelPanel.tsx
  • acceptance: 梦核 prompt 构建时聚合所有项目的 project_notesOpus 输出新增"高频陷阱摘要"板块,列出跨项目重复出现的踩坑模式;本地验证:有复盘笔记的项目数据能正确注入 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 DBcargo 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 预估"对比

阶段二详细设计:

"tasks": {
  ...现有字段...,
  "complexity_dist": { "S": 12, "M": 8, "L": 0 },
  "rework_count": 3,
  "avg_rounds_M": 2.4
}
  • rework_count 和 avg_rounds 从项目 project_notes 中解析"实际轮数"字段聚合

L0Conventional Commit 执行质量解析层(数据地基,先于阶段三)

  • status: done2026-06-19实现见 onboarding-pack 卡 C1+C2
  • complexity: L
  • depends: onboarding-pack项目须先种 lefthook + conventional 规范)
  • files: src-tauri/src/commands/commit_metrics.rs, src-tauri/src/commands/buff.rs, src-tauri/src/commands/blueprint.rs, src-tauri/src/db.rs
  • acceptance: 炼境后端从本地 git 解析 conventional commit —— type=fix 计返工、scope 映射模块、commit 数≈轮数;自动填充 usage.json 的 rework_count/avg_rounds_M/complexity_dist取代「从复盘笔记解析」的枯竭路径CI 自修 commit[DeepSeek-V3]须从返工率剔除squash merge 项目须降级处理

背景实测复盘笔记进料口枯竭70 条仅 4 条结构化)。改由 git 自吸,客户端无关、工作流无关,是阶段三预测层的真实数据基础。


阶段三:执行质量预测层

  • status: todo
  • complexity: L
  • depends: flywheel-intelligence阶段二完成且数据积累达标后启动
  • files: TBD需 /architect 后确定)
  • acceptance: TBD

阶段三方向(待 /architect 设计):

  • 任务完成时长分布(为 S/M/L 定义时间基准)
  • 高风险任务预警(特定文件组合 → 历史高返工率)
  • 跨项目模式库推荐
  • 自动推荐规则置信度更新:梦核读取复盘笔记中的 auto_applied_rules + rule_effectiveness 字段,输出 CONVENTIONS 规则库的 confidence/evidence_count 更新建议;新增规则提案(从高频踩坑模式自动归纳)

⚠️ 阶段三为 L 级复杂度,到时须先走 /architect → /splitter 流程,禁止直接写代码。

决策记录

  • 三阶段串行而非并行:数据积累需要时间,阶段二依赖阶段一跑出足够复盘笔记,阶段三依赖阶段二的字段扩展;提前建设无数据支撑的预测层是无效投入
  • 蓝图管理而非单独文档三阶段是对炼境自身的迭代开发bluepint 的 depends 字段天然表达阶段间的触发关系,可视化面板也能直接展示当前在哪个阶段
  • 不存 CONVENTIONS 全文历史到 DBGit 已有版本记录,效果对比通过 usage.json 的 conventions_version 分组已足够