# PRD v2.0 能力覆盖审查

**版本**: v1.0
**日期**: 2026-05-19
**作者**: 庞统(副军师) 🐦
**范围**: PRD v2.0 → 设计文档(v2.6~v2.8) → 代码实现 全覆盖审查
**方法**: 逐条提取 PRD 能力需求 → 在设计文档中找对应设计 → 在代码中验证实现

---

## 0. 审查范围

### 代码库统计

| 指标 | 数量 |
|------|------|
| 后端 Python 文件 | 31 个 |
| 后端代码行数 | ~7,200 行 |
| 前端组件 | 27 个 TSX/TS 文件, ~4,800 行 |
| 测试文件 | 20 个, ~5,200 行 |
| 设计文档 | 25 个 .md 文件 |
| 配置文件 | 1 个 default.yaml |

### 代码目录结构

```
src/
├── main.py                    # FastAPI 入口 + Daemon 共享 event loop
├── utils.py                   # 配置加载 + 路径解析
├── cli/blackboard.py          # Agent CLI 工具
├── api/                       # FastAPI 路由层
│   ├── blackboard_routes.py   # 黑板 CRUD API
│   ├── project_routes.py      # 项目管理 API
│   ├── sse_routes.py          # SSE 实时推送 API
│   ├── checkpoint_routes.py   # M3 Checkpoint API
│   ├── mail_routes.py         # v2.7 Mail Tab API
│   └── daemon_routes.py       # Daemon 状态 API
├── blackboard/                # 黑板数据层
│   ├── db.py                  # SQLite Schema + 迁移 + 连接池
│   ├── models.py              # 数据模型 (Task/Comment/Output/Decision/Observation/Event/Review/Experience)
│   ├── operations.py          # 写操作 (CRUD + checkpoint)
│   ├── queries.py             # 读操作
│   └── registry.py            # 多项目管理 (registry.db)
├── daemon/                    # Daemon 引擎层
│   ├── ticker.py              # 30s Tick 主循环 + 依赖推进
│   ├── dispatcher.py          # 调度执行器 (Router/Dispatcher 分层)
│   ├── router.py              # Agent 路由决策 (LLM路由/声明式交接/fallback)
│   ├── spawner.py             # Agent Spawn (Full Agent异步/Spawn模板)
│   ├── counter.py             # 并发控制 (ActiveAgentCounter)
│   ├── review.py              # 审查流水线 (4级分级 + 格式/内容/质量验证)
│   ├── experience.py          # 经验蒸馏 (pitfall/best_practice/pattern分类)
│   ├── skill_system.py        # 技能系统 (高/中/低三层自由度)
│   ├── bootstrap.py           # L0-L3 四层上下文构建
│   ├── inbox.py               # Inbox JSONL 秒级事件推送
│   ├── health.py              # 僵尸检测 + 告警
│   └── sse.py                 # SSE Broker + Hook 系统
└── frontend/                  # React + Vite 前端
    └── src/
        ├── App.tsx, store.ts, api.ts, time.ts
        └── components/ (27 个组件)
```

---

## 1. §4 四相架构覆盖

| PRD 能力 | PRD 章节 | 设计覆盖 | 代码实现 | 状态 |
|---------|---------|---------|---------|------|
| Phase 1: 需求探索(苏格拉底对话) | §4.1 P1 | ✅ 课题7 §3 沉浸观察/即时对话 + topic7-interaction-dashboard-proposal.md §2 | ⚠️ 无独立苏格拉底对话引擎。依赖 OpenClaw Agent 对话（庞统的 Skill），平台只提供任务创建入口 | 部分 |
| Phase 2: 动态规划(AI规划+挑战) | §4.1 P2 | ✅ architecture-v2.6.md §9.2 三层执行模型 + topic3-challenge-review-proposal.md + topic4-decomposition-skill-proposal.md | ✅ router.py LLM路由决策 + review.py 审查流水线 + dispatcher.py 调度执行 | 完整 |
| Phase 3: 自主执行(Agent协作群) | §4.1 P3 | ✅ architecture-v2.6.md §5 黑板架构 + §6 三层执行 + topic2 事件驱动 + §9.7 状态机 | ✅ ticker.py 30s扫描 + dispatcher.py/spawner.py Agent调度 + inbox.py 即时事件 + counter.py 并发控制 | 完整 |
| Phase 4: 主动汇报(AI推送) | §4.1 P4 | ✅ topic7-interaction-dashboard-proposal.md 四级推送(🔴🟡🟢🔵) + topic9-dashboard-design.md | ✅ sse.py SSE Broker + sse_routes.py API + frontend/NotificationCenter.tsx | 完整 |
| 共享意识空间(Blackboard) | §4.1 P3 关键设计 | ✅ architecture-v2.6.md §5 完整黑板设计 + §7 数据模型 | ✅ blackboard/ 完整实现(db+models+operations+queries) + 8张表(tasks/comments/outputs/decisions/observations/events/reviews/experiences) | 完整 |
| 持续指挥官(庞统) | §4.1 P3 关键设计 | ✅ architecture-v2.6.md §6.2 庞统角色 + §6.3 事件驱动spawn | ✅ spawner.py spawn模板含角色指令 + router.py fallback=pangtong + dispatcher.py escalate机制 | 完整 |
| Agent自主协作 | §4.1 P3 关键设计 | ⚠️ PRD 描述 peer-to-peer，设计明确 v2.0 为中央调度 | ✅ inbox.py Agent→Daemon事件流 + comment/@mention 协作 | 部分(v2.1+目标) |
| AI指挥循环(感知→推理→行动) | §4.2 | ✅ architecture-v2.6.md §6 ticker循环 + §8 三层执行模型 | ✅ ticker.py scan→process_tick→dispatch + router.py LLM决策 | 完整 |
| 双入口(对话+Dashboard) | §4.3 | ✅ topic7-interaction-dashboard-proposal.md + topic9-dashboard-design.md | ✅ API层(FastAPI REST) + SSE推送 + frontend/(27个组件) | 完整 |

**§4 覆盖率: 7/9 完整, 2/9 部分** (78%)

### 缺口分析

1. **P1 需求探索(苏格拉底对话)** — 设计中描述了对话交互模式，代码层面没有独立的"苏格拉底对话引擎"。依赖 OpenClaw Agent 的 Skill 能力（requirement-clarification skill），平台只提供任务创建和对话入口。这是架构决策（平台不做 AI 能力，AI 在 Agent 层），不是缺口，但需明确记录。
2. **Agent自主协作** — PRD §4.1 P3 描述 peer-to-peer 协作，但 PRD §10.2 已明确 v2.1+ 才实现。设计走中央调度路线，代码实现中央调度。符合 PRD 范围声明。

---

## 2. §5 核心能力清单覆盖

| # | PRD 能力 | PRD §5 说明 | 设计覆盖 | 代码实现 | 状态 |
|---|---------|-----------|---------|---------|------|
| C1 | **需求探索对话** | 苏格拉底式提问,帮用户梳理需求 | ✅ topic7 §2 即时对话模式 + topic4 planner角色 | ⚠️ 无独立对话引擎,依赖Agent Skill | 部分 |
| C2 | **动态规划** | AI规划+挑战,计划可演进 | ✅ topic3 分级审查 + topic4 模板组件库+Plan Checker + topic11 多项目 | ✅ router.py LLM路由 + review.py 审查 + spawner.py spawn模板 | 完整 |
| C3 | **持续指挥** | 庞统全程在线,实时观察调整 | ✅ architecture-v2.6 §6.2 庞统角色(escalation+fallback) + 事件驱动spawn | ✅ dispatcher.py escalate机制 + router.py fallback=pangtong + spawner.py new_session | 完整 |
| C4 | **共享意识** | Agent通过Daemon API查询共享状态 | ✅ architecture-v2.6 §5 黑板架构 + §7 数据模型 + §8.2 API设计 | ✅ blackboard/(db+ops+queries) + api/blackboard_routes.py + cli/blackboard.py | 完整 |
| C5 | **自主协作** | Agent通过共享空间感知并协调 | ⚠️ v2.1+ peer-to-peer,当前中央调度 | ✅ inbox.py Agent事件流 + comment/@mention + handoff comment | 部分 |
| C6 | **质量门禁** | 独立挑战者评审产出 | ✅ topic3 分级审查流水线(4级风险→1/2/3阶段) + 反驳权 + 审查协议注册表 | ✅ review.py ReviewPipeline + models.py Review(round/max_rounds/verdict) + api/blackboard_routes POST /reviews | 完整 |
| C7 | **主动汇报** | AI推送进度和结果 | ✅ topic7 四级推送(🔴🟡🟢🔵) + topic9 Dashboard | ✅ sse.py SSEBroker + sse_routes.py + frontend/NotificationCenter.tsx | 完整 |
| C8 | **经验沉淀** | 每次执行自动提炼经验 | ✅ topic6 三种载体(Memory→Skill→Rule) + 两级蒸馏 + 五阶段闭环 | ✅ experience.py ExperienceDistillation + models.py Experience + db.py experiences表 | 完整 |
| C9 | **安全护栏** | 危险操作拦截、审批 | ✅ architecture-v2.6 §9.4.2 guardrails.yaml + 三层防护(L1硬检查/L2轻量AI/L3 tripwire) | ⚠️ review.py 有风险分级逻辑,但无独立 guardrails.yaml 文件。L1_guardrail 在 dispatcher Legacy模式中引用。安全检查散布在 review pipeline + dispatcher 中 | 部分 |
| C10 | **工具链集成** | lint/test/build自动触发 | ⚠️ topic *未完成*。PRD §10.2 明确 v2.1+ | ❌ 无 toolchain 相关代码。toolchain-proposal.md 存在但未实现 | 缺口(v2.1+) |

**§5 覆盖率: 5/10 完整, 4/10 部分, 1/10 缺口** (70% 完整, 40% 部分覆盖)

### 能力依赖关系实现状态

```
C1 需求探索  ⚠️ (依赖Agent Skill)
  │
  ▼
C2 动态规划  ✅ (router+review+spawner)
  │
  ▼
C3 持续指挥  ✅ (escalate+fallback) ←→ C4 共享意识 ✅ (blackboard+API+CLI) ←→ C5 自主协作 ⚠️ (中央调度,非P2P)
  │              │
  │              ▼
  │          C8 经验沉淀  ✅ (experience.py+experiences表)
  │
  ├──→ C6 质量门禁  ✅ (review.py分级审查)
  ├──→ C7 主动汇报  ✅ (SSE+NotificationCenter)
  ├──→ C9 安全护栏  ⚠️ (散布实现,无独立guardrails.yaml)
  └──→ C10 工具链   ❌ (v2.1+)
```

---

## 3. §6 技术方向覆盖

| # | PRD 技术方向 | PRD §6 说明 | 设计覆盖 | 代码实现 | 状态 |
|---|------------|-----------|---------|---------|------|
| T1 | **编排层:全新实现** | v2.0全新代码,与v1.0完全隔离 | ✅ architecture-v2.6 全新设计,基于Blackboard架构 | ✅ 全部31个Python文件全新编写,无v1.0代码 | 完整 |
| T2 | **底层:轻量确定性引擎** | 状态机+超时保护+故障恢复 | ✅ architecture-v2.6 §9.7 状态机 + §14 健康检查 | ✅ db.py VALID_TRANSITIONS/VALID_STATUSES + health.py 僵尸检测 + ticker.py timeout/retry | 完整 |
| T3 | **上层:AI指挥层** | 庞统在关键决策点介入 | ✅ architecture-v2.6 §6.2 庞统角色 + §8 三层执行 | ✅ router.py LLM路由决策 + dispatcher.py escalate + spawner.py 角色模板 | 完整 |
| T4 | **Daemon API** | Agent通过HTTP API查询共享状态 | ✅ technical-design-v2.6 §3 API设计 | ✅ api/(6个路由文件) + FastAPI + uvicorn | 完整 |
| T5 | **openclaw agent CLI调度** | Daemon通过CLI调度Agent | ✅ technical-design-v2.6 §5 Agent调度 | ✅ spawner.py asyncio.create_subprocess_exec + cli/blackboard.py Agent工具 | 完整 |
| T6 | **Sanguo Mail降级为fallback** | 主通信走共享空间 | ✅ architecture-v2.6 决策记录 | ✅ api/mail_routes.py Mail作为特殊Project实现(兼容层) | 完整 |
| T7 | **Agent对话入口** | 主力入口,自然语言 | ⚠️ 设计承认依赖OpenClaw session | ⚠️ 代码无独立对话入口,依赖OpenClaw WebChat | 部分(架构决策) |
| T8 | **Dashboard入口** | 可视化监控面板 | ✅ topic7+9 Dashboard设计 + frontend-redesign-v2.6.md | ✅ frontend/(27个组件) + Vite+React+Tailwind | 完整 |
| T9 | **经验层:从无到有** | 每次任务自动提炼经验 | ✅ topic6 完整设计 | ✅ experience.py + models.py Experience + db.py experiences表 | 完整 |

**§6 覆盖率: 7/9 完整, 1/9 部分, 1/9 部分(架构依赖)** (78%)

---

## 4. §10 安全红线覆盖

### §10.1 六条安全红线

| # | 红线 | PRD说明 | 设计覆盖 | 代码实现 | 状态 |
|---|------|--------|---------|---------|------|
| R1 | 实盘交易 | 强制人工确认 | ✅ architecture-v2.6 §9.4.2 L1硬检查 | ⚠️ 无独立guardrails.yaml。review.py 有风险分级,但实盘拦截未硬编码 | 缺口 |
| R2 | 数据删除 | 强制人工确认 | ✅ architecture-v2.6 §9.4.2 | ⚠️ 无独立guardrails.yaml。checkpoint_routes.py approve/reject可间接实现 | 部分 |
| R3 | 系统配置变更 | 强制人工确认 | ✅ architecture-v2.6 §9.4.2 | ⚠️ 同上 | 部分 |
| R4 | 大额token消耗 | 自动暂停+通知 | ⚠️ 设计提到但未细化 | ❌ 无 token 消耗追踪代码 | 缺口 |
| R5 | Agent不受控行为 | 自动终止+升级 | ✅ architecture-v2.6 §14 健康检查 | ✅ health.py 僵尸检测 + counter.py 并发限制 + dispatcher.py 状态检查 | 完整 |
| R6 | 连续失败 | 暂停+人工介入 | ✅ architecture-v2.6 §9.7 状态机(retry_count/max_retries) | ✅ models.py retry_count/max_retries + ticker.py 重试逻辑 + v2.8 paused/escalated 状态 | 完整 |

**§10.1 覆盖率: 2/6 完整, 2/6 部分, 2/6 缺口** (33% 完整)

### §10.2 范围声明覆盖

| PRD v2.0 范围 | 设计 | 代码 | 状态 |
|--------------|------|------|------|
| ✅ 四相循环 | ✅ 完整设计 | ✅ P2/P3/P4 完整,P1 部分依赖Agent | 基本完整 |
| ✅ 中央调度模式 | ✅ architecture-v2.6 | ✅ ticker+dispatcher+spawner+counter | 完整 |
| ✅ 配置化零硬编码 | ✅ default.yaml | ✅ default.yaml 配置驱动 | 完整 |
| ✅ 质量门控+异常处理+经验沉淀 | ✅ topic3+topic6 | ✅ review.py+experience.py+health.py | 完整 |
| ✅ 人工介入(steer/takeover/intervene) | ✅ v2.8 checkpoint+waiting_human | ✅ checkpoint_routes.py+paused/waiting_human状态 | 完整 |

**v2.1+ 后续版本（不在 v2.0 范围）**:

| PRD v2.1+ 功能 | 设计状态 | 代码状态 |
|---------------|---------|---------|
| 🔜 Agent主动感知 | ❌ 无设计 | ❌ 无代码 |
| 🔜 peer-to-peer协作 | ❌ 无设计 | ❌ 无代码 |
| 🔜 工具链自动集成 | ⚠️ toolchain-proposal.md 初稿 | ❌ 无代码 |
| 🔜 Fidelity信息路由 | ❌ 无设计 | ❌ 无代码 |
| 🔜 Boids协作规则 | ❌ 无设计 | ❌ 无代码 |
| 🔜 Dashboard监控面板 | ✅ topic9 完整设计 | ✅ 27个前端组件(实际已提前实现) |

### §10.3 多任务并发

| PRD要求 | 设计覆盖 | 代码实现 | 状态 |
|---------|---------|---------|------|
| Agent有界资源(同时只执行一个步骤) | ✅ architecture-v2.6 topic11 ActiveAgentCounter | ✅ counter.py can_acquire/acquire/release + default.yaml max_per_agent/max_global_agents | 完整 |
| Daemon维护Agent可用性表 | ✅ topic11 | ✅ counter.py active_agents Dict | 完整 |
| 任务间资源冲突按优先级排队 | ✅ architecture-v2.6 §9.8 priority | ✅ models.py Task.priority + ticker.py 排序 | 完整 |
| 每个任务独立artifacts目录 | ✅ architecture-v2.6 §7 per-project SQLite | ✅ registry.py per-project数据目录 + db_path隔离 | 完整 |

### §10.4 任务失败恢复

| PRD要求 | 设计覆盖 | 代码实现 | 状态 |
|---------|---------|---------|------|
| 单步失败:重试(max_retries=3) | ✅ architecture-v2.6 §9.7 | ✅ models.py retry_count/max_retries + ticker.py 重试逻辑 | 完整 |
| 单步失败:换Agent | ✅ dispatcher fallback | ✅ dispatcher.py escalate机制 | 完整 |
| 计划失败:AI判断replan | ⚠️ 设计提到但未细化 | ⚠️ router.py LLM可判断,但无显式replan流程 | 部分 |
| 用户改主意:steer/replan | ✅ v2.8 waiting_human + checkpoint | ✅ checkpoint_routes.py + waiting_human/paused状态 | 完整 |
| 不可恢复:保留产出物 | ✅ architecture-v2.6 §7 | ✅ tasks表保留所有记录 + outputs/decisions不删除 | 完整 |

---

## 5. 数据模型完整度

### 黑板数据表 (src/blackboard/db.py)

| 表 | PRD映射 | 状态 |
|----|---------|------|
| tasks | C2/C3/C4 核心任务模型 | ✅ v2.8 含11个状态+归档+路由字段+SubTask stages |
| comments | C5 协作沟通 | ✅ 含comment_type(escalation/handoff/question等) |
| outputs | C4 结构化产出 | ✅ 含attempt_number |
| decisions | C3 决策记录 | ✅ 含alternatives |
| observations | C3/C7 观察告警 | ✅ 含severity(resolved/resolved_by) |
| events | C7 事件日志 | ✅ SSE事件源 |
| reviews | C6 质量门禁 | ✅ 含round/max_rounds/consensus_reached/verdict |
| experiences | C8 经验沉淀 | ✅ 含category/confidence/status/tags |
| checkpoints | §10.2 M3人工介入 | ✅ v2.8 新增,含type/status/resolved_by |
| routing_decisions | C2 路由审计 | ✅ v2.6.1 新增,含mode/confidence/model/latency |

---

## 6. 前端覆盖度

### PRD v2.0 Dashboard 组件 vs 前端实现

| PRD/设计要求 | 前端组件 | 状态 |
|-------------|---------|------|
| 任务看板 | TaskModal.tsx + EdictBoard.tsx(圣旨榜) | ✅ |
| 全局监控 | MonitorPanel.tsx | ✅ |
| 产出档案 | ArtifactPanel.tsx + ArtifactList.tsx | ✅ |
| 系统配置 | SettingsPanel.tsx + ModelConfig.tsx + SkillsConfig.tsx | ✅ |
| AI Briefing | MorningPanel.tsx(早朝) | ✅ |
| 推送通知中心 | NotificationCenter.tsx | ✅ |
| 邮件Tab | MailPanel.tsx | ✅ |
| 项目切换 | store.ts project switching | ✅ |
| Checkpoint | CheckpointPanel.tsx | ✅ |
| Agent Sessions | SessionsPanel.tsx + OfficialPanel.tsx | ✅ |
| 全局搜索 | GlobalSearch.tsx | ✅ |
| Confirm Dialog | ConfirmDialog.tsx + CourtCeremony.tsx | ✅ |

---

## 7. 设计文档版本梳理

| 文档 | 版本 | 大小 | 最后更新 | 权威性 | 建议 |
|------|------|------|---------|--------|------|
| architecture-v2.6.md | v2.8 | 109K | 2026-05-18 | **主文档** | 保留,版本号反映最新 |
| architecture-v2.md | v2.0 | 112K | 2026-05-14 | 过时 | 归档到 archive/ |
| technical-design-v2.6.md | v2.6.2-tech | 49K | 2026-05-18 | 技术主文档 | 保留 |
| development-plan-v2.6.md | - | 13K | 2026-05-18 | 开发计划 | 保留,需更新进度 |
| frontend-redesign-v2.6.md | - | 9K | 2026-05-18 | 前端设计 | 保留 |
| deployment-v2.6.md | - | 16K | 2026-05-17 | 部署方案 | 保留 |
| v2.7-subtask-model.md | v2.1 | 15K | 2026-05-18 | SubTask设计 | 保留,已评审通过 |
| v2.8-state-enhancement.md | - | 15K | 2026-05-19 | 状态增强+M3 | 保留,已评审通过 |
| topic3-challenge-review-proposal.md | - | 38K | 2026-05-16 | 课题3 挑战/评审 | 已纳入主架构,可归档 |
| topic4-decomposition-skill-proposal.md | - | 27K | 2026-05-16 | 课题4 拆解+上下文 | 已纳入主架构,可归档 |
| topic6-experience-loop-proposal.md | - | 15K | 2026-05-16 | 课题6 经验沉淀 | 已纳入主架构,可归档 |
| topic7-interaction-dashboard-proposal.md | - | 21K | 2026-05-16 | 课题7 交互 | 已纳入主架构,可归档 |
| topic7-9-interaction-dashboard-proposal.md | - | 11K | 2026-05-16 | 课题7+9 初稿 | 被topic7/topic9替代,归档 |
| topic9-dashboard-design.md | - | 17K | 2026-05-17 | 课题9 Dashboard | 已纳入主架构,可归档 |
| topic11-multi-project-proposal.md | - | 29K | 2026-05-16 | 课题11 多项目 | 已纳入主架构,可归档 |
| toolchain-proposal.md | - | 4.4K | 2026-05-16 | 工具链 初稿 | 保留(v2.1+参考) |
| agent-routing-redesign.md | - | 20K | 2026-05-17 | Agent路由重设计 | 已实现,可归档 |
| agent-integration-v2.6.md | - | 13K | 2026-05-17 | Agent集成指南 | 保留(参考) |
| agent-api-contract.md | - | 5.4K | 2026-05-17 | Agent API契约 | 保留(参考) |
| test-plan-v2.6.md | - | 13K | 2026-05-17 | 测试计划 | 保留 |
| frontend-principles.md | - | 1.8K | 2026-05-15 | 前端原则 | 保留 |
| product-direction-notes.md | - | 2.3K | 2026-05-18 | 方向笔记 | 保留 |
| topic4-skill-checklist-draft.md | - | 5.5K | 2026-05-15 | Skill清单草稿 | 被topic4替代,归档 |
| deployment-v2.6-guide.md | - | 4.4K | 2026-05-17 | 部署指南 | 保留 |
| **archive/** | - | - | - | - | 已归档 |

### 版本号混乱问题

当前 architecture-v2.6.md 文件名是 v2.6，但实际内容已更新到 v2.8（v2.8 状态增强已写入变更历史）。建议：
1. 重命名为 `architecture-v2.8.md`，或
2. 保持文件名但明确标注"包含 v2.6~v2.8 全部变更"

---

## 8. 测试覆盖度

| 测试文件 | 测试目标 | 行数 | PRD映射 |
|---------|---------|------|---------|
| test_blackboard.py | 黑板CRUD | ~300 | C4 共享意识 |
| test_api.py | API路由 | ~300 | T4 Daemon API |
| test_dispatcher.py | Agent调度 | ~200 | C2/C3 调度 |
| test_router.py | 路由决策 | ~200 | C2 路由 |
| test_spawner.py | Agent Spawn | ~150 | C3 执行 |
| test_review.py | 审查流水线 | ~200 | C6 质量门禁 |
| test_experience.py | 经验蒸馏 | ~200 | C8 经验沉淀 |
| test_ticker.py | Tick主循环 | ~420 | T2 确定性引擎 |
| test_inbox.py | Inbox事件 | ~200 | T2 事件驱动 |
| test_health.py | 僵尸检测 | ~100 | R5 Agent不受控 |
| test_counter.py | 并发控制 | ~200 | §10.3 多任务并发 |
| test_registry.py | 多项目管理 | ~200 | §10.3 项目隔离 |
| test_skill_system.py | 技能系统 | ~200 | C8 Skill生态 |
| test_sse.py | SSE推送 | ~270 | C7 主动汇报 |
| test_bootstrap.py | 上下文构建 | ~200 | T3 AI指挥层 |
| test_e2e_v27.py | 端到端(v2.7) | ~400 | 全链路 |
| test_v27_subtasks.py | SubTask模型 | ~320 | v2.7 SubTask |
| test_cli.py | Agent CLI | ~200 | T5 CLI调度 |
| test_main.py | 主入口 | ~150 | T1 全新实现 |

**测试总计: ~4,300 行, 20 个文件** — 覆盖所有核心模块。

---

## 9. 之前审查报告 Gap 修复验证

### v2.6-requirements-design-verification-v2.md 识别的 Gap

| # | 问题 | 本审查验证 | 代码状态 |
|---|------|----------|---------|
| D1 | IR-2 Plan→Execute→Validate | ✅ review.py 三阶段流水线 + risk_level 分级 | 已实现 |
| D2 | IR-4 安全红线 | ⚠️ 无独立 guardrails.yaml,逻辑分散在 review/dispatcher | 部分实现 |
| D3 | 挑战协商轮次追踪 | ✅ models.py Review.round/max_rounds + review.py 轮次逻辑 | 已实现 |
| D4 | 前端与v2.6集成 | ✅ 27个前端组件 | 已实现 |
| D5 | Daemon tick AI决策 | ✅ router.py LLM路由(可选) | 已实现 |
| D6 | 60s→30s tick | ✅ default.yaml tick_interval: 30 | 已实现 |
| D7 | 拆解保障 | ✅ spawner.py spawn模板含must_haves + router.py 验证 | 已实现 |
| D8 | 上下文管理 | ✅ bootstrap.py L0-L3四层构建 | 已实现 |
| D9 | 前端过渡 | ✅ 前端已全面实现 | 已实现 |
| N8 | F7全生命周期 | ❌ 仍无设计 | 未实现 |
| N9 | F8工具链自动化 | ❌ toolchain-proposal.md 初稿,无代码 | 未实现 |
| N10 | Agent并行运行时感知 | ⚠️ counter.py 并发控制,但无跨Agent感知 | 部分实现 |
| N11 | 多Agent session上下文膨胀 | ✅ bootstrap.py token估算+分层注入 | 已缓解 |

---

## 10. 核心发现

### ✅ 做得好的

1. **架构完整性高** — Blackboard + 三层执行模型 + 双层事件架构的设计在代码中完整落地。31个Python文件、7,200行代码、20个测试文件，是一个可运行的系统。
2. **设计驱动开发** — 从PRD到设计文档(25个)到代码，每一步有文档可追溯。课题设计(1~11)的决策编号(D3-1, D4-6等)在代码注释中有引用。
3. **前端提前实现** — PRD §10.2 标注 Dashboard 为 v2.1+，但实际 27 个前端组件已完整实现(任务看板/监控/产出/配置/AI Briefing/通知/Mail/Checkpoint等)。
4. **数据模型演进有序** — v2.6(基础)→v2.6.1(路由)→v2.7(SubTask)→v2.8(状态增强+Checkpoint)，每次有 db.py 迁移函数，向后兼容。
5. **测试覆盖全面** — 每个核心模块有独立测试文件，含 e2e 端到端测试。

### ⚠️ 需要注意的

6. **安全红线(guardrails.yaml)缺失** — PRD §10.1 的6条安全红线在设计中有详细方案(guardrails.yaml 声明式规则 + L1/L2/L3三层防护)，但代码中没有独立的 guardrails.yaml 文件。安全检查逻辑散布在 review.py(风险分级)和 dispatcher.py(legacy模式L1_guardrail)。**这是PRD→代码最大的缺口**。
7. **P1 需求探索未内建** — 苏格拉底式对话作为PRD的核心创新("帮用户想清楚要什么"),在平台代码中只是任务创建入口,对话能力完全依赖 OpenClaw Agent 的 Skill。这是架构决策(平台不做AI),但需在文档中明确。
8. **prompt_templates/ 目录未创建** — 设计文档大量引用 prompt_templates/(executor.md, reviewer.md, planner.md, adjudicator.md, rebuttal.md),但代码目录中不存在。Agent spawn 消息构建在 spawner.py 中硬编码模板。这意味着设计中的 Skill 引导体系(S-01~S-28)未完全落地。
9. **review_protocols/ 目录未创建** — 设计引用 review_protocols/(plan_review.yaml, output_review.yaml, analysis_review.yaml),但代码目录中不存在。审查协议在 review.py 中硬编码。
10. **schemas/ 目录未创建** — 设计引用 schemas/(handoff.schema.json, output.schema.json 等),但代码目录中不存在。产出物校验在 review.py 中用正则表达式实现。

### ❌ 缺口

11. **F7 全生命周期阶段映射** — PRD的"需求→设计→编码→测试→部署→运维"任务类型映射,两次审查均未设计,仍未实现。
12. **F8 工具链自动化(C10)** — lint/test/build 自动触发,PRD §10.2 明确 v2.1+,toolchain-proposal.md 仅有初稿。
13. **R1 实盘交易强制人工确认** — 设计有方案但代码无硬编码拦截。
14. **R4 大额token消耗自动暂停** — 设计和代码均未实现。

---

## 11. 覆盖率汇总

| 维度 | PRD条目 | 完整 | 部分 | 缺口 | 完整率 |
|------|---------|------|------|------|--------|
| §4 四相架构 | 9 | 7 | 2 | 0 | 78% |
| §5 核心能力 | 10 | 5 | 4 | 1 | 50% |
| §6 技术方向 | 9 | 7 | 2 | 0 | 78% |
| §10.1 安全红线 | 6 | 2 | 2 | 2 | 33% |
| §10.2 v2.0范围 | 5 | 5 | 0 | 0 | 100% |
| §10.3 多任务并发 | 4 | 4 | 0 | 0 | 100% |
| §10.4 失败恢复 | 5 | 4 | 1 | 0 | 80% |
| **总计** | **48** | **34** | **11** | **3** | **71%** |

### 与之前审查对比

| 指标 | v2.6审查(v2) | 本审查(含代码) | 变化 |
|------|-------------|--------------|------|
| 设计覆盖率 | 83% | - | - |
| 设计→代码覆盖率 | - | **71% 完整, 94% 部分** | 新指标 |
| 未覆盖(v2.1+) | 2(D10/D13) | 3(+R1/R4) | +1 |

### 注意

之前的审查只看了 PRD→设计，覆盖率为 83%。本审查深入到代码层，发现**设计中有但代码未完全落地的部分**（guardrails.yaml、prompt_templates/、review_protocols/、schemas/），导致完整率从 83% 降到 71%。如果算上"部分覆盖"，94% 的 PRD 需求在代码中有不同程度的实现。

---

## 12. 建议优先级

### P0 — 必须解决(影响安全/核心能力)

| # | 建议 | 工作量 | 关联 |
|---|------|--------|------|
| 1 | 创建 guardrails.yaml + 加载逻辑,硬编码6条安全红线 | 1-2天 | R1-R6 |
| 2 | 创建 prompt_templates/ 目录,将 spawner.py 硬编码模板迁移到文件 | 2-3天 | S-01~S-28 |
| 3 | token 消耗追踪 + 超限暂停 | 1天 | R4 |

### P1 — 应该解决(提升质量)

| # | 建议 | 工作量 | 关联 |
|---|------|--------|------|
| 4 | 创建 review_protocols/ 目录,将 review.py 审查协议外置 | 1-2天 | C6 |
| 5 | 创建 schemas/ 目录,产出物校验 Schema 化 | 1天 | C4 |
| 6 | 文档版本对齐:architecture 文件名改为 v2.8 或标注 | 0.5天 | 文档 |
| 7 | 过期文档归档(topic*/agent-routing-redesign等) | 0.5天 | 文档 |

### P2 — 可以后续(v2.1+)

| # | 建议 | 工作量 | 关联 |
|---|------|--------|------|
| 8 | F7 全生命周期阶段映射设计 | 2-3天 | D10 |
| 9 | F8 工具链自动化实现 | 3-5天 | D13/C10 |
| 10 | Agent peer-to-peer 协作 | 大 | C5 |

---

## 变更历史

| 日期 | 版本 | 变更 |
|------|------|------|
| 2026-05-19 | v1.0 | 初版:PRD v2.0 → 设计(v2.6~v2.8) → 代码 全覆盖审查 |
