# workflow: id: brownfield-service name: 棕地服务/API 增强 description: >- 用于通过新功能、现代化或性能改进来增强现有后端服务和 API 的代理工作流程。处理现有系统分析和安全集成。 type: brownfield project_types: - service-modernization - api-enhancement - microservice-extraction - performance-optimization - integration-enhancement sequence: - step: service_analysis agent: architect action: 分析现有项目并使用任务 document-project creates: 每个 document-project 模板的多个文档 notes: "审查现有服务文档、代码库、性能指标,并识别集成依赖项。" - agent: pm creates: prd.md uses: brownfield-prd-tmpl requires: existing_service_analysis notes: "创建专注于服务增强和现有系统分析的综合 PRD。保存输出:将最终的 prd.md 复制到您项目的 docs/ 文件夹中。" - agent: architect creates: architecture.md uses: brownfield-architecture-tmpl requires: prd.md notes: "创建包含服务集成策略和 API 演进规划的架构。保存输出:将最终的 architecture.md 复制到您项目的 docs/ 文件夹中。" - agent: po validates: all_artifacts uses: po-master-checklist notes: "验证所有文档的服务集成安全性和 API 兼容性。可能需要更新任何文档。" - agent: various updates: any_flagged_documents condition: po_checklist_issues notes: "如果 PO 发现问题,请返回相关代理进行修复,并将更新后的文档重新导出到 docs/ 文件夹。" - agent: po action: shard_documents creates: sharded_docs requires: all_artifacts_in_project notes: | 为 IDE 开发分片文档: - 选项 A:使用 PO 代理分片:@po 然后要求分片 docs/prd.md - 选项 B:手动:将 shard-doc 任务 + docs/prd.md 拖到聊天中 - 创建包含分片内容的 docs/prd/ 和 docs/architecture/ 文件夹 - agent: sm action: create_story creates: story.md requires: sharded_docs repeats: for_each_epic notes: | 故事创建周期: - SM 代理(新聊天):@sm → *create - 从分片文档创建下一个故事 - 故事以“草稿”状态开始 - agent: analyst/pm action: review_draft_story updates: story.md requires: story.md optional: true condition: user_wants_story_review notes: | 可选:审查并批准故事草稿 - 注意:story-review 任务即将推出 - 审查故事的完整性和一致性 - 更新故事状态:草稿 → 已批准 - agent: dev action: implement_story creates: implementation_files requires: story.md notes: | 开发代理(新聊天):@dev - 实施已批准的故事 - 使用所有更改更新文件列表 - 完成后将故事标记为“审查” - agent: qa action: review_implementation updates: implementation_files requires: implementation_files optional: true notes: | 可选:QA 代理(新聊天):@qa → review-story - 具有重构能力的高级开发人员审查 - 直接修复小问题 - 为剩余项目留下清单 - 更新故事状态(审查 → 完成或保持审查) - agent: dev action: address_qa_feedback updates: implementation_files condition: qa_left_unchecked_items notes: | 如果 QA 留下未检查的项目: - 开发代理(新聊天):处理剩余项目 - 返回 QA 进行最终批准 - repeat_development_cycle: action: continue_for_all_stories notes: | 对所有史诗故事重复故事周期(SM → 开发 → QA) 继续直到 PRD 中的所有故事都完成 - agent: po action: epic_retrospective creates: epic-retrospective.md condition: epic_complete optional: true notes: | 可选:史诗完成后 - 注意:epic-retrospective 任务即将推出 - 验证史诗是否正确完成 - 记录经验教训和改进 - workflow_end: action: project_complete notes: | 所有故事都已实施和审查! 项目开发阶段完成。 参考:{root}/data/bmad-kb.md#IDE Development Workflow flow_diagram: | ```mermaid graph TD A[开始:服务增强] --> B[分析师:分析现有服务] B --> C[项目经理:prd.md] C --> D[架构师:architecture.md] D --> E[产品负责人:使用 po-master-checklist 验证] E --> F{产品负责人发现问题?} F -->|是| G[返回相关代理进行修复] F -->|否| H[产品负责人:分片文档] G --> E H --> I[Scrum Master:创建故事] I --> J{审查故事草稿?} J -->|是| K[分析师/项目经理:审查并批准故事] J -->|否| L[开发人员:实施故事] K --> L L --> M{QA 审查?} M -->|是| N[QA:审查实施] M -->|否| O{更多故事?} N --> P{QA 发现问题?} P -->|是| Q[开发人员:处理 QA 反馈] P -->|否| O Q --> N O -->|是| I O -->|否| R{史诗回顾?} R -->|是| S[产品负责人:史诗回顾] R -->|否| T[项目完成] S --> T style T fill:#90EE90 style H fill:#ADD8E6 style I fill:#ADD8E6 style L fill:#ADD8E6 style C fill:#FFE4B5 style D fill:#FFE4B5 style K fill:#F0E68C style N fill:#F0E68C style S fill:#F0E68C ``` decision_guidance: when_to_use: - 服务增强需要协调的故事 - 需要 API 版本控制或重大更改 - 需要数据库架构更改 - 需要性能或可伸缩性改进 - 影响多个集成点 handoff_prompts: analyst_to_pm: "服务分析完成。创建包含服务集成策略的综合 PRD。" pm_to_architect: "PRD 已准备就绪。将其另存为您项目中的 docs/prd.md,然后创建服务架构。" architect_to_po: "架构已完成。将其另存为 docs/architecture.md。请验证所有工件的服务集成安全性。" po_issues: "PO 发现 [文档] 有问题。请返回 [代理] 进行修复并重新保存更新后的文档。" complete: "所有规划工件都已验证并保存在 docs/ 文件夹中。移动到 IDE 环境以开始开发。"