diff --git a/docs/design/architecture-v3.0.md b/docs/design/architecture-v3.0.md index fd5e6e6..1c39646 100644 --- a/docs/design/architecture-v3.0.md +++ b/docs/design/architecture-v3.0.md @@ -1475,120 +1475,141 @@ PRAGMA busy_timeout=5000 # 写锁等待 5s ### 21.2 各阶段详细规划 -#### T1: 一致性回溯 + 清理 ✅ 已完成 +#### T1: 文档对齐 + Bug 清理 ✅ 已完成 **周期**: 2026-05-27 ~ 2026-05-28 **完成内容**: -- ✅ architecture-v3.0.md 回溯性架构文档(20 章节,58KB) +- ✅ architecture-v3.0.md 回溯性架构文档(20+ 章节,58KB) - ✅ 7 条分类原则逐项审查 -- ✅ BUG-22: `list_mail` 的 `from` 过滤改为 SQL WHERE -- ✅ OBS-25: `send_mail` 的 `from` 统一用 `assigned_by` -- ✅ OBS-26: polling 时 Mail Tab 加载修复 +- ✅ A3: 状态机文档对齐(以代码为准更新) +- ✅ A4: `_generate_title()` 保留,标注未来替换成本地 LLM +- ✅ B10: P3 遗留 404/4xx 已修复(之前已修) +- ✅ B11: BUG-22/OBS-25/OBS-26 修复 - ✅ 广播认领从"未实现"纠正为"已实现"(司马懿评审纠正) -- ✅ 5 个设计矛盾逐个解决 +- ✅ 5 个设计矛盾逐个解决(§19.1~19.5) - ✅ §17 待实现项分级(P1~P4) - ✅ Gateway Watchdog 设计 + 部署 - ✅ 司马懿评审通过 -#### T2: Daemon 退化 + 持续指挥 📋 待开始 +#### T2: 持续指挥 + 动态规划 📋 待开始 + +**编号**: A1, A2 **核心目标**:庞统从"被动 delegate"变为"持续在线指挥官" -**对应 PRD**:B2(编排层是 AI 指挥官)、C3(持续指挥)、C2(动态规划) +**对应 PRD**:B2(编排层是 AI 指挥官)、C2(动态规划)、C3(持续指挥) **关键变更**: 1. 庞统持续指挥 session(当前只在 delegate 时被 spawn,无持续 session) 2. 动态规划(活的执行方案,全程可调) -3. Daemon 角色退化(从调度器 → 投递员 + 看护人) +3. Daemon 角色退化(从调度器 → 投递员 + 看护人)(§6.5) 4. Agent 自主决策(读黑板 → 想 → 干 → 写回) **涉及文件**: `src/daemon/ticker.py`、`src/daemon/dispatcher.py`、`src/daemon/router.py` **前置条件**: T1 完成 ✅ -**对应待实现项**: §17 #2(动态规划)、§17 #3(持续指挥) +**来源**: v2.8-direction-notes §一~§二 + §17 #2/#3 -**对应设计方向**: §6.5(Daemon 退化 + Agent 进化) +#### T3: 主动汇报 + 需求探索触发 📋 待开始 -**来源**: v2.8-direction-notes §一~§二 +**编号**: B1, B2 -#### T3: Prompt 进化 + Handoff + 知识注入 📋 待开始 +**核心目标**:补齐 PRD 四相循环的 Phase 1 和 Phase 4 -**核心目标**:让 Agent 拥有自主决策的 prompt + 结构化交接能力 + 领域知识 - -**对应 PRD**:B3(共享意识)、C6(上下文管理) +**对应 PRD**:B1(AI 帮人想清楚要什么)、B4(主动汇报) **关键变更**: -1. Prompt 进化:从固定步骤 → "身份 + 目标 + 能做什么 + 约束 + 交接责任"(§10.4) -2. Handoff 上下文:新建 `schemas/handoff.schema.json` + bootstrap 增强(§10.5) -3. 知识注入:spawner 新增 `_inject_wiki_knowledge()`(§10.6) -4. 新建 `prompt_templates/executor.md`、`reviewer.md` +1. 需求探索自动触发:Skill 已有(requirement-clarification + requirements-analysis),缺 Daemon 自动触发机制 +2. 主动汇报 AI 摘要:SSE 推送已有,但推送原始事件,不是 AI 自然语言摘要 -**涉及文件**: `src/daemon/spawner.py`、`src/daemon/bootstrap.py`、`schemas/`(新建) +**涉及文件**: `src/daemon/ticker.py`、`src/daemon/sse.py`、前端 -**前置条件**: T2 完成(Prompt 进化依赖 Daemon 退化方向确定) +**前置条件**: T2 完成 -**对应待实现项**: §17 #14(prompt_templates) +#### T4: 审查体系完善 📋 待开始 -**对应设计方向**: §10.4(Prompt 进化)、§10.5(Handoff)、§10.6(知识注入) - -**来源**: v2.8-direction-notes §三(2)(3)(4) + §六 - -#### T4: 质量体系增强 📋 待开始 +**编号**: B3, B4, B5, C1 **核心目标**:补齐质量门控的自动化环节 **对应 PRD**:C4(质量门禁)、C9(安全红线) **关键变更**: -1. Runaway Guard:per-task max_ticks + 超限暂停告警(§14.3) -2. 方案审查自动流程:reviews 表支持 plan_review,但 Daemon 不自动触发(§17 #8) -3. 审查协议注册表:review_protocols/ 目录创建(§17 #9) -4. verification_commands:验证脚本层(§17 #11) +1. 方案审查自动流程:reviews 表支持 plan_review,但 Daemon 不自动触发 +2. 审查协议注册表:review_protocols/ 目录创建 +3. verification_commands:验证脚本层 +4. Runaway Guard:per-task max_ticks + 超限暂停告警(§14.3) +5. 对抗辩论模式:high 风险任务自动 spawn 正反方 **涉及文件**: `src/daemon/ticker.py`、`src/daemon/review.py`、`review_protocols/`(新建) -**前置条件**: T3 完成 +**前置条件**: T2 完成 -**对应待实现项**: §17 #8/#9/#11、§14.3 +#### T5: 上下文管理 📋 待开始 -**来源**: v2.8-direction-notes §三(5) + §17 +**编号**: B6, B7, D1, D4 -#### T5: 需求探索 + 主动汇报 📋 待开始 +**核心目标**:Agent 拥有自主决策的 prompt + 结构化交接 + 领域知识 + 解决上下文膨胀 -**核心目标**:补齐 PRD 四相循环的 Phase 1 和 Phase 4 - -**对应 PRD**:B1(AI 帮人想清楚要什么)、B4(主动汇报)、C1/C7 +**对应 PRD**:B3(共享意识)、C6(上下文管理) **关键变更**: -1. 需求探索自动触发:Skill 已有(requirement-clarification + requirements-analysis),缺 Daemon 自动触发机制(§17 #1) -2. 主动汇报 AI 摘要:SSE 推送已有,但推送原始事件,不是 AI 自然语言摘要(§17 #4) -3. Dashboard AI Native 化:§11.3 +1. prompt_templates 角色模板:创建 executor.md / reviewer.md / planner.md(§10.4) +2. Prompt 进化:从固定步骤 → 自主决策(§10.4) +3. Handoff 上下文:handoff.schema.json + bootstrap 增强(§10.5) +4. 知识注入:spawner 新增 `_inject_wiki_knowledge()`(§10.6) +5. CLI Schema 校验:schemas/ 目录 +6. executor-prompt-design 3 个漏洞修复(D1) +7. Agent 上下文膨胀解决方案(D4) -**涉及文件**: `src/daemon/ticker.py`、`src/daemon/sse.py`、前端 +**涉及文件**: `src/daemon/spawner.py`、`src/daemon/bootstrap.py`、`schemas/`(新建)、`prompt_templates/`(新建) + +**前置条件**: T2 完成(Prompt 进化依赖 Daemon 退化方向确定) + +**来源**: v2.8-direction-notes §三(2)(3)(4) + §六 + +#### T6: 进程管理 M2 📋 待开始 + +**编号**: D3, C2 + +**核心目标**:解决 M2 进程管理问题 + Shadow Checkpoint + +**关键变更**: +1. M2 进程管理:当前 `subprocess.run()` 无法中途 kill,需讨论同步/异步方案(D3) +2. Shadow Checkpoint:git 自动 commit(C2) **前置条件**: T2 完成 -**对应待实现项**: §17 #1、§17 #4 +**约束**: openclaw 不支持异步,需讨论替代方案(MEMORY 记录) -#### T6: Mail 硬编码统一 📋 最后做 +#### T7: 经验闭环 + Skill 体系 📋 待开始 -**核心目标**:消除 `_mail` 硬编码,收敛 Mail 特殊逻辑 +**编号**: C3, C5 -**设计方向**(两种可选): -- **方案 A**:新建 `mail_handler.py`,集中 Mail 投递逻辑(~100 行新建 + ~30 行替换),纯代码整理 -- **方案 B**:TaskType Pipeline(策略模式),`MailPipeline` 类,更大规模重构 +**核心目标**:完成经验沉淀闭环 -**决策**: 最后做,等其他专题稳定后再统一解决。优先方案 A(简单收敛),如果 T2~T5 中引入了更多 Task 类型再考虑方案 B。 +**关键变更**: +1. Skill 生命周期管理(draft→active→deprecated) +2. 经验闭环 IMPROVE 阶段(使用后反馈/更新) -**涉及文件**: `src/daemon/dispatcher.py`、`src/daemon/spawner.py`、`src/api/blackboard_routes.py` +**前置条件**: T5 完成 -**前置条件**: T2~T5 完成(等稳定后再动) +#### T8: 工具链 + 冷却 + Mail 统一 📋 最后做 -**对应设计矛盾**: §19.5 +**编号**: C4, C6, 话题1 -**来源**: v2.8-direction-notes §三(1) +**核心目标**:工具链集成 + per-provider 冷却 + Mail 硬编码统一 + +**关键变更**: +1. 工具链集成(lint/test/build) +2. per-provider 冷却(Counter 扩展) +3. Mail 硬编码统一(§19.5,等稳定后再动) + +**前置条件**: T2~T7 完成 + +**建议执行顺序**: T1 ✅ → T2(核心)→ T3 → T4 → T5 → T6 → T7 → T8(最后) ### 21.3 话题与 T 阶段映射