From 13ecd7eba4ae5460d27ae34af4a7c24f18b7104e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=9D=E5=B0=98?= <237809796@qq.com> Date: Sat, 15 Aug 2026 18:46:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96:=20=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E8=B6=85=E6=97=B6=E5=80=92=E8=AE=A1=E6=97=B6(60s=E5=8F=98?= =?UTF-8?q?=E7=BA=A2)+=E5=88=86=E7=A6=BB=E7=AA=97=E5=8F=A3=E7=9B=91?= =?UTF-8?q?=E5=90=AC=E6=A0=B8=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/todo.md | 2 +- src/components/ToolCard.vue | 10 ++++++-- src/composables/ai/aiShared.ts | 33 +++++++++++++++++++++------ src/composables/ai/useAiWindow.ts | 8 +++++++ src/composables/ai/useToolApproval.ts | 17 ++++++++++++++ src/i18n/en/aiTool.ts | 2 ++ src/i18n/zh-CN/aiTool.ts | 2 ++ 7 files changed, 64 insertions(+), 10 deletions(-) diff --git a/docs/todo.md b/docs/todo.md index 4e74768..1ef0bde 100644 --- a/docs/todo.md +++ b/docs/todo.md @@ -309,7 +309,7 @@ graph TD ### ✅ 2026-06-24 aichat 可靠性修复(消息重叠×5 + 授权弹窗卡死 + 工具执行心跳误报 · 诊断workflow→论证workflow) > 剩余低优 [ ](非阻断): -> - [ ] BUG-260624-02 残留:审批超时倒计时 UI(5min 无倒计时,ToolCard pending 态显 mm:ss 到期前 60s 变红)+ 核 detached 窗口 emit 作用域(分离窗口是否独立 startListener,否则 ai-pending-arrived 收不到) +> - [x] BUG-260624-02 残留 ✅ 已销账(2026-08-15):ToolCard pending 态倒计时落地(`_approvalTimers` 升级携带 startedAt/timeoutMs + `getApprovalRemainingMs` 真值起点,expireSecs/expireLevel computed,≤60s `.is-urgent` 红;不限时回退正计时;i18n expireIn zh/en)+ detached 窗口核验无缺口(AiDetached→AiChat 独立 startListener,ai-chat-event app 级广播,主窗口 detach 时 stopListener 不竞态,结论注释 useAiWindow:107-115) > - [x] F-09 根因:streaming/currentText 全局单例改 per-conv ✅ **2026-08-07 核验销账**(per_conv HashMap + 前端 convStates Map enum 轨 + AiConvStateChanged 事件 per-conv 路由,根治多会话串扰)(根治多会话串扰,见 docs/待决策.md) > - [ ] CR-260622-01-P2-2 [P2低优·评估降级] — **HTML/markdown/JSON 等非代码文件无 session 级缓存**。**2026-06-24 评估**:已有 `TOOL_RESULT_COMPRESS_ENABLED`(mod.rs:98/1029-1078 view-only 摘要,>2KB tool_result 压缩,LLM 视图摘要非全文回灌 prompt)部分缓解;read_symbol 治代码文件(主场景,降 24.4x)。非代码文件完整 session 缓存(path→hash+content+patch失效)设计复杂 + LLM patch 后重读确认行为不确定(缓存命中提示可能不够 LLM 仍重读),归 B 路线 prompt 策略(约束 patch 后不重读)更合适,工具侧完整缓存低优暂缓。 diff --git a/src/components/ToolCard.vue b/src/components/ToolCard.vue index 922dcbb..7ed3c8a 100644 --- a/src/components/ToolCard.vue +++ b/src/components/ToolCard.vue @@ -40,8 +40,12 @@