lanrtop
|
a914c8c219
|
docs(blueprint): unregister_project 登记卫生工具对补卡(事后登记)
Push & PR Check / check (push) Successful in 49s
Push & PR Check / check (pull_request) Successful in 50s
Rules-Applied: R13
|
2026-07-04 15:04:29 +09:00 |
|
lanrtop
|
f03e4178fc
|
feat(mcp): unregister_project agent 按钮——登记卫生工具对补全
Push & PR Check / check (push) Successful in 54s
Push & PR Check / check (pull_request) Successful in 56s
scan_unregistered_projects 发现漏网,unregister_project 清理死账。
薄包装调 delete_project 本体(UI 删除按钮同源),delete_local
硬编码 false——MCP 侧永不暴露删本地文件能力(安全边界)。
工具描述内置约束:删除不可逆,调用前须向用户列清单确认。
Rules-Applied: R12,R13
|
2026-07-04 14:49:05 +09:00 |
|
lanrtop
|
94d8be6eb6
|
docs(blueprint): 阶段三消费者终验通过,flywheel-intelligence 模块收官
Push & PR Check / check (push) Successful in 53s
Push & PR Check / check (pull_request) Successful in 48s
Rules-Applied: R13
|
2026-07-04 14:41:29 +09:00 |
|
lanrtop
|
a77cb4ec96
|
feat(flywheel): ingest_git_history agent 按钮——全量导入双投影
Push & PR Check / check (push) Successful in 53s
Push & PR Check / check (pull_request) Successful in 58s
消费者验证暴露的死角:「全量导入」只有 UI 投影,agent 够不到,
存量 trailer 回填只能靠人点按钮。按双投影原则补 MCP 投影:
- 不传 project_id 遍历所有 win_path 项目跑 ingest_full_git_history,
传则单项目;返回逐项目 imported/skipped 汇总,单项目失败不中断
- 能力本体(ingest_full_git_history)不动,UI 与 MCP 调同一函数
- tools_list_result 断言驻军,92 测试全绿
Rules-Applied: R12,R13
|
2026-07-04 14:36:28 +09:00 |
|
lanrtop
|
a5cb30734d
|
feat(flywheel): 返工热区 UI + get_high_risk_scopes 命令,阶段三收官
Push & PR Check / check (push) Successful in 50s
Push & PR Check / check (pull_request) Successful in 50s
- risk.rs 新增 Tauri command get_high_risk_scopes(薄包装)+ lib.rs 注册
- commands.ts 封装 HighRiskScope 类型与调用(R01)
- FlywheelPanel 新增「返工热区」块:跨项目返工率降序,
分级配色与 classify_risk 阈值一致(≥35% 红 / ≥15% 琥珀)
- 蓝图:P3-A~E 五卡全部 done,附 L 级复盘笔记,模块 progress 98
Rules-Applied: R01,R13
|
2026-07-04 14:22:52 +09:00 |
|
lanrtop
|
66dc6209a8
|
feat(flywheel): 梦核 prompt 注入跨项目高风险 scope 数据段
- risk.rs 新增 high_risk_scopes:样本 ≥5 且有非 CI 返工的 scope
按返工率降序 top 10,项目名 LEFT JOIN project_profiles(缺失回退 id)
- generate_muhe_prompt 新增「跨项目高风险 scope」表格段,附分析指引
(反复返工 scope = 结构性脆弱点 → 固化环节输出预防性规范)
- rule_hits 段 pool() 改 try_pool():原实现测试环境必 panic,
generate_muhe_prompt 因此不可测;改后两段在无 DB 时走占位文案
- prompt 构建测试断言两个数据段存在 + 聚合排序/最小样本过滤测试,92 全绿
Rules-Applied: R06,R07
|
2026-07-04 14:18:04 +09:00 |
|
lanrtop
|
330ddc24dd
|
feat(flywheel): predict_task_risk 风险画像 MCP 工具——预测层落地
- 新增 commands/risk.rs:scope 级(前缀匹配子 scope)+ 文件级
(commit_files JOIN commit_metrics)历史返工率聚合
- classify_risk 分级:返工率 ≥0.35 high、≥0.15 medium、其余 low;
有效返工率取 scope 与文件(样本 ≥3)的较高者
- 可信度防线:样本 <5 或 conventional 率 <0.5(脏历史)→
confidence=low 并附原因 notes,不让脏数据装可信
- CI 自修 commit(is_ci_auto)不计返工,与 L0 口径一致
- MCP 注册 predict_task_risk:agent 开工前按任务卡 scope/files
查询风险,工具清单测试断言驻军
- 7 个单测(in-memory DB + conn 注入),90 全绿
Rules-Applied: R01,R06,R07,R13
|
2026-07-04 14:12:35 +09:00 |
|
lanrtop
|
0ac809970f
|
feat(flywheel): commit_files 采集——文件级风险画像数据地基
- 新表 commit_files(sha,path 联合主键 + path 索引),migration 入 migrate()
- read_git_log 加 --name-only:单次 git 调用同时取 conventional 指标、
Rules-Applied trailer 与触碰文件,零额外进程开销
- parse_git_log_output 纯函数解析 header/文件行混排输出(含 \x1f 的行
是 header,其后非空行归属该 commit)
- record_commit_entry 落库文件清单(INSERT OR IGNORE 幂等),buff 增量
与 ingest 全量两条链路自动覆盖,无需各自改动
Rules-Applied: R05,R06,R07
|
2026-07-04 14:07:57 +09:00 |
|
lanrtop
|
08e8d6d719
|
fix(flywheel): 修复 Rules-Applied trailer 死链,git log 原生提取 + UPSERT 回填
R1 管道自建成以来是死链:buff 与 ingest 两处 git log 都用 %s 只取
subject,trailer 在 body 里永远读不到(炼境自身 11 条带 trailer 的
commit,DB rules_applied 全空);单测喂全文所以全绿。
- GIT_LOG_FMT 加 %(trailers:key=Rules-Applied,valueonly,separator=%x2C),
git 原生 trailer 解析,保持单行一条记录
- read_git_log 升为增量/全量统一取数入口(GitLogRange),buff 的
get_new_commits 委托之,消灭两处重复 format 定义
- record_commit_entry + upsert_metrics:ON CONFLICT 仅回填
rules_applied IS NULL 的存量行,绝不覆盖已有值,回填幂等
- ingest_full_git_history 改走 record_commit_entry,消灭第三处重复 INSERT
- get_new_commits 的 WSL 分支随 2026-07-04 裁决顺手清理
- 测试:真 git 仓库 e2e trailer 提取回归 + UPSERT 四态语义,82 全绿
Rules-Applied: R06,R07,R13
|
2026-07-04 14:04:20 +09:00 |
|
lanrtop
|
05d7673990
|
feat(onboarding): T2+B3 复杂度感知分支策略 + agent 按钮载体声明体系
T2 git-workflow 模板升 v1.3.0:
- 分支策略从强制 dev→main 改为复杂度感知
(简单改动直推 main/master,功能性改动开 feat/<name> 分支+PR)
- PR 创建 MCP 示例 head 从 "dev" 改为 "feat/<name>"
B3 agent 按钮载体声明闭环:
- CONVENTIONS.md manifest.yaml 规范新增 agent_button_carrier 字段
(tauri/http/cli/playwright,新建蓝图时必填)
- splitter SKILL.md 三级优先载体继承:manifest字段 > architect声明 > 就近推断
- 炼境自身 manifest.yaml 补 agent_button_carrier: tauri
- AGENTS.md.tmpl 项目概况 TODO 提示新增载体字段填写指引
Rules-Applied: R04,R13
|
2026-07-04 13:44:02 +09:00 |
|
lanrtop
|
2116e54e29
|
feat(mcp-inject): 注入时同步注册全局 ~/.claude.json + liangjing.json 补 group_id
- inject_project_mcp 末尾新增 try_register_globally 调用,通过
find_claude_bin 自动定位 claude CLI 并执行 claude mcp add -s user,
让新接入项目的产品组 MCP 立即对 Claude Code 可用
- write_liangjing_context 增加 group_id 参数,子项目读取后可直接
构造 lian-jing-{group_id} ToolSearch 查询,无需额外推断
- try_register_globally 为 best-effort:CLI 未找到或调用失败时
仅写日志,不影响 settings.json 注入结果
|
2026-07-04 13:29:40 +09:00 |
|
lanrtop
|
ccbc26acf3
|
feat(mcp): 新增 scan_unregistered_projects 工具,扫描文件系统找出未登记炼境的本地项目
|
2026-07-04 12:19:12 +09:00 |
|
lanrtop
|
95310890a3
|
docs(agent-button): 删除说谎的 pnpm test 按钮,CONVENTIONS 前端测试规范加 Tauri 项目类型限定
|
2026-07-04 12:12:29 +09:00 |
|
lanrtop
|
3df7550337
|
fix(onboarding): lefthook commit-msg 单行避免 Windows shell {-block 解析失败
|
2026-07-04 12:02:49 +09:00 |
|