经代码核验,五项候选待办实际上都已实现或已满足决策,本次仅 同步文档关闭: - 工具卡片分组标题:已实现文件路径摘要展示(跨轮自动收起保留 作为低优先增量) - 重试持锁问题:多会话并发改造后全局锁已移除,重试仅持单会话锁 (同循环内合理),原说法已过时 - 对抗式评估批量命令:单项评估接口已接入,批量评估无前端消费方 暂不做(避免过度设计) - 残留诊断代码:聊天命令已无硬编码绝对路径,调试输出已降级为 普通日志 - 工程内路径授权政策:用户决策确认为白名单制(工程外走三档授权 + 系统目录黑名单兜底),已落地
4.1 KiB
4.1 KiB
DevFlow 待办
灵感模块功能完善(合并推进)
诊断发现的 P0-P2 问题合并为单次任务,逐项推进。
排除项:#3 status 无状态机(暂保留状态可跳跃迁移,不处理)。
P2 — 前端 / UX
- #12 前端 filter 改后端查询 ✅ 团队决策已落地:
hot/pending保留前端 filter(keyword/order_by 已下沉后端)。
AI 对话目标丢失(诊断待办)
诊断报告:
docs/02-架构设计/专项设计/AI对话目标丢失诊断-2026-06-26.md实测会话54c8b5bd:480 万 token,原始目标消息被压缩出局,LLM 尾部盲搜死循环。
- G1 目标钉扎 ✅ 代码已落地(
GOAL_PIN_ENABLED=true),pinned_goals 入口拼入 system_prompt。PerConvState.pinned_goals: Vec<String>+ chat.rs 三处提取(追加去重,支持累积多目标)。 - G2 探索熔断 ✅ 代码已落地(
STALL_BREAKER_ENABLED=true,STALL_BREAKER_THRESHOLD=3),stall_count + is_empty_tool_result 完整实现。 - G4 话题标记修正 ✅ 代码已落地(
TOPIC_MARKER_GOAL_AWARE=true),pinned_goals 非空时 take 后丢弃跳过 insert。
落地开关(均可单点回退):
GOAL_PIN_ENABLED/GOAL_INJECT_BANNER/GOAL_MAX_CHARS=500/MAX_GOALS=5/STALL_BREAKER_ENABLED/STALL_BREAKER_THRESHOLD=3/STALL_BREAKER_WARN_FIRST/STALL_BREAKER_GOAL_REMIND/TOPIC_MARKER_GOAL_AWARE。全置 false 等价改动前。 方案源:设计 workflowwf_09a0385f-2ee综合裁决(system_prompt 字符串注入 > insert_at(0))。
对抗式评估接入(引擎已实现 → IPC + 前端打通)
引擎代码已就绪(
df-ideas/src/adversarial.rs+adversarial_helpers.rs), 但 IPC 层和前端零引用,用户无法使用。需补接入层。
后端 — IPC 接入
- A2 批量评估命令 ⏸️ 暂不做:单 idea 评估
evaluate_ideaIPC 已接入(AdversarialEngine),批量评估当前无前端消费方,属过度设计。
最新对话分析-2026-06-28:死锁与审批卡死
分析来源:
devflow-trace.log+devflow-dev.db最新对话d9aef24f(语音输入应用需求)。 核心表现:7 次工具连续失败后 L1 断路器熔断,1 条 pending 审批导致全链路死锁。
P0 — 审批 pending 死锁
- 审批超时自动取消 ✅ 已实现(15min 默认,可配置):
- 后端
agentic/approval_timeout.rs::cleanup_expired_approvals在try_continue_agent_loop入口检测超时,超时审批自动取消 + emit AiApprovalResult + audit_finalize 记入审计。 PendingApproval.created_at记录创建时刻(SystemTime,重启恢复的按重启时刻计)。AppState.approval_timeout_minutes+reload_approval_timeout()从 Settings KVdf-approval-timeout启动恢复(与前端 AdvancedSection.vue 同 key,值为毫秒)。- IPC
ai_get_approval_timeout/ai_set_approval_timeout(0=禁用,范围 0-1440 分钟)。 - 前端已有 Settings UI(0/5/15/30/60 分钟 select),前端定时器负责运行期会话内超时,后端负责重启恢复场景兼底。
- 后端
create_project自动创建目录 ✅ 已实现(project.rs:137):有 path 且目录不存在时自动create_dir_all,死锁链已消除(非参数控制,直接自动创建)。
P1 — Windows 平台兼容
run_command失败追加 shell 适配提示 ✅ 已实现(tool_registry.rs:2351-2358):Windows 下 tool result 尾部追加 PowerShell 适配提示(路径引用、&&→;)。- PowerShell 反斜杠自动转义 ✅ 已修复(
tool_registry.rs:2306-2328注释说明根因):serde_json 已正确还原反斜杠,不做额外转义,PowerShell 正确接受裸反斜杠路径。
P2 — 标题 LLM 失败
- 标题摘要合并连续同 role ✅ 已实现(
title.rs:79-83):merge_consecutive_roles发 LLM 前合并相邻 user/assistant,已覆盖 Anthropic/GLM 1214。
P3 — 其他
- migration V33 ✅ 已实现(
migrations.rsmigrate_v33):workflow_executions加updated_at列 +ai_conversations加pending_approvals(审批重启恢复)。 - L0-handshake 防抖 ✅ 已实现(
lib.rs:73-82):3s 内重复ai-client-ready跳过。