# 待决策队列 > **职责分离**: > - **主会话**(汇总/巡检)→ 【写入】"当前队列",登记待人工决策项(背景 + 决策点 + 选项 a/b/c + 推荐)。 > - **用户**(人工)→ 【拍板】选选项或确认推荐,回填理由(可选)。 > - **主会话**(拍板后)→ 决策项回流 [todo.md](./todo.md) 推进 + 迁入"已决归档"。 > > 这里**只放需人工决策项**(产品取舍 / 方向选型 / 排期 / 用户实测澄清)。不放可自主推进待办(见 [todo.md](./todo.md))、不放审查登记(见 [待审查.md](./待审查.md))。 > > **已决策历史**按月归档,见 [07-项目管理/待决策归档/](./07-项目管理/待决策归档/)。拍板后的项迁入对应 `YYYY-MM.md`(随时间增长追加月份文件,防本文件膨胀;文件不存在则新建)。 > 来源:2026-06-16 从 todo.md 抽离③④C类(可自主批 AE-03/复核⑪/UX-04 留 todo 推进)。 ## 决策规则 - 每条须:背景 + 决策点 + 选项 + 推荐 + 关联 todo。 - 用户回填:`✅ 决策:X`(选 + 理由可选)。 - 拍板后:主会话回流 todo 实施 + 迁入 [07-项目管理/待决策归档/YYYY-MM.md](./07-项目管理/待决策归档/)(按月文件)。 - 暂缓项标 ⏸️,不删(条件变化可重启)。 ## 状态图例 🟡 待决 / ✅ 已决(回填决策) / ⏸️ 暂缓(待条件) --- ## 当前队列 ### ③类 — 产品取舍(有 a/b/c 决策点,核心待拍板) #### B-260617-01 run_workflow 作为 AI 工具无法执行 + 无意义重试 + 审批混淆 - **背景**:2026-06-17 实测发现,AI 对话中调用 `run_workflow(task_id, target_status)` 推进任务状态,审批通过后 handler 返回 Err 提示字符串(`tool_registry.rs:530-546`),`ai_approve`(`commands.rs:329-334`)将其包成 `"failed"` tool_result 回传 LLM → LLM 认为失败 → 重试(1/4) → 又进审批 → 循环。三个关联问题: - **问题 1**:run_workflow handler 仅持有 `db: Arc`,无法访问 `AppHandle/State`(registry/event_bus/workflows Repo),返回 Err 提示前端走 IPC。但 `ai_approve` 审批通过后直接 `ai_tools.execute()` 调 handler → 必然 Err。 - **问题 2**:handler Err → tool_result = 错误提示 → LLM 重试 → 同结果循环(工具定义未标 `no_retry`)。 - **问题 3**:前端渲染的是 AI 工具审批(tool_call pending),非工作流 HumanNode 审批。用户批准后工作流引擎从未启动。 - **决策点**:run_workflow 审批通过后如何真正执行工作流? - **选项**: - a: **前端拦截**(`ai_approve` 中识别 `run_workflow` → 不走 `ai_tools.execute` → 直接 `invoke('run_workflow', {task_id, target_status})` → 结果回填 tool_result) - b: **后端注入 State**(`build_ai_tool_registry` 传入 `AppHandle` 使 handler 可直接执行,改 state.rs + tool_registry 签名) - c: **从 AI 工具移除 run_workflow**(仅保留 advance_task 推进状态,工作流由用户手动在前端触发) - **推荐**:**a 前端拦截**(改动最小,`ai_approve` 一处分支即可;方案 b 需改 tool_registry 签名链路较长;方案 c 退回手动不符合 AI 驱动目标)。问题 2/3 随 a 自动消解。 - **关联**:todo B-260617-01 / tool_registry.rs:530-546 / commands.rs:329-334 / audit.rs:590-630 - **状态**:🟡 待决 ### ⏸️ 暂缓(待条件触发) #### T-260614-11 条件表达式引擎升级 - **背景**:df-workflow conditions 仅支持 true/false 字面量,升级为真表达式求值。引擎设计好但无前端 UI 消费方(demoDag edges 无 condition 字段)。 - **决策点**:求值器实现方式?(已暂缓:等工作流真实场景) - **选项**: - a: 手写求值器 - b: 复活 set_skipped - c: default false + warn(均认可) - **推荐**:**⏸️ 暂缓**(无消费方,等 BuildNode 落地跑构建→测试→部署真实场景) - **关联**:todo T-260614-11 - **状态**:⏸️ 暂缓 ### 🟡 待用户实测/澄清(需用户操作,主会话无法代办) #### S-260614-02 审批可见性实测重评 - **待用户操作**:实测 tc 卡片是否渲染。B-01 修复后 pending_approvals 内存态不再被 switch 清空,前端查询有数据,但 state.pendingApprovals 在 AiChat.vue 是否有兜底渲染仍需实测。 - **选项**:A 加兜底渲染 / B 实测确认(去重:AR-3 修完已缓解,改实测重评) - **状态**:🟡 待用户实测 #### T-260614-01 多项 tauri dev 实测 - **待用户操作**:Sprint 9/10/14/15/16/18 多项未 tauri dev 实测 — 评分 IPC 缩放 / update_full / promote_idea / Store getter / token 落库 / 知识库 Tier 1 全栈 / LLM 并发 Semaphore / 知识生命线(#54 跟踪)。 - **状态**:🟡 待用户实测 #### T-260614-02 切对话不中断路由实测 - **待用户操作**:部分场景运行时实测(A 路线场景 2/3)。 - **状态**:🟡 待用户实测 --- ## 已决归档 按月归档(随时间增长追加月份文件,防主文件膨胀): - [2026-06.md](./07-项目管理/待决策归档/2026-06.md) — 2026-06 已决策/已实施/已排期/已解决历史(③类产品取舍 12 项 / ④类设计方向 6 项 / 重投入排期 8 项 / ④类续 5 项 / C类已解决 2 项) > 新月份拍板项累积时,新建 `YYYY-MM.md` 承载。