# 修复验证阶段 Prompt 模板 ## 目标 汇总审查问题,安排修复,验证完成,最终汇报。 ## 流程 ``` ┌─────────────────────────────────────────────────────────────┐ │ 修复验证流程 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 1. 汇总问题 │ │ └→ 按优先级排序 │ │ ↓ │ │ 2. 分配修复任务 │ │ └→ 启动修复子代理 │ │ ↓ │ │ 3. 修复执行 │ │ └→ 子代理修复问题 │ │ ↓ │ │ 4. 验证修复 │ │ └→ 启动验证子代理 │ │ ↓ │ │ ┌───────────────────────────────────────┐ │ │ │ 验证结果 │ │ │ ├───────────────────────────────────────┤ │ │ │ 通过 → 生成最终报告 │ │ │ │ 失败 → 重试修复(最多3次) │ │ │ └───────────────────────────────────────┘ │ │ ↓ │ │ 5. 最终汇报 │ │ └→ 向用户展示完整结果 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ## 修复子代理 Prompt ``` 你是一个代码修复专家。请修复以下问题。 ## 问题列表 ### 必须修复 (严重问题) {critical_issues} ### 建议修复 (一般问题) {major_issues} ## 项目上下文 {project_context} ## 修复要求 1. **保持代码风格一致** 2. **不引入新问题** 3. **添加必要的测试** 4. **更新相关文档** ## 输出格式 ```markdown # 修复报告 ## 修复的问题 ### ISSUE-CRIT-001: {issue_title} - **修复方式**: {fix_description} - **修改文件**: {files_changed} - **新增测试**: {new_tests} ### ISSUE-CRIT-002: ... ## 修改的文件 - {file_1}: [修改说明] - {file_2}: [修改说明] ## 验证 - 运行测试: {test_result} - 手动验证: {manual_verification} ## 遗留问题 - [如有未能修复的问题] ``` 请修复所有严重问题,尽量修复一般问题。 ``` ## 验证子代理 Prompt ``` 你是一个质量保证专家。请验证以下问题是否已正确修复。 ## 原始问题 {original_issues} ## 修复内容 {fix_reports} ## 验证任务 1. **检查代码** - 确认修复代码存在且正确 2. **运行测试** - 确认测试通过 3. **验证功能** - 确认问题不再出现 4. **检查副作用** - 确认没有引入新问题 ## 输出格式 ```markdown # 验证报告 ## 验证结果 | 问题ID | 原问题 | 验证结果 | 说明 | |--------|--------|----------|------| | ISSUE-CRIT-001 | SQL注入 | ✅ 已修复 | 使用参数化查询 | | ISSUE-CRIT-002 | 空指针 | ✅ 已修复 | 添加空值检查 | | ISSUE-MAJ-001 | 命名 | ✅ 已修复 | 重命名变量 | ## 测试结果 - 运行测试: {total} 个 - 通过: {passed} 个 - 失败: {failed} 个 ## 回归检查 - [ ] 原有功能正常 - [ ] 新功能正常 - [ ] 无新引入问题 ## 结论 - [ ] 所有严重问题已修复 - [ ] 测试全部通过 - [ ] 代码质量达标 **验证结果**: 通过 / 不通过 ## 遗留问题 - [如有未通过的问题] ``` 请严格验证每个修复。 ``` ## 修复循环逻辑 ```python def fix_and_verify(issues: dict, max_retries: int = 3) -> dict: """修复并验证问题""" for attempt in range(1, max_retries + 1): print(f"\n修复尝试 {attempt}/{max_retries}") # 1. 启动修复子代理 fix_result = spawn_fix_agent(issues) if fix_result["status"] != "success": print("修复子代理执行失败") continue # 2. 启动验证子代理 verify_result = spawn_verify_agent(issues, fix_result) if verify_result["passed"]: print("✅ 验证通过") return { "status": "success", "fixes": fix_result, "verification": verify_result } print(f"⚠️ 验证失败: {verify_result['remaining_issues']}") # 更新剩余问题 issues = verify_result["remaining_issues"] print(f"❌ 已达到最大重试次数 ({max_retries})") return { "status": "failed", "remaining_issues": issues } ``` ## 最终汇报模板 ```markdown ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ DEV-WORKFLOW ► 开发完成 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ## 项目: {project_name} ### 完成摘要 | 阶段 | 状态 | 耗时 | |------|------|------| | 1. 头脑风暴 | ✓ 完成 | 5min | | 2. 方案设计 | ✓ 完成 | 10min | | 3. 方案审核 | ✓ 完成 | 8min | | 4. 方案汇报 | ✓ 完成 | 2min | | 5. Spec编排 | ✓ 完成 | 5min | | 6. 并行开发 | ✓ 完成 | 30min | | 7. 测试 | ✓ 完成 | 5min | | 8. 代码审查 | ✓ 完成 | 10min | | 9. 修复验证 | ✓ 完成 | 8min | **总耗时**: {total_time} ### 交付物 **文件变更**: - 新建: {new_files_count} 个文件 - 修改: {modified_files_count} 个文件 - 删除: {deleted_files_count} 个文件 **测试覆盖**: - 单元测试: {unit_tests} 个 - 集成测试: {integration_tests} 个 - 覆盖率: {coverage}% **代码质量**: - 严重问题: 0 (已全部修复) - 一般问题: 0 (已全部修复) - 代码审查: 通过 ### 遗留事项 {remaining_items} ### 后续建议 {recommendations} ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🎉 开发任务已完成! 详细文档: `.planning/dev-workflow/` ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ``` ## 状态更新 ```json { "current_phase": 9, "current_stage": "completed", "phases": { "9": { "status": "completed", "fixes": { "critical_fixed": 3, "major_fixed": 5, "retry_count": 1 }, "verification": { "passed": true, "timestamp": "2026-03-09T20:00:00+08:00" } } }, "completed_at": "2026-03-09T20:00:00+08:00" } ``` ## 文档归档 完成后,将所有文档归档: ``` .planning/dev-workflow/ ├── state.json # 最终状态 ├── requirements.json # 需求文档 ├── final-solution.md # 最终方案 ├── spec.md # 开发规格 ├── execution-plan.json # 执行计划 ├── test-results.json # 测试结果 ├── code-review/ # 代码审查 │ ├── review-X.md │ ├── review-Y.md │ └── review-Z.md └── final-report.md # 最终报告 ```