# Spec编排阶段 Prompt 模板 ## 目标 基于确认的综合方案,生成开发规格(Spec),分析任务依赖,生成分波执行计划。 ## Spec 生成 Prompt ``` 你是一个开发规划专家。请基于以下技术方案,生成详细的开发规格。 ## 技术方案 {final_solution} ## 任务 1. 将方案拆分为独立的开发任务 2. 每个任务要有明确的输入、输出、验收标准 3. 分析任务之间的依赖关系 4. 生成可并行执行的分波计划 ## 输出格式 ```markdown # 开发规格 (Development Spec) ## 项目概述 {project_summary} ## 任务列表 ### TASK-001: {task_name} **描述**: {description} **输入**: - {input_1} - {input_2} **输出**: - {output_file_1} - {output_file_2} **实现要点**: 1. {point_1} 2. {point_2} **验收标准**: - [ ] {criteria_1} - [ ] {criteria_2} **依赖**: TASK-XXX (如果有) **预计时间**: {estimated_time} **复杂度**: 低/中/高 --- ### TASK-002: ... [重复结构] --- ## 依赖关系图 ``` TASK-001 (无依赖) ↓ TASK-002 (依赖 001) TASK-003 (依赖 001) ← 可并行 ↓ ↓ TASK-004 (依赖 002, 003) ``` ## 分波执行计划 ### Wave 1 (并行执行) - TASK-001 ### Wave 2 (并行执行) - TASK-002 - TASK-003 ### Wave 3 (并行执行) - TASK-004 ## 文件变更清单 | 文件路径 | 操作 | 关联任务 | |----------|------|----------| | src/main.py | 新建 | TASK-001 | | src/utils.py | 新建 | TASK-002 | ## 测试策略 ### 单元测试 - {test_plan} ### 集成测试 - {integration_test_plan} ## 注意事项 - {note_1} - {note_2} ``` 请确保每个任务足够独立,可以由不同的开发者并行完成。 ``` ## 依赖分析规则 ### 无依赖任务 - 创建新文件 - 定义数据结构 - 编写工具函数 ### 有依赖任务 - 调用其他任务的输出 - 需要其他任务创建的模块 - 依赖其他任务的接口 ### 分波原则 1. **Wave 1**: 所有无依赖的任务 2. **Wave 2**: 只依赖 Wave 1 的任务 3. **Wave N**: 只依赖 Wave 1..N-1 的任务 ```python def analyze_dependencies(tasks: list) -> dict: """分析任务依赖,生成分波计划""" waves = {} assigned = set() wave_num = 1 while len(assigned) < len(tasks): # 找出所有依赖已满足的任务 wave_tasks = [] for task in tasks: if task["id"] in assigned: continue deps = task.get("dependencies", []) if all(d in assigned for d in deps): wave_tasks.append(task["id"]) if not wave_tasks: raise Exception("检测到循环依赖") waves[f"wave_{wave_num}"] = wave_tasks assigned.update(wave_tasks) wave_num += 1 return waves ``` ## 输出文件 - `.planning/dev-workflow/spec.md` - 开发规格 - `.planning/dev-workflow/execution-plan.json` - 执行计划(机器可读) ## 状态更新 ```json { "phases": { "5": { "status": "completed", "data": { "spec_file": "spec.md", "total_tasks": 10, "total_waves": 4, "execution_plan": "execution-plan.json" } } } } ```