# Phase 2.5: Consolidation Agent 汇总所有分析 Agent 的产出,识别跨模块问题,生成汇总报告。 ## 输入 ```typescript interface ConsolidationInput { output_dir: string; agent_summaries: AgentReturn[]; // 6个Agent的简要返回 cross_module_notes: string[]; // 所有跨模块备注 metadata: ProjectMetadata; } ``` ## 执行 ```javascript Task({ subagent_type: "cli-explore-agent", prompt: ` ## 任务 作为汇总 Agent,读取所有章节文件,执行跨模块分析,生成汇总报告。 ## 输入 - 章节文件: {output_dir}/sections/section-*.md - Agent 摘要: ${JSON.stringify(agent_summaries)} - 跨模块备注: ${JSON.stringify(cross_module_notes)} ## 分析维度 ### 1. 一致性检查 - 术语一致性:同一概念是否使用相同名称 - 命名规范:中英文命名是否统一 - 图表编号:是否连续且正确 ### 2. 完整性检查 - 功能覆盖:section-3的功能是否都有对应接口(section-6) - 算法覆盖:section-4的算法是否在功能中被引用 - 异常覆盖:section-7的异常是否覆盖所有接口 ### 3. 关联性检查 - 模块依赖:架构图(section-2)的依赖是否与实际一致 - 数据流向:数据结构(section-5)是否与接口(section-6)匹配 - 跨模块调用:是否存在未记录的跨模块依赖 ### 4. 质量检查 - 图表语法:Mermaid 语法是否正确 - 内容深度:各章节是否有足够的详细说明 - 代码引用:是否包含具体的文件路径和行号 ## 输出文件 写入: {output_dir}/cross-module-summary.md ### 文件格式 \`\`\`markdown # 跨模块分析报告 ## 1. 文档统计 | 章节 | 图表数 | 子章节数 | 字数 | |------|--------|----------|------| | 系统架构图 | 1 | 2 | ~500 | | ... | ... | ... | ... | ## 2. 发现的问题 ### 2.1 严重问题 (必须修复) | ID | 类型 | 位置 | 描述 | 建议 | |----|------|------|------|------| | E001 | 缺失 | section-6 | 缺少权限管理接口 | 补充 /api/permissions 相关接口 | ### 2.2 警告 (建议修复) | ID | 类型 | 位置 | 描述 | 建议 | |----|------|------|------|------| | W001 | 一致性 | section-3/6 | 功能名"用户管理"与接口名"UserModule"不一致 | 统一使用中文或英文 | ### 2.3 提示 (可选修复) | ID | 类型 | 位置 | 描述 | |----|------|------|------| | I001 | 增强 | section-4 | 建议为复杂算法添加复杂度分析 | ## 3. 跨模块关联图 \`\`\`mermaid graph LR S2[架构] --> S3[功能] S3 --> S4[算法] S3 --> S6[接口] S5[数据结构] --> S6 S6 --> S7[异常] S3 -.->|缺少关联| S5 \`\`\` ## 4. 修复建议优先级 1. **E001**: 补充权限管理接口 (阻塞合规) 2. **W001**: 统一术语命名 (影响一致性) 3. ... ## 5. 下一步行动 - [ ] 修复 E001-E00x 严重问题 - [ ] 处理 W001-W00x 警告 - [ ] 可选处理 I001-I00x 提示 \`\`\` ## 返回格式 (JSON) { "status": "completed", "output_file": "cross-module-summary.md", "stats": { "total_sections": 6, "total_diagrams": 8, "total_words": 3500 }, "issues": { "errors": [ {"id": "E001", "type": "missing", "section": "section-6", "desc": "缺少权限管理接口"} ], "warnings": [ {"id": "W001", "type": "inconsistency", "sections": ["section-3", "section-6"], "desc": "术语不一致"} ], "info": [ {"id": "I001", "type": "enhancement", "section": "section-4", "desc": "建议添加复杂度分析"} ] }, "cross_refs": { "found": 12, "missing": 3 } } ` }) ``` ## 问题分类 | 严重级别 | 前缀 | 含义 | 处理方式 | |----------|------|------|----------| | Error | E | 阻塞合规检查 | 必须修复 | | Warning | W | 影响文档质量 | 建议修复 | | Info | I | 可改进项 | 可选修复 | ## 问题类型 | 类型 | 说明 | 检查范围 | |------|------|----------| | missing | 缺失内容 | 功能-接口对应、异常覆盖 | | inconsistency | 不一致 | 术语、命名、编号 | | circular | 循环依赖 | 模块依赖关系 | | orphan | 孤立内容 | 未被引用的功能/数据结构 | | syntax | 语法错误 | Mermaid 图表 | | enhancement | 增强建议 | 内容深度、引用 | ## 与 Phase 4 的集成 ```javascript // Phase 4 装配时读取汇总报告 const summary = JSON.parse(Read(`${outputDir}/cross-module-summary.md`)); if (summary.issues.errors.length > 0) { // 阻止装配,先修复严重问题 return { action: "fix_required", errors: summary.issues.errors }; } // 在最终文档中插入跨模块说明 insertCrossModuleSummary(document, summary); ``` ## Output - 文件: `cross-module-summary.md` - 返回: 问题列表 + 统计信息