Commit Graph

83 Commits

Author SHA1 Message Date
e0ffd98223 重构: 拆audit.rs第一批reason helper(strategy)
- audit.rs → audit/mod.rs(959→812行) + 新建 audit/reason.rs(167行)
- 抽离 reason helper: resolve_project_label/resolve_task_label/build_approval_reason(3 fn自成闭包, pub(super))
- re-export 调用方零变更(commands::ai::audit::* 路径透明, 4处调用方+mod re-export核验)
- F-09 batch2 per_conv 保留(本批只搬 reason helper, conv_id路由不动)
主代兜底: cargo check --workspace 0 + test 98 + grep mod reason/use印证
strategy: 单批1-2文件原子; audit/mod.rs余812行(后续批restore/audit_finalize/find_cached)
2026-06-19 04:11:47 +08:00
96a05638b1 重构: 拆agentic.rs第一批GeneratingGuard(strategy自底向上)
- 新建 agentic/guard.rs(69行): GeneratingGuard struct+new/reset/disarm/Drop(F-09 batch2 per_conv双写语义保留, pub(super)可见性)
- agentic.rs 1221→agentic/mod.rs 1165行: mod guard + use GeneratingGuard + 删原定义
- loop主体(run_agentic_loop/try_continue/stream_one_provider/compress)原位保留(后续批,高风险)
helpers未建: 无独立纯helper可抽(DEFAULT_*被state.rs引用留原位, PROTECT_COUNT loop绑定)
主代兜底: cargo check --workspace 0 + test 98 + grep guard抽离/mod.rs use印证
strategy: 自底向上, 单批1-2文件原子, loop主体留后续批(行为敏感需充分测试)
2026-06-19 03:37:28 +08:00
f1aa7ac33d 重构: commands拆分config+skills域·commands.rs 92KB拆分完整(strategy)
- 新建 commands/config.rs(89行, 4 IPC: ai_list_skills/ai_set_concurrency_config/ai_set_agent_max_iterations/ai_set_agent_max_retries)
- commands/mod.rs 99→34行(收敛re-export only, 无IPC函数体)
- re-export三级透传(chat/conversation/provider/config),lib.rs invoke_handler+前端零改动
commands.rs 92KB拆分完整: 原1829行God→5文件(chat 1147+conversation 336+provider 348+config 89+mod.rs 34 re-export)
主代兜底: cargo check --workspace 0 + test 98 + cat mod.rs re-export only印证
strategy全程: 分批1-2文件原子操作(chat→conv→provider→config四批); 零调用方预留保留
2026-06-19 03:26:44 +08:00
6769100b57 重构: commands拆分provider域(strategy单批)
- 新建 commands/provider.rs(348行, 7 provider/model IPC + mask_api_key/normalize_provider_type helper)
- commands/mod.rs 418→98行(删provider域 + re-export + 清理imports)
- re-export三级透传(chat/conversation/provider),lib.rs invoke_handler+前端零改动;FR-S1密钥/F-260614-04c池配置/F-01探测保留
主代兜底: cargo check --workspace 0 + test 98 + grep re-export三域印证
进度: chat+conversation+provider,余 skills+config(4 IPC,最后批→mod.rs收敛re-export only)
2026-06-19 03:23:09 +08:00
86f6c9685b 重构: commands拆分conversation域(strategy单批1-2文件)
- 新建 commands/conversation.rs(336行, 8 conv IPC: create/list/switch/delete/rename/archive/set_pinned/export)
- commands/mod.rs 725→418行(删conv域 + pub mod conversation re-export三级透传)
- lib.rs invoke_handler + 前端零改动;F-09 batch4决策e保留(create不杀旧loop/switch删readonly)
主代兜底: cargo check --workspace 0 + test 98 + grep 8IPC/re-export印证
strategy: 单批1-2文件原子操作;进度 chat+conversation,余 provider/skills/config
2026-06-19 03:19:48 +08:00
e6dbb14c5d 重构: commands.rs拆分chat域(strategy单批1-2文件)
- commands.rs → commands/mod.rs(1829→725行) + 新建 commands/chat.rs(1147行, 13 chat IPC + finalize_pending_placeholders + PendingToolCallInfo)
- re-export三级透传: chat::* → commands::* → ai::*(lib.rs invoke_handler 9处零改动 + 前端零改动)
- 签名/行为原样搬迁(F-09 batch4 conv_id 决策e保留);零调用方预留保留
strategy: 单批1-2文件防上下文溢出 + 原子(新文件→旧改→编译验证)
主代兜底: cargo check --workspace 0 + test 98 + grep 13IPC/re-export三级印证
杂项销账: B-260617-11 tauri.conf.json ["nsis"]已入库关闭(WATCH跨平台) + CR-07 batch4待审登记
2026-06-19 03:15:03 +08:00
d899c58682 重构: F-09 batch4 启用多会话上线(决策e真并发·F-09完整)
- IPC签名加conv_id: ai_is_generating/ai_chat_send/ai_chat_force_send/ai_chat_stop + 内部移除active一致性校验(后台conv可操作)
- 删switch readonly分支 + 删ai_conversation_create强制结束旧loop(决策e,切走旧loop不退出)
- 删双写桥接+顶层字段: messages/generating/stop_flag/notify/iteration_used/agent_language/model_override/session_trust全删,per_conv唯一真相源 + 删双写代码(全模块)+ 删fallback读 + pending_approvals retain目标conv
- 前端: api/ai.ts+useAiSend/useAiWindow传conv_id
保留: session_state(SW预留标allow)/readonly(前端不读);零调用方预留按用户指导保留
主代兜底: cargo check --workspace 0 + vue-tsc 0 + test 98 + grep顶层删除/per_conv唯一印证
F-09完整(batch1 PerConvState+batch2迁移+batch5限流调整+batch8恢复+batch4上线);双会话人工验收留用户
2026-06-19 03:03:48 +08:00
2b40f65ef2 修复: BUG-260619-06 L0 clear致冷启动审批丢失(方案A retain)
- lib.rs:62 clear → retain(!recovered): 仅清非recovered(本次会话/HMR死pending),保留restore重建(recovered=true audit.rs:331)
- cr06-review跨版本git diff核验: clear批2已有(B-260616-01 d2cb38c),batch8仅合并位置非新增 → 批2+跨批遗留,非batch8回归(CR-06 PASS)
- 问题真实(冷启动restore填充后clear清空→审批丢失),方案A修复对齐switchConversation retain保护意图
主代兜底: cargo check --workspace 0 + test 98
2026-06-19 02:42:28 +08:00
7c708a6e01 优化: F-09 batch5调整 删global会话级限流(用户决策不设并发会话上限)
- agentic.rs: 删loop入口acquire_global(会话数不限) + per_conv保留(单对话内限流permits=2)
- state.rs: global回归LLM调用并发限流原义(5处单次调用点+stream_llm防provider429),非会话数上限
用户决策"不设并发会话上限",token暴增接受;主代兜底cargo 0+test98+grep印证
2026-06-19 02:39:39 +08:00
6ad4ec2848 重构: F-09 batch8 启动恢复多conv restore + L0清残留(纯后端,F-09后端完整)
- audit.rs restore_pending_approvals: 多conv分配(按conversation_id分组惰性建/复用PerConvState,无主None不建R-9) + 2单测(分配不变量/全None无per_conv)
- lib.rs L0握手: 遍历per_conv清多conv残留generating(dirty_convs+逐个复位+各发AiCompleted补偿) + active兜底
与双写兼容(顶层双写复位),不改IPC签名/前端/顶层字段
主代兜底: cargo check --workspace 0 + test 98 + grep restore多conv/L0遍历印证
F-09后端完整: batch1 PerConvState + batch2 per-conv迁移 + batch5 限流 + batch8 恢复; batch4(启用·前后端)待用户
2026-06-19 02:26:24 +08:00
d96041721a 重构: F-09 batch5 llm_concurrency会话级改造(决策c)
- state.rs: per_conv HashMap<conv_id,Semaphore>(每对话permits=2) + per_conv_permits热改 + acquire_per_conv(conv_id) + release_conv
- agentic.rs: loop入口acquire_global+acquire_per_conv(conv_id)整loop持有(会话级并发上限3) + 删每轮acquire/drop
- compress/title/knowledge_inject: acquire_per_conv(conv_id)+签名conv_id
- project.rs: 扫描合成key + ai_conversation_delete release_conv
global: LLM调用并发→并发会话数上限;F-260616-12 retry permit自洽
主代兜底: cargo check --workspace 0 + test 96 + grep印证
2026-06-19 02:12:08 +08:00
2a4d745c5b 重构: F-09批2 调用方迁移per-conv(双写桥接共存期)
- agentic.rs: GeneratingGuard加conv_id + 三处退出校验改conv存在性(决策e) + stop_flag/notify/messages/iteration per-conv + try_continue加conv_id参数
- commands.rs: IPC写路径双写桥接(per_conv新真相源+顶层双写,批4删) + ai_is_generating读per_conv fallback顶层
- audit/conversation/title/knowledge_inject/lib.rs: per_conv读写迁移
- conv()/conv_read()去allow(批2有调用方)
共存期双写: per_conv主+顶层双写兼容批4前IPC,批4签名改后删顶层
主代兜底: cargo check --workspace 0 + test 96 passed + grep三处退出/GeneratingGuard/双写印证
2026-06-19 02:01:06 +08:00
2c8764abee 重构: crud.rs按表拆分(SMELL-P1-9) + F-09批1 PerConvState数据结构
- SMELL-P1-9: crud.rs 2212行→crud/6文件(mod/settings/project_repo/task_repo/conversation_repo/idea_repo)
  re-export pub use *_repo::* 零调用方改动,宏 pub(crate) use + 子模块 use super::impl_repo
  基线测试锁12表白名单+13Repo构造
- F-09 批1: PerConvState struct(9字段对齐AiSession::new)+AiSession.per_conv HashMap+conv()/conv_read()访问器+3单测
  纯新增无行为变化,b-1主代自主裁决采纳,批2迁移承接
主代统一兜底: cargo check --workspace 0 + df-storage 35+11 + devflow 96 passed
2026-06-19 01:34:59 +08:00
0142654be3 修复: 流式重试N+1气泡根治(UX-260618-15第一批方案A)
- stream_recv: InitFailed加error字段,5处重试路径移除AiError emit(retryable交agentic统一emit)
- agentic: 重试loop只emit AiStreamRetry,Fatal/全candidate耗尽emit最终AiError(单气泡聚合)
- useAiEvents: AiStreamRetry改首次创建+后续更新(N+1气泡消除)
- 注释残留修正(stream_recv :251/:299 旧"emit AiError"→"返回InitFailed")
N+1独立气泡降为「1重试气泡+1最终错误气泡」
2026-06-19 01:07:50 +08:00
1dc8b12ec4 修复: aichat advance_task渲染显任务名 + 审批防双击 + time.ts销账
- UX-260618-14: advance_task 工具结果/审批卡显任务名替代UUID
  前端 ToolCard 取 r.title fallback r.id + TASK_ID_TOOL_ARG 审批卡 task_id→title 回显 + i18n
  后端 audit resolve_task_label 查 tasks 表(原误查 projects恒报不存在) + 删 tool_display_hint 短路让模板生效
- UX-260618-16: time.ts formatDate .value 已修(CR-24/25闭环),漏销账补登
- UX-260618-17: ProjectDetail handleApprovalMulti 补 submitting try/finally + 模板联动防双击
2026-06-19 00:52:20 +08:00
60b01d03ee 重构: tool_registry拆分及多批改进 2026-06-19 00:10:14 +08:00
a2871a66e0 优化: AI Chat全栈多批审查修复与架构清理(risk_level清理/路由解耦/工具渲染/测试补测/死代码) 2026-06-18 22:57:19 +08:00
f6e4e824fa 修复: 补提 adversarial+project CompletionRequest reasoning_content 字段(74003bc 遗漏) 2026-06-17 18:44:28 +08:00
74003bc04f 修复: DeepSeek reasoning_content 全链路透传(跨6 crate补字段+映射+agentic loop累积回传) 2026-06-17 18:08:04 +08:00
924158cff2 修复: force_send单锁竞态+classify unknown不重试(撤销误判)+UX交互批 2026-06-17 14:31:47 +08:00
6b67214395 修复: AI工具OOM/路径遍历+续跑锁收敛+UX交互批 2026-06-17 14:07:16 +08:00
a622bdca61 修复: 队列发送失败回填不丢消息+池权重revert+lang解析DRY+注释变量名修正 2026-06-17 03:55:30 +08:00
bac3c76fa2 修复: B-03b-R10③工作流事件补execution_id治本并发串扰(emit填+消费exec_id守卫) 2026-06-17 03:36:38 +08:00
4317d02e0f 新增: F-05多模态Phase2c闭环(IPC接parts+api透传+doSend传参) 2026-06-17 03:22:20 +08:00
e3cd44802a 新增: F-05多模态Phase2a后端(ContentPart+parts字段+provider图片块+truncate防撑爆) 2026-06-17 03:09:10 +08:00
4be15912cd 重构: df-core改名df-types(类型库语义准+全workspace机械改名54处) 2026-06-17 02:44:34 +08:00
2c8004df65 优化: CR-53/54审查回填PASS+CR-55/56/57登记+CR-53-1注释修正(并行化非移锁外) 2026-06-17 02:29:12 +08:00
80c0955a1a 新增: F-04b多provider fallback切换(stream_one_provider+候选链+resolved_model重算) 2026-06-17 02:26:22 +08:00
b3684f4d1f 新增: F-04c后端(provider池enabled/weight更新IPC+set_caps启动接入) 2026-06-17 02:26:22 +08:00
247dc5da4a 修复: B-21工具卡重复治本(audit tc_list按id去重保证emit唯一) 2026-06-17 02:26:22 +08:00
79b6a43095 新增: F-04多Provider负载均衡池(数据层+选择器+并发原语)+CR-52白项 2026-06-17 02:04:58 +08:00
332a6bba1a 修复: CR-51 trust-hit持锁阻塞IPC(audit execute移锁外spawn+回填持锁) 2026-06-17 02:04:01 +08:00
e23b316faf 修复: B-260617-01 run_workflow审批执行(抽取run_workflow_inner+ai_approve后端分支) 2026-06-17 01:39:28 +08:00
6ec191e750 新增: AE-2025-04会话级授权(TrustKey目录级+同会话同类自动放行) 2026-06-17 01:29:30 +08:00
0202b5195e 新增: F-15阶段3 agentic loop自动压缩(loop顶部检测+压缩+降级原裁剪) 2026-06-17 01:29:29 +08:00
4194842561 新增: F-15阶段2手动上下文管理(2 IPC+3事件+前端按钮+status渲染) 2026-06-17 01:09:41 +08:00
4c84fbc1b6 新增: F-01阶段6 AiChat模型下拉+override穿透 2026-06-17 00:50:47 +08:00
63bff8bf96 新增: F-15上下文压缩基础(compress_prompt四段式+compress_via_llm+context辅助方法) 2026-06-17 00:50:47 +08:00
2446d1b876 新增: patch_file支持行号区间和锚点定位 2026-06-17 00:33:49 +08:00
2ddfea67c7 新增: F-01阶段5模型路由调用点接入 2026-06-17 00:33:44 +08:00
a26b86e003 新增: F-01模型拉取IPC+Settings拉取UI(FR-S1密钥内存解析闭环) 2026-06-17 00:14:38 +08:00
b3e78e6061 新增: F-01模型能力阶段1+2(ModelConfig数据模型+model_probe探测器+df-storage兼容V18) 2026-06-16 23:33:45 +08:00
766f235ab7 重构: secret纯密钥逻辑下沉df-storage(方案B避循环依赖,12调用点零改) 2026-06-16 22:57:43 +08:00
c10adaf0b0 新增: AiNode自审ai侧(AiNode持db写产出+ai_self_review节点+DAG透传) 2026-06-16 22:40:55 +08:00
539b5ed63e 新增: TaskRecord加output_json产出字段+V17迁移(决策a AiNode自审闭环) 2026-06-16 22:29:21 +08:00
129f0f0156 优化: 对抗评估clamp去冗余+JSON提取正则兜底+update_task注释对齐status收口 2026-06-16 22:20:14 +08:00
b94e74a96d 新增: 推进链阶段3收口(advance_task/run_workflow工具+status状态机收口) 2026-06-16 21:20:41 +08:00
dfe0096498 新增: F-03对抗评估接LLM+F-02纯技能调用标题+i18n@转义 2026-06-16 21:07:42 +08:00
2069f79198 重构: df-ai-core trait下沉拆crate+导入历史项目批量扫描 2026-06-16 20:19:55 +08:00
d00b30f0ba 重构: AI聊天可靠性批次(审批累计计数/write_file diff预览/会话隔离补清/token缓存) 2026-06-16 19:56:29 +08:00