bmad-method 4.28.0 → 4.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/bmad-core/agents/bmad-master.md +0 -2
- package/bmad-core/agents/bmad-orchestrator.md +0 -3
- package/bmad-core/core-config.yaml +1 -5
- package/bmad-core/data/bmad-kb.md +2 -2
- package/bmad-core/tasks/correct-course.md +9 -12
- package/bmad-core/tasks/create-brownfield-story.md +10 -61
- package/bmad-core/tasks/create-deep-research-prompt.md +5 -17
- package/bmad-core/tasks/create-next-story.md +3 -4
- package/bmad-core/tasks/document-project.md +37 -13
- package/bmad-core/tasks/facilitate-brainstorming-session.md +1 -1
- package/bmad-core/tasks/generate-ai-frontend-prompt.md +1 -1
- package/bmad-core/tasks/kb-mode-interaction.md +8 -3
- package/bmad-core/tasks/review-story.md +3 -3
- package/bmad-core/tasks/shard-doc.md +5 -9
- package/common/tasks/create-doc.md +4 -0
- package/dist/agents/analyst.txt +43 -31
- package/dist/agents/architect.txt +42 -30
- package/dist/agents/bmad-master.txt +61 -602
- package/dist/agents/bmad-orchestrator.txt +7 -548
- package/dist/agents/pm.txt +19 -38
- package/dist/agents/po.txt +14 -21
- package/dist/agents/qa.txt +3 -3
- package/dist/agents/sm.txt +11 -15
- package/dist/agents/ux-expert.txt +6 -18
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +5 -17
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +50 -579
- package/dist/expansion-packs/bmad-creator-tools/agents/bmad-the-creator.txt +5 -17
- package/dist/teams/team-all.txt +70 -607
- package/dist/teams/team-fullstack.txt +65 -601
- package/dist/teams/team-ide-minimal.txt +26 -575
- package/dist/teams/team-no-ui.txt +64 -600
- package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +1 -0
- package/expansion-packs/bmad-creator-tools/config.yaml +1 -0
- package/expansion-packs/bmad-infrastructure-devops/config.yaml +1 -0
- package/package.json +1 -1
- package/tools/installer/lib/ide-setup.js +325 -12
- package/tools/installer/package.json +1 -1
- package/bmad-core/tasks/create-workflow-plan.md +0 -289
- package/bmad-core/tasks/doc-migration-task.md +0 -143
- package/bmad-core/tasks/update-workflow-plan.md +0 -248
|
@@ -172,7 +172,6 @@ workflow-guidance:
|
|
|
172
172
|
- Understand each workflow's purpose, options, and decision points
|
|
173
173
|
- Ask clarifying questions based on the workflow's structure
|
|
174
174
|
- Guide users through workflow selection when multiple options exist
|
|
175
|
-
- For complex projects, offer to create a workflow plan using create-workflow-plan task
|
|
176
175
|
- When appropriate, suggest: Would you like me to create a detailed workflow plan before starting?
|
|
177
176
|
- For workflows with divergent paths, help users choose the right path
|
|
178
177
|
- Adapt questions to the specific domain (e.g., game dev vs infrastructure vs web dev)
|
|
@@ -182,9 +181,7 @@ dependencies:
|
|
|
182
181
|
tasks:
|
|
183
182
|
- advanced-elicitation.md
|
|
184
183
|
- create-doc.md
|
|
185
|
-
- create-workflow-plan.md
|
|
186
184
|
- kb-mode-interaction.md
|
|
187
|
-
- update-workflow-plan.md
|
|
188
185
|
data:
|
|
189
186
|
- bmad-kb.md
|
|
190
187
|
- elicitation-methods.md
|
|
@@ -697,302 +694,11 @@ User can type `#yolo` to toggle to YOLO mode (process all sections at once).
|
|
|
697
694
|
- End with "Select 1-9 or just type your question/feedback:"
|
|
698
695
|
==================== END: .bmad-core/tasks/create-doc.md ====================
|
|
699
696
|
|
|
700
|
-
==================== START: .bmad-core/tasks/create-workflow-plan.md ====================
|
|
701
|
-
# Create Workflow Plan Task
|
|
702
|
-
|
|
703
|
-
## Purpose
|
|
704
|
-
|
|
705
|
-
Guide users through workflow selection and create a detailed plan document that outlines the selected workflow steps, decision points, and expected outputs. This task helps users understand what will happen before starting a complex workflow and provides a checklist to track progress.
|
|
706
|
-
|
|
707
|
-
## Task Instructions
|
|
708
|
-
|
|
709
|
-
### 1. Understand User's Goal
|
|
710
|
-
|
|
711
|
-
[[LLM: Start with discovery questions to understand what the user wants to accomplish]]
|
|
712
|
-
|
|
713
|
-
Ask the user:
|
|
714
|
-
|
|
715
|
-
1. **Project Type**:
|
|
716
|
-
- Are you starting a new project (greenfield) or enhancing an existing one (brownfield)?
|
|
717
|
-
- What type of application? (web app, service/API, UI only, full-stack)
|
|
718
|
-
|
|
719
|
-
2. **For Greenfield**:
|
|
720
|
-
- Do you need a quick prototype or production-ready application?
|
|
721
|
-
- Will this have a UI component?
|
|
722
|
-
- Single service or multiple services?
|
|
723
|
-
|
|
724
|
-
3. **For Brownfield**:
|
|
725
|
-
- What's the scope of the enhancement?
|
|
726
|
-
- Single bug fix or small feature (few hours)
|
|
727
|
-
- Small enhancement (1-3 stories)
|
|
728
|
-
- Major feature requiring coordination
|
|
729
|
-
- Architectural changes or modernization
|
|
730
|
-
- Do you have existing documentation?
|
|
731
|
-
- Are you following existing patterns or introducing new ones?
|
|
732
|
-
|
|
733
|
-
### 2. Recommend Appropriate Workflow
|
|
734
|
-
|
|
735
|
-
Based on the answers, recommend:
|
|
736
|
-
|
|
737
|
-
**Greenfield Options:**
|
|
738
|
-
|
|
739
|
-
- `greenfield-fullstack` - Complete web application
|
|
740
|
-
- `greenfield-service` - Backend API/service only
|
|
741
|
-
- `greenfield-ui` - Frontend only
|
|
742
|
-
|
|
743
|
-
**Brownfield Options:**
|
|
744
|
-
|
|
745
|
-
- `brownfield-create-story` - Single small change
|
|
746
|
-
- `brownfield-create-epic` - Small feature (1-3 stories)
|
|
747
|
-
- `brownfield-fullstack` - Major enhancement
|
|
748
|
-
|
|
749
|
-
**Simplified Option:**
|
|
750
|
-
|
|
751
|
-
- For users unsure or wanting flexibility, suggest starting with individual agent tasks
|
|
752
|
-
|
|
753
|
-
### 3. Explain Selected Workflow
|
|
754
|
-
|
|
755
|
-
[[LLM: Once workflow is selected, provide clear explanation]]
|
|
756
|
-
|
|
757
|
-
For the selected workflow, explain:
|
|
758
|
-
|
|
759
|
-
1. **Overview**: What this workflow accomplishes
|
|
760
|
-
2. **Duration**: Estimated time for planning phase
|
|
761
|
-
3. **Outputs**: What documents will be created
|
|
762
|
-
4. **Decision Points**: Where user input will be needed
|
|
763
|
-
5. **Requirements**: What information should be ready
|
|
764
|
-
|
|
765
|
-
### 4. Create Workflow Plan Document
|
|
766
|
-
|
|
767
|
-
[[LLM: Generate a comprehensive plan document with the following structure]]
|
|
768
|
-
|
|
769
|
-
```markdown
|
|
770
|
-
# Workflow Plan: {{Workflow Name}}
|
|
771
|
-
|
|
772
|
-
<!-- WORKFLOW-PLAN-META
|
|
773
|
-
workflow-id: {{workflow-id}}
|
|
774
|
-
status: active
|
|
775
|
-
created: {{ISO-8601 timestamp}}
|
|
776
|
-
updated: {{ISO-8601 timestamp}}
|
|
777
|
-
version: 1.0
|
|
778
|
-
-->
|
|
779
|
-
|
|
780
|
-
**Created Date**: {{current date}}
|
|
781
|
-
**Project**: {{project name}}
|
|
782
|
-
**Type**: {{greenfield/brownfield}}
|
|
783
|
-
**Status**: Active
|
|
784
|
-
**Estimated Planning Duration**: {{time estimate}}
|
|
785
|
-
|
|
786
|
-
## Objective
|
|
787
|
-
|
|
788
|
-
{{Clear description of what will be accomplished}}
|
|
789
|
-
|
|
790
|
-
## Selected Workflow
|
|
791
|
-
|
|
792
|
-
**Workflow**: `{{workflow-id}}`
|
|
793
|
-
**Reason**: {{Why this workflow fits the user's needs}}
|
|
794
|
-
|
|
795
|
-
## Workflow Steps
|
|
796
|
-
|
|
797
|
-
### Planning Phase
|
|
798
|
-
|
|
799
|
-
- [ ] Step 1: {{step name}} <!-- step-id: 1.1, agent: {{agent}}, task: {{task}} -->
|
|
800
|
-
- **Agent**: {{agent name}}
|
|
801
|
-
- **Action**: {{what happens}}
|
|
802
|
-
- **Output**: {{what's created}}
|
|
803
|
-
- **User Input**: {{if any}}
|
|
804
|
-
|
|
805
|
-
- [ ] Step 2: {{step name}} <!-- step-id: 1.2, agent: {{agent}}, task: {{task}} -->
|
|
806
|
-
- **Agent**: {{agent name}}
|
|
807
|
-
- **Action**: {{what happens}}
|
|
808
|
-
- **Output**: {{what's created}}
|
|
809
|
-
- **Decision Point**: {{if any}} <!-- decision-id: D1 -->
|
|
810
|
-
|
|
811
|
-
{{Continue for all planning steps}}
|
|
812
|
-
|
|
813
|
-
### Development Phase (IDE)
|
|
814
|
-
|
|
815
|
-
- [ ] Document Sharding <!-- step-id: 2.1, agent: po, task: shard-doc -->
|
|
816
|
-
- Prepare documents for story creation
|
|
817
|
-
|
|
818
|
-
- [ ] Story Development Cycle <!-- step-id: 2.2, repeats: true -->
|
|
819
|
-
- [ ] Create story (SM agent) <!-- step-id: 2.2.1, agent: sm, task: create-next-story -->
|
|
820
|
-
- [ ] Review story (optional) <!-- step-id: 2.2.2, agent: analyst, optional: true -->
|
|
821
|
-
- [ ] Implement story (Dev agent) <!-- step-id: 2.2.3, agent: dev -->
|
|
822
|
-
- [ ] QA review (optional) <!-- step-id: 2.2.4, agent: qa, optional: true -->
|
|
823
|
-
- [ ] Repeat for all stories
|
|
824
|
-
|
|
825
|
-
- [ ] Epic Retrospective (optional) <!-- step-id: 2.3, agent: po, optional: true -->
|
|
826
|
-
|
|
827
|
-
## Key Decision Points
|
|
828
|
-
|
|
829
|
-
1. **{{Decision Name}}** (Step {{n}}): <!-- decision-id: D1, status: pending -->
|
|
830
|
-
- Trigger: {{what causes this decision}}
|
|
831
|
-
- Options: {{available choices}}
|
|
832
|
-
- Impact: {{how it affects the workflow}}
|
|
833
|
-
- Decision Made: _Pending_
|
|
834
|
-
|
|
835
|
-
{{List all decision points}}
|
|
836
|
-
|
|
837
|
-
## Expected Outputs
|
|
838
|
-
|
|
839
|
-
### Planning Documents
|
|
840
|
-
- [ ] {{document 1}} - {{description}}
|
|
841
|
-
- [ ] {{document 2}} - {{description}}
|
|
842
|
-
{{etc...}}
|
|
843
|
-
|
|
844
|
-
### Development Artifacts
|
|
845
|
-
- [ ] Stories in `docs/stories/`
|
|
846
|
-
- [ ] Implementation code
|
|
847
|
-
- [ ] Tests
|
|
848
|
-
- [ ] Updated documentation
|
|
849
|
-
|
|
850
|
-
## Prerequisites Checklist
|
|
851
|
-
|
|
852
|
-
Before starting this workflow, ensure you have:
|
|
853
|
-
|
|
854
|
-
- [ ] {{prerequisite 1}}
|
|
855
|
-
- [ ] {{prerequisite 2}}
|
|
856
|
-
- [ ] {{prerequisite 3}}
|
|
857
|
-
{{etc...}}
|
|
858
|
-
|
|
859
|
-
## Customization Options
|
|
860
|
-
|
|
861
|
-
Based on your project needs, you may:
|
|
862
|
-
- Skip {{optional step}} if {{condition}}
|
|
863
|
-
- Add {{additional step}} if {{condition}}
|
|
864
|
-
- Choose {{alternative}} instead of {{default}}
|
|
865
|
-
|
|
866
|
-
## Risk Considerations
|
|
867
|
-
|
|
868
|
-
{{For brownfield only}}
|
|
869
|
-
- Integration complexity: {{assessment}}
|
|
870
|
-
- Rollback strategy: {{approach}}
|
|
871
|
-
- Testing requirements: {{special needs}}
|
|
872
|
-
|
|
873
|
-
## Next Steps
|
|
874
|
-
|
|
875
|
-
1. Review this plan and confirm it matches your expectations
|
|
876
|
-
2. Gather any missing prerequisites
|
|
877
|
-
3. Start workflow with: `*task workflow {{workflow-id}}`
|
|
878
|
-
4. Or begin with first agent: `@{{first-agent}}`
|
|
879
|
-
|
|
880
|
-
## Notes
|
|
881
|
-
|
|
882
|
-
{{Any additional context or warnings}}
|
|
883
|
-
|
|
884
|
-
---
|
|
885
|
-
*This plan can be updated as you progress through the workflow. Check off completed items to track progress.*
|
|
886
|
-
```
|
|
887
|
-
|
|
888
|
-
### 5. Save and Present Plan
|
|
889
|
-
|
|
890
|
-
1. Save the plan as `docs/workflow-plan.md`
|
|
891
|
-
2. Inform user: "Workflow plan created at docs/workflow-plan.md"
|
|
892
|
-
3. Offer options:
|
|
893
|
-
- Review the plan together
|
|
894
|
-
- Start the workflow now
|
|
895
|
-
- Gather prerequisites first
|
|
896
|
-
- Modify the plan
|
|
897
|
-
|
|
898
|
-
### 6. Plan Variations
|
|
899
|
-
|
|
900
|
-
[[LLM: Adjust plan detail based on workflow complexity]]
|
|
901
|
-
|
|
902
|
-
**For Simple Workflows** (create-story, create-epic):
|
|
903
|
-
|
|
904
|
-
- Simpler checklist format
|
|
905
|
-
- Focus on immediate next steps
|
|
906
|
-
- Less detailed explanations
|
|
907
|
-
|
|
908
|
-
**For Complex Workflows** (full greenfield/brownfield):
|
|
909
|
-
|
|
910
|
-
- Detailed step breakdowns
|
|
911
|
-
- All decision points documented
|
|
912
|
-
- Comprehensive output descriptions
|
|
913
|
-
- Risk mitigation sections
|
|
914
|
-
|
|
915
|
-
**For Brownfield Workflows**:
|
|
916
|
-
|
|
917
|
-
- Include existing system impact analysis
|
|
918
|
-
- Document integration checkpoints
|
|
919
|
-
- Add rollback considerations
|
|
920
|
-
- Note documentation dependencies
|
|
921
|
-
|
|
922
|
-
### 7. Interactive Planning Mode
|
|
923
|
-
|
|
924
|
-
[[LLM: If user wants to customize the workflow]]
|
|
925
|
-
|
|
926
|
-
If user wants to modify the standard workflow:
|
|
927
|
-
|
|
928
|
-
1. Present workflow steps as options
|
|
929
|
-
2. Allow skipping optional steps
|
|
930
|
-
3. Let user reorder certain steps
|
|
931
|
-
4. Document customizations in plan
|
|
932
|
-
5. Warn about dependencies if steps are skipped
|
|
933
|
-
|
|
934
|
-
### 8. Execution Guidance
|
|
935
|
-
|
|
936
|
-
After plan is created, provide clear guidance:
|
|
937
|
-
|
|
938
|
-
```text
|
|
939
|
-
Your workflow plan is ready! Here's how to proceed:
|
|
940
|
-
|
|
941
|
-
1. **Review the plan**: Check that all steps align with your goals
|
|
942
|
-
2. **Gather prerequisites**: Use the checklist to ensure you're ready
|
|
943
|
-
3. **Start execution**:
|
|
944
|
-
- Full workflow: `*task workflow {{workflow-id}}`
|
|
945
|
-
- Step by step: Start with `@{{first-agent}}`
|
|
946
|
-
4. **Track progress**: Check off steps in the plan as completed
|
|
947
|
-
|
|
948
|
-
Would you like to:
|
|
949
|
-
a) Review the plan together
|
|
950
|
-
b) Start the workflow now
|
|
951
|
-
c) Gather prerequisites first
|
|
952
|
-
d) Modify the plan
|
|
953
|
-
```
|
|
954
|
-
|
|
955
|
-
## Success Criteria
|
|
956
|
-
|
|
957
|
-
The workflow plan is successful when:
|
|
958
|
-
|
|
959
|
-
1. User clearly understands what will happen
|
|
960
|
-
2. All decision points are documented
|
|
961
|
-
3. Prerequisites are identified
|
|
962
|
-
4. Expected outputs are clear
|
|
963
|
-
5. User feels confident to proceed
|
|
964
|
-
6. Plan serves as useful progress tracker
|
|
965
|
-
|
|
966
|
-
## Integration with BMad Master and Orchestrator
|
|
967
|
-
|
|
968
|
-
When used by BMad Master or BMad Orchestrator, this task should:
|
|
969
|
-
|
|
970
|
-
1. Be offered when user asks about workflows
|
|
971
|
-
2. Be suggested before starting complex workflows
|
|
972
|
-
3. Create a plan that the agent can reference during execution
|
|
973
|
-
4. Allow the agent to track progress against the plan
|
|
974
|
-
|
|
975
|
-
## Example Usage
|
|
976
|
-
|
|
977
|
-
```text
|
|
978
|
-
User: "I need to add a payment system to my existing app"
|
|
979
|
-
|
|
980
|
-
BMad Orchestrator: "Let me help you create a workflow plan for that enhancement. I'll ask a few questions to recommend the best approach..."
|
|
981
|
-
|
|
982
|
-
[Runs through discovery questions]
|
|
983
|
-
|
|
984
|
-
BMad Orchestrator: "Based on your answers, I recommend the brownfield-fullstack workflow. Let me create a detailed plan for you..."
|
|
985
|
-
|
|
986
|
-
[Creates and saves plan]
|
|
987
|
-
|
|
988
|
-
BMad Orchestrator: "I've created a workflow plan at docs/workflow-plan.md. This shows all the steps we'll go through, what documents will be created, and where you'll need to make decisions. Would you like to review it together?"
|
|
989
|
-
```
|
|
990
|
-
==================== END: .bmad-core/tasks/create-workflow-plan.md ====================
|
|
991
|
-
|
|
992
697
|
==================== START: .bmad-core/tasks/kb-mode-interaction.md ====================
|
|
993
698
|
# KB Mode Interaction Task
|
|
994
699
|
|
|
995
700
|
## Purpose
|
|
701
|
+
|
|
996
702
|
Provide a user-friendly interface to the BMad knowledge base without overwhelming users with information upfront.
|
|
997
703
|
|
|
998
704
|
## Instructions
|
|
@@ -1000,11 +706,11 @@ Provide a user-friendly interface to the BMad knowledge base without overwhelmin
|
|
|
1000
706
|
When entering KB mode (*kb-mode), follow these steps:
|
|
1001
707
|
|
|
1002
708
|
### 1. Welcome and Guide
|
|
1003
|
-
Announce entering KB mode with a brief, friendly introduction:
|
|
1004
709
|
|
|
1005
|
-
|
|
710
|
+
Announce entering KB mode with a brief, friendly introduction.
|
|
1006
711
|
|
|
1007
712
|
### 2. Present Topic Areas
|
|
713
|
+
|
|
1008
714
|
Offer a concise list of main topic areas the user might want to explore:
|
|
1009
715
|
|
|
1010
716
|
**What would you like to know more about?**
|
|
@@ -1021,19 +727,23 @@ Offer a concise list of main topic areas the user might want to explore:
|
|
|
1021
727
|
Or ask me about anything else related to BMad-Method!
|
|
1022
728
|
|
|
1023
729
|
### 3. Respond Contextually
|
|
730
|
+
|
|
1024
731
|
- Wait for user's specific question or topic selection
|
|
1025
732
|
- Provide focused, relevant information from the knowledge base
|
|
1026
733
|
- Offer to dive deeper or explore related topics
|
|
1027
734
|
- Keep responses concise unless user asks for detailed explanations
|
|
1028
735
|
|
|
1029
736
|
### 4. Interactive Exploration
|
|
737
|
+
|
|
1030
738
|
- After answering, suggest related topics they might find helpful
|
|
1031
739
|
- Maintain conversational flow rather than data dumping
|
|
1032
740
|
- Use examples when appropriate
|
|
1033
741
|
- Reference specific documentation sections when relevant
|
|
1034
742
|
|
|
1035
743
|
### 5. Exit Gracefully
|
|
744
|
+
|
|
1036
745
|
When user is done or wants to exit KB mode:
|
|
746
|
+
|
|
1037
747
|
- Summarize key points discussed if helpful
|
|
1038
748
|
- Remind them they can return to KB mode anytime with *kb-mode
|
|
1039
749
|
- Suggest next steps based on what was discussed
|
|
@@ -1062,257 +772,6 @@ Or ask me about anything else related to BMad-Method!
|
|
|
1062
772
|
**Assistant**: [Provides focused information about workflows from the KB, then offers to explore specific workflow types or related topics]
|
|
1063
773
|
==================== END: .bmad-core/tasks/kb-mode-interaction.md ====================
|
|
1064
774
|
|
|
1065
|
-
==================== START: .bmad-core/tasks/update-workflow-plan.md ====================
|
|
1066
|
-
# Update Workflow Plan Task
|
|
1067
|
-
|
|
1068
|
-
## Purpose
|
|
1069
|
-
|
|
1070
|
-
Update the status of steps in an active workflow plan, mark completions, add notes about deviations, and maintain an accurate record of workflow progress. This task can be called directly by users or automatically by other tasks upon completion.
|
|
1071
|
-
|
|
1072
|
-
## Task Instructions
|
|
1073
|
-
|
|
1074
|
-
### 0. Load Plan Configuration
|
|
1075
|
-
|
|
1076
|
-
[[LLM: First load core-config.yaml to get plan settings]]
|
|
1077
|
-
|
|
1078
|
-
Check workflow configuration:
|
|
1079
|
-
|
|
1080
|
-
- `workflow.planFile` - Location of the plan (default: docs/workflow-plan.md)
|
|
1081
|
-
- `workflow.trackProgress` - Whether tracking is enabled
|
|
1082
|
-
- `workflow.updateOnCompletion` - Whether to auto-update on task completion
|
|
1083
|
-
|
|
1084
|
-
If tracking is disabled, inform user and exit.
|
|
1085
|
-
|
|
1086
|
-
### 1. Verify Plan Exists
|
|
1087
|
-
|
|
1088
|
-
[[LLM: Check if workflow plan exists at configured location]]
|
|
1089
|
-
|
|
1090
|
-
If no plan exists:
|
|
1091
|
-
|
|
1092
|
-
```
|
|
1093
|
-
No active workflow plan found at {location}.
|
|
1094
|
-
Would you like to create one? Use *plan command.
|
|
1095
|
-
```
|
|
1096
|
-
|
|
1097
|
-
### 2. Determine Update Type
|
|
1098
|
-
|
|
1099
|
-
[[LLM: Ask user what type of update they want to make]]
|
|
1100
|
-
|
|
1101
|
-
Present options:
|
|
1102
|
-
|
|
1103
|
-
```
|
|
1104
|
-
What would you like to update in the workflow plan?
|
|
1105
|
-
|
|
1106
|
-
1. Mark step as complete
|
|
1107
|
-
2. Update current step
|
|
1108
|
-
3. Add deviation note
|
|
1109
|
-
4. Mark decision point resolution
|
|
1110
|
-
5. Update overall status
|
|
1111
|
-
6. View current plan status only
|
|
1112
|
-
|
|
1113
|
-
Please select an option (1-6):
|
|
1114
|
-
```
|
|
1115
|
-
|
|
1116
|
-
### 3. Parse Current Plan
|
|
1117
|
-
|
|
1118
|
-
[[LLM: Read and parse the plan to understand current state]]
|
|
1119
|
-
|
|
1120
|
-
Extract:
|
|
1121
|
-
|
|
1122
|
-
- All steps with their checkbox status
|
|
1123
|
-
- Step IDs from comments (if present)
|
|
1124
|
-
- Current completion percentage
|
|
1125
|
-
- Any existing deviation notes
|
|
1126
|
-
- Decision points and their status
|
|
1127
|
-
|
|
1128
|
-
### 4. Execute Updates
|
|
1129
|
-
|
|
1130
|
-
#### 4.1 Mark Step Complete
|
|
1131
|
-
|
|
1132
|
-
If user selected option 1:
|
|
1133
|
-
|
|
1134
|
-
1. Show numbered list of incomplete steps
|
|
1135
|
-
2. Ask which step to mark complete
|
|
1136
|
-
3. Update the checkbox from `[ ]` to `[x]`
|
|
1137
|
-
4. Add completion timestamp: `<!-- completed: YYYY-MM-DD HH:MM -->`
|
|
1138
|
-
5. If this was the current step, identify next step
|
|
1139
|
-
|
|
1140
|
-
#### 4.2 Update Current Step
|
|
1141
|
-
|
|
1142
|
-
If user selected option 2:
|
|
1143
|
-
|
|
1144
|
-
1. Show all steps with current status
|
|
1145
|
-
2. Ask which step is now current
|
|
1146
|
-
3. Add/move `<!-- current-step -->` marker
|
|
1147
|
-
4. Optionally add note about why sequence changed
|
|
1148
|
-
|
|
1149
|
-
#### 4.3 Add Deviation Note
|
|
1150
|
-
|
|
1151
|
-
If user selected option 3:
|
|
1152
|
-
|
|
1153
|
-
1. Ask for deviation description
|
|
1154
|
-
2. Ask which step this relates to (or general)
|
|
1155
|
-
3. Insert note in appropriate location:
|
|
1156
|
-
|
|
1157
|
-
```markdown
|
|
1158
|
-
> **Deviation Note** (YYYY-MM-DD): {user_note}
|
|
1159
|
-
> Related to: Step X.Y or General workflow
|
|
1160
|
-
```
|
|
1161
|
-
|
|
1162
|
-
#### 4.4 Mark Decision Resolution
|
|
1163
|
-
|
|
1164
|
-
If user selected option 4:
|
|
1165
|
-
|
|
1166
|
-
1. Show pending decision points
|
|
1167
|
-
2. Ask which decision was made
|
|
1168
|
-
3. Record the decision and chosen path
|
|
1169
|
-
4. Update related steps based on decision
|
|
1170
|
-
|
|
1171
|
-
#### 4.5 Update Overall Status
|
|
1172
|
-
|
|
1173
|
-
If user selected option 5:
|
|
1174
|
-
|
|
1175
|
-
1. Show current overall status
|
|
1176
|
-
2. Provide options:
|
|
1177
|
-
- Active (continuing with plan)
|
|
1178
|
-
- Paused (temporarily stopped)
|
|
1179
|
-
- Abandoned (no longer following)
|
|
1180
|
-
- Complete (all steps done)
|
|
1181
|
-
3. Update plan header with new status
|
|
1182
|
-
|
|
1183
|
-
### 5. Automatic Updates (When Called by Tasks)
|
|
1184
|
-
|
|
1185
|
-
[[LLM: When called automatically by another task]]
|
|
1186
|
-
|
|
1187
|
-
If called with parameters:
|
|
1188
|
-
|
|
1189
|
-
```
|
|
1190
|
-
task: {task_name}
|
|
1191
|
-
step_id: {step_identifier}
|
|
1192
|
-
status: complete|skipped|failed
|
|
1193
|
-
note: {optional_note}
|
|
1194
|
-
```
|
|
1195
|
-
|
|
1196
|
-
Automatically:
|
|
1197
|
-
|
|
1198
|
-
1. Find the corresponding step
|
|
1199
|
-
2. Update its status
|
|
1200
|
-
3. Add completion metadata
|
|
1201
|
-
4. Add note if provided
|
|
1202
|
-
5. Calculate new progress percentage
|
|
1203
|
-
|
|
1204
|
-
### 6. Generate Update Summary
|
|
1205
|
-
|
|
1206
|
-
After updates, show summary:
|
|
1207
|
-
|
|
1208
|
-
```
|
|
1209
|
-
✅ Workflow Plan Updated
|
|
1210
|
-
|
|
1211
|
-
Changes made:
|
|
1212
|
-
- {change_1}
|
|
1213
|
-
- {change_2}
|
|
1214
|
-
|
|
1215
|
-
New Status:
|
|
1216
|
-
- Progress: {X}% complete ({completed}/{total} steps)
|
|
1217
|
-
- Current Step: {current_step}
|
|
1218
|
-
- Next Recommended: {next_step}
|
|
1219
|
-
|
|
1220
|
-
Plan location: {file_path}
|
|
1221
|
-
```
|
|
1222
|
-
|
|
1223
|
-
### 7. Integration with Other Tasks
|
|
1224
|
-
|
|
1225
|
-
[[LLM: How other tasks should call this]]
|
|
1226
|
-
|
|
1227
|
-
Other tasks can integrate by:
|
|
1228
|
-
|
|
1229
|
-
1. **After Task Completion**:
|
|
1230
|
-
|
|
1231
|
-
```
|
|
1232
|
-
At end of task execution:
|
|
1233
|
-
- Check if task corresponds to a plan step
|
|
1234
|
-
- If yes, call update-workflow-plan with:
|
|
1235
|
-
- task: {current_task_name}
|
|
1236
|
-
- step_id: {matching_step}
|
|
1237
|
-
- status: complete
|
|
1238
|
-
```
|
|
1239
|
-
|
|
1240
|
-
2. **On Task Failure**:
|
|
1241
|
-
|
|
1242
|
-
```
|
|
1243
|
-
If task fails:
|
|
1244
|
-
- Call update-workflow-plan with:
|
|
1245
|
-
- task: {current_task_name}
|
|
1246
|
-
- status: failed
|
|
1247
|
-
- note: {failure_reason}
|
|
1248
|
-
```
|
|
1249
|
-
|
|
1250
|
-
### 8. Plan Status Display
|
|
1251
|
-
|
|
1252
|
-
[[LLM: When user selects view status only]]
|
|
1253
|
-
|
|
1254
|
-
Display comprehensive status:
|
|
1255
|
-
|
|
1256
|
-
```markdown
|
|
1257
|
-
📋 Workflow Plan Status
|
|
1258
|
-
━━━━━━━━━━━━━━━━━━━━
|
|
1259
|
-
Workflow: {workflow_name}
|
|
1260
|
-
Status: {Active|Paused|Complete}
|
|
1261
|
-
Progress: {X}% complete ({completed}/{total} steps)
|
|
1262
|
-
Last Updated: {timestamp}
|
|
1263
|
-
|
|
1264
|
-
✅ Completed Steps:
|
|
1265
|
-
- [x] Step 1.1: {description} (completed: {date})
|
|
1266
|
-
- [x] Step 1.2: {description} (completed: {date})
|
|
1267
|
-
|
|
1268
|
-
🔄 Current Step:
|
|
1269
|
-
- [ ] Step 2.1: {description} <!-- current-step -->
|
|
1270
|
-
Agent: {agent_name}
|
|
1271
|
-
Task: {task_name}
|
|
1272
|
-
|
|
1273
|
-
📌 Upcoming Steps:
|
|
1274
|
-
- [ ] Step 2.2: {description}
|
|
1275
|
-
- [ ] Step 3.1: {description}
|
|
1276
|
-
|
|
1277
|
-
⚠️ Deviations/Notes:
|
|
1278
|
-
{any_deviation_notes}
|
|
1279
|
-
|
|
1280
|
-
📊 Decision Points:
|
|
1281
|
-
- Decision 1: {status} - {choice_made}
|
|
1282
|
-
- Decision 2: Pending
|
|
1283
|
-
|
|
1284
|
-
💡 Next Action:
|
|
1285
|
-
Based on the plan, you should {recommended_action}
|
|
1286
|
-
```
|
|
1287
|
-
|
|
1288
|
-
## Success Criteria
|
|
1289
|
-
|
|
1290
|
-
The update is successful when:
|
|
1291
|
-
|
|
1292
|
-
1. Plan accurately reflects current workflow state
|
|
1293
|
-
2. All updates are clearly timestamped
|
|
1294
|
-
3. Deviations are documented with reasons
|
|
1295
|
-
4. Progress calculation is correct
|
|
1296
|
-
5. Next steps are clear to user
|
|
1297
|
-
6. Plan remains readable and well-formatted
|
|
1298
|
-
|
|
1299
|
-
## Error Handling
|
|
1300
|
-
|
|
1301
|
-
- **Plan file not found**: Offer to create new plan
|
|
1302
|
-
- **Malformed plan**: Attempt basic updates, warn user
|
|
1303
|
-
- **Write permission error**: Show changes that would be made
|
|
1304
|
-
- **Step not found**: Show available steps, ask for clarification
|
|
1305
|
-
- **Concurrent updates**: Implement simple locking or warn about conflicts
|
|
1306
|
-
|
|
1307
|
-
## Notes
|
|
1308
|
-
|
|
1309
|
-
- Always preserve plan history (don't delete old information)
|
|
1310
|
-
- Keep updates atomic to prevent corruption
|
|
1311
|
-
- Consider creating backup before major updates
|
|
1312
|
-
- Updates should enhance, not complicate, the workflow experience
|
|
1313
|
-
- If plan becomes too cluttered, suggest creating fresh plan for next phase
|
|
1314
|
-
==================== END: .bmad-core/tasks/update-workflow-plan.md ====================
|
|
1315
|
-
|
|
1316
775
|
==================== START: .bmad-core/data/bmad-kb.md ====================
|
|
1317
776
|
# BMad Knowledge Base
|
|
1318
777
|
|
|
@@ -2331,7 +1790,7 @@ Agents should be workflow-aware: know active workflow, their role, access artifa
|
|
|
2331
1790
|
==================== START: .bmad-core/tasks/facilitate-brainstorming-session.md ====================
|
|
2332
1791
|
---
|
|
2333
1792
|
docOutputLocation: docs/brainstorming-session-results.md
|
|
2334
|
-
template: brainstorming-output-tmpl
|
|
1793
|
+
template: ".bmad-core/templates/brainstorming-output-tmpl.md"
|
|
2335
1794
|
---
|
|
2336
1795
|
|
|
2337
1796
|
# Facilitate Brainstorming Session Task
|
|
@@ -2484,7 +1943,7 @@ Generate well-structured research prompts that:
|
|
|
2484
1943
|
|
|
2485
1944
|
## Research Type Selection
|
|
2486
1945
|
|
|
2487
|
-
|
|
1946
|
+
CRITICAL: First, help the user select the most appropriate research focus based on their needs and any input documents they've provided.
|
|
2488
1947
|
|
|
2489
1948
|
### 1. Research Focus Options
|
|
2490
1949
|
|
|
@@ -2547,15 +2006,13 @@ Present these numbered options to the user:
|
|
|
2547
2006
|
- Consider regulatory and legal implications
|
|
2548
2007
|
|
|
2549
2008
|
9. **Custom Research Focus**
|
|
2550
|
-
|
|
2009
|
+
|
|
2551
2010
|
- User-defined research objectives
|
|
2552
2011
|
- Specialized domain investigation
|
|
2553
2012
|
- Cross-functional research needs
|
|
2554
2013
|
|
|
2555
2014
|
### 2. Input Processing
|
|
2556
2015
|
|
|
2557
|
-
[[LLM: Based on the selected research type and any provided inputs (project brief, brainstorming results, etc.), extract relevant context and constraints.]]
|
|
2558
|
-
|
|
2559
2016
|
**If Project Brief provided:**
|
|
2560
2017
|
|
|
2561
2018
|
- Extract key product concepts and goals
|
|
@@ -2588,11 +2045,11 @@ Present these numbered options to the user:
|
|
|
2588
2045
|
|
|
2589
2046
|
### 3. Research Prompt Structure
|
|
2590
2047
|
|
|
2591
|
-
|
|
2048
|
+
CRITICAL: collaboratively develop a comprehensive research prompt with these components.
|
|
2592
2049
|
|
|
2593
2050
|
#### A. Research Objectives
|
|
2594
2051
|
|
|
2595
|
-
|
|
2052
|
+
CRITICAL: collaborate with the user to articulate clear, specific objectives for the research.
|
|
2596
2053
|
|
|
2597
2054
|
- Primary research goal and purpose
|
|
2598
2055
|
- Key decisions the research will inform
|
|
@@ -2601,7 +2058,7 @@ Present these numbered options to the user:
|
|
|
2601
2058
|
|
|
2602
2059
|
#### B. Research Questions
|
|
2603
2060
|
|
|
2604
|
-
|
|
2061
|
+
CRITICAL: collaborate with the user to develop specific, actionable research questions organized by theme.
|
|
2605
2062
|
|
|
2606
2063
|
**Core Questions:**
|
|
2607
2064
|
|
|
@@ -2617,8 +2074,6 @@ Present these numbered options to the user:
|
|
|
2617
2074
|
|
|
2618
2075
|
#### C. Research Methodology
|
|
2619
2076
|
|
|
2620
|
-
[[LLM: Specify appropriate research methods based on the type and objectives.]]
|
|
2621
|
-
|
|
2622
2077
|
**Data Collection Methods:**
|
|
2623
2078
|
|
|
2624
2079
|
- Secondary research sources
|
|
@@ -2635,8 +2090,6 @@ Present these numbered options to the user:
|
|
|
2635
2090
|
|
|
2636
2091
|
#### D. Output Requirements
|
|
2637
2092
|
|
|
2638
|
-
[[LLM: Define how research findings should be structured and presented.]]
|
|
2639
|
-
|
|
2640
2093
|
**Format Specifications:**
|
|
2641
2094
|
|
|
2642
2095
|
- Executive summary requirements
|
|
@@ -2653,8 +2106,6 @@ Present these numbered options to the user:
|
|
|
2653
2106
|
|
|
2654
2107
|
### 4. Prompt Generation
|
|
2655
2108
|
|
|
2656
|
-
[[LLM: Synthesize all elements into a comprehensive, ready-to-use research prompt.]]
|
|
2657
|
-
|
|
2658
2109
|
**Research Prompt Template:**
|
|
2659
2110
|
|
|
2660
2111
|
```markdown
|
|
@@ -2723,8 +2174,6 @@ Present these numbered options to the user:
|
|
|
2723
2174
|
|
|
2724
2175
|
### 5. Review and Refinement
|
|
2725
2176
|
|
|
2726
|
-
[[LLM: Present the draft research prompt for user review and refinement.]]
|
|
2727
|
-
|
|
2728
2177
|
1. **Present Complete Prompt**
|
|
2729
2178
|
|
|
2730
2179
|
- Show the full research prompt
|
|
@@ -2746,8 +2195,6 @@ Present these numbered options to the user:
|
|
|
2746
2195
|
|
|
2747
2196
|
### 6. Next Steps Guidance
|
|
2748
2197
|
|
|
2749
|
-
[[LLM: Provide clear guidance on how to use the research prompt.]]
|
|
2750
|
-
|
|
2751
2198
|
**Execution Options:**
|
|
2752
2199
|
|
|
2753
2200
|
1. **Use with AI Research Assistant**: Provide this prompt to an AI model with research capabilities
|
|
@@ -2782,9 +2229,9 @@ Generate comprehensive documentation for existing projects optimized for AI deve
|
|
|
2782
2229
|
|
|
2783
2230
|
### 1. Initial Project Analysis
|
|
2784
2231
|
|
|
2785
|
-
|
|
2232
|
+
**CRITICAL:** First, check if a PRD or requirements document exists in context. If yes, use it to focus your documentation efforts on relevant areas only.
|
|
2786
2233
|
|
|
2787
|
-
**IF PRD EXISTS**:
|
|
2234
|
+
**IF PRD EXISTS**:
|
|
2788
2235
|
|
|
2789
2236
|
- Review the PRD to understand what enhancement/feature is planned
|
|
2790
2237
|
- Identify which modules, services, or areas will be affected
|
|
@@ -2830,11 +2277,10 @@ Ask the user these elicitation questions to better understand their needs:
|
|
|
2830
2277
|
- Are there any existing documentation standards or formats you prefer?
|
|
2831
2278
|
- What level of technical detail should the documentation target? (junior developers, senior developers, mixed team)
|
|
2832
2279
|
- Is there a specific feature or enhancement you're planning? (This helps focus documentation)
|
|
2833
|
-
]]
|
|
2834
2280
|
|
|
2835
2281
|
### 2. Deep Codebase Analysis
|
|
2836
2282
|
|
|
2837
|
-
|
|
2283
|
+
CRITICAL: Before generating documentation, conduct extensive analysis of the existing codebase:
|
|
2838
2284
|
|
|
2839
2285
|
1. **Explore Key Areas**:
|
|
2840
2286
|
- Entry points (main files, index files, app initializers)
|
|
@@ -2857,13 +2303,14 @@ Ask the user these elicitation questions to better understand their needs:
|
|
|
2857
2303
|
- Document workarounds and technical debt
|
|
2858
2304
|
- Note areas that differ from standard patterns
|
|
2859
2305
|
|
|
2860
|
-
**IF PRD PROVIDED**: Also analyze what would need to change for the enhancement
|
|
2306
|
+
**IF PRD PROVIDED**: Also analyze what would need to change for the enhancement
|
|
2861
2307
|
|
|
2862
2308
|
### 3. Core Documentation Generation
|
|
2863
2309
|
|
|
2864
2310
|
[[LLM: Generate a comprehensive BROWNFIELD architecture document that reflects the ACTUAL state of the codebase.
|
|
2865
2311
|
|
|
2866
2312
|
**CRITICAL**: This is NOT an aspirational architecture document. Document what EXISTS, including:
|
|
2313
|
+
|
|
2867
2314
|
- Technical debt and workarounds
|
|
2868
2315
|
- Inconsistent patterns between different parts
|
|
2869
2316
|
- Legacy code that can't be changed
|
|
@@ -2875,13 +2322,16 @@ Ask the user these elicitation questions to better understand their needs:
|
|
|
2875
2322
|
# [Project Name] Brownfield Architecture Document
|
|
2876
2323
|
|
|
2877
2324
|
## Introduction
|
|
2325
|
+
|
|
2878
2326
|
This document captures the CURRENT STATE of the [Project Name] codebase, including technical debt, workarounds, and real-world patterns. It serves as a reference for AI agents working on enhancements.
|
|
2879
2327
|
|
|
2880
2328
|
### Document Scope
|
|
2329
|
+
|
|
2881
2330
|
[If PRD provided: "Focused on areas relevant to: {enhancement description}"]
|
|
2882
2331
|
[If no PRD: "Comprehensive documentation of entire system"]
|
|
2883
2332
|
|
|
2884
2333
|
### Change Log
|
|
2334
|
+
|
|
2885
2335
|
| Date | Version | Description | Author |
|
|
2886
2336
|
|------|---------|-------------|--------|
|
|
2887
2337
|
| [Date] | 1.0 | Initial brownfield analysis | [Analyst] |
|
|
@@ -2889,6 +2339,7 @@ This document captures the CURRENT STATE of the [Project Name] codebase, includi
|
|
|
2889
2339
|
## Quick Reference - Key Files and Entry Points
|
|
2890
2340
|
|
|
2891
2341
|
### Critical Files for Understanding the System
|
|
2342
|
+
|
|
2892
2343
|
- **Main Entry**: `src/index.js` (or actual entry point)
|
|
2893
2344
|
- **Configuration**: `config/app.config.js`, `.env.example`
|
|
2894
2345
|
- **Core Business Logic**: `src/services/`, `src/domain/`
|
|
@@ -2897,22 +2348,25 @@ This document captures the CURRENT STATE of the [Project Name] codebase, includi
|
|
|
2897
2348
|
- **Key Algorithms**: [List specific files with complex logic]
|
|
2898
2349
|
|
|
2899
2350
|
### If PRD Provided - Enhancement Impact Areas
|
|
2351
|
+
|
|
2900
2352
|
[Highlight which files/modules will be affected by the planned enhancement]
|
|
2901
2353
|
|
|
2902
2354
|
## High Level Architecture
|
|
2903
2355
|
|
|
2904
2356
|
### Technical Summary
|
|
2905
|
-
[Real assessment of architecture - mention if it's well-structured or has issues]
|
|
2906
2357
|
|
|
2907
2358
|
### Actual Tech Stack (from package.json/requirements.txt)
|
|
2359
|
+
|
|
2908
2360
|
| Category | Technology | Version | Notes |
|
|
2909
2361
|
|----------|------------|---------|--------|
|
|
2910
2362
|
| Runtime | Node.js | 16.x | [Any constraints] |
|
|
2911
2363
|
| Framework | Express | 4.18.2 | [Custom middleware?] |
|
|
2912
2364
|
| Database | PostgreSQL | 13 | [Connection pooling setup] |
|
|
2913
|
-
|
|
2365
|
+
|
|
2366
|
+
etc...
|
|
2914
2367
|
|
|
2915
2368
|
### Repository Structure Reality Check
|
|
2369
|
+
|
|
2916
2370
|
- Type: [Monorepo/Polyrepo/Hybrid]
|
|
2917
2371
|
- Package Manager: [npm/yarn/pnpm]
|
|
2918
2372
|
- Notable: [Any unusual structure decisions]
|
|
@@ -2920,7 +2374,8 @@ This document captures the CURRENT STATE of the [Project Name] codebase, includi
|
|
|
2920
2374
|
## Source Tree and Module Organization
|
|
2921
2375
|
|
|
2922
2376
|
### Project Structure (Actual)
|
|
2923
|
-
|
|
2377
|
+
|
|
2378
|
+
```text
|
|
2924
2379
|
project-root/
|
|
2925
2380
|
├── src/
|
|
2926
2381
|
│ ├── controllers/ # HTTP request handlers
|
|
@@ -2934,6 +2389,7 @@ project-root/
|
|
|
2934
2389
|
```
|
|
2935
2390
|
|
|
2936
2391
|
### Key Modules and Their Purpose
|
|
2392
|
+
|
|
2937
2393
|
- **User Management**: `src/services/userService.js` - Handles all user operations
|
|
2938
2394
|
- **Authentication**: `src/middleware/auth.js` - JWT-based, custom implementation
|
|
2939
2395
|
- **Payment Processing**: `src/legacy/payment.js` - CRITICAL: Do not refactor, tightly coupled
|
|
@@ -2942,12 +2398,14 @@ project-root/
|
|
|
2942
2398
|
## Data Models and APIs
|
|
2943
2399
|
|
|
2944
2400
|
### Data Models
|
|
2401
|
+
|
|
2945
2402
|
Instead of duplicating, reference actual model files:
|
|
2946
2403
|
- **User Model**: See `src/models/User.js`
|
|
2947
2404
|
- **Order Model**: See `src/models/Order.js`
|
|
2948
2405
|
- **Related Types**: TypeScript definitions in `src/types/`
|
|
2949
2406
|
|
|
2950
2407
|
### API Specifications
|
|
2408
|
+
|
|
2951
2409
|
- **OpenAPI Spec**: `docs/api/openapi.yaml` (if exists)
|
|
2952
2410
|
- **Postman Collection**: `docs/api/postman-collection.json`
|
|
2953
2411
|
- **Manual Endpoints**: [List any undocumented endpoints discovered]
|
|
@@ -2955,12 +2413,14 @@ Instead of duplicating, reference actual model files:
|
|
|
2955
2413
|
## Technical Debt and Known Issues
|
|
2956
2414
|
|
|
2957
2415
|
### Critical Technical Debt
|
|
2416
|
+
|
|
2958
2417
|
1. **Payment Service**: Legacy code in `src/legacy/payment.js` - tightly coupled, no tests
|
|
2959
2418
|
2. **User Service**: Different pattern than other services, uses callbacks instead of promises
|
|
2960
2419
|
3. **Database Migrations**: Manually tracked, no proper migration tool
|
|
2961
2420
|
4. **[Other significant debt]**
|
|
2962
2421
|
|
|
2963
2422
|
### Workarounds and Gotchas
|
|
2423
|
+
|
|
2964
2424
|
- **Environment Variables**: Must set `NODE_ENV=production` even for staging (historical reason)
|
|
2965
2425
|
- **Database Connections**: Connection pool hardcoded to 10, changing breaks payment service
|
|
2966
2426
|
- **[Other workarounds developers need to know]**
|
|
@@ -2968,13 +2428,16 @@ Instead of duplicating, reference actual model files:
|
|
|
2968
2428
|
## Integration Points and External Dependencies
|
|
2969
2429
|
|
|
2970
2430
|
### External Services
|
|
2431
|
+
|
|
2971
2432
|
| Service | Purpose | Integration Type | Key Files |
|
|
2972
2433
|
|---------|---------|------------------|-----------|
|
|
2973
2434
|
| Stripe | Payments | REST API | `src/integrations/stripe/` |
|
|
2974
2435
|
| SendGrid | Emails | SDK | `src/services/emailService.js` |
|
|
2975
|
-
|
|
2436
|
+
|
|
2437
|
+
etc...
|
|
2976
2438
|
|
|
2977
2439
|
### Internal Integration Points
|
|
2440
|
+
|
|
2978
2441
|
- **Frontend Communication**: REST API on port 3000, expects specific headers
|
|
2979
2442
|
- **Background Jobs**: Redis queue, see `src/workers/`
|
|
2980
2443
|
- **[Other integrations]**
|
|
@@ -2982,11 +2445,13 @@ Instead of duplicating, reference actual model files:
|
|
|
2982
2445
|
## Development and Deployment
|
|
2983
2446
|
|
|
2984
2447
|
### Local Development Setup
|
|
2448
|
+
|
|
2985
2449
|
1. Actual steps that work (not ideal steps)
|
|
2986
2450
|
2. Known issues with setup
|
|
2987
2451
|
3. Required environment variables (see `.env.example`)
|
|
2988
2452
|
|
|
2989
2453
|
### Build and Deployment Process
|
|
2454
|
+
|
|
2990
2455
|
- **Build Command**: `npm run build` (webpack config in `webpack.config.js`)
|
|
2991
2456
|
- **Deployment**: Manual deployment via `scripts/deploy.sh`
|
|
2992
2457
|
- **Environments**: Dev, Staging, Prod (see `config/environments/`)
|
|
@@ -2994,12 +2459,14 @@ Instead of duplicating, reference actual model files:
|
|
|
2994
2459
|
## Testing Reality
|
|
2995
2460
|
|
|
2996
2461
|
### Current Test Coverage
|
|
2462
|
+
|
|
2997
2463
|
- Unit Tests: 60% coverage (Jest)
|
|
2998
2464
|
- Integration Tests: Minimal, in `tests/integration/`
|
|
2999
2465
|
- E2E Tests: None
|
|
3000
2466
|
- Manual Testing: Primary QA method
|
|
3001
2467
|
|
|
3002
2468
|
### Running Tests
|
|
2469
|
+
|
|
3003
2470
|
```bash
|
|
3004
2471
|
npm test # Runs unit tests
|
|
3005
2472
|
npm run test:integration # Runs integration tests (requires local DB)
|
|
@@ -3008,6 +2475,7 @@ npm run test:integration # Runs integration tests (requires local DB)
|
|
|
3008
2475
|
## If Enhancement PRD Provided - Impact Analysis
|
|
3009
2476
|
|
|
3010
2477
|
### Files That Will Need Modification
|
|
2478
|
+
|
|
3011
2479
|
Based on the enhancement requirements, these files will be affected:
|
|
3012
2480
|
- `src/services/userService.js` - Add new user fields
|
|
3013
2481
|
- `src/models/User.js` - Update schema
|
|
@@ -3015,11 +2483,13 @@ Based on the enhancement requirements, these files will be affected:
|
|
|
3015
2483
|
- [etc...]
|
|
3016
2484
|
|
|
3017
2485
|
### New Files/Modules Needed
|
|
2486
|
+
|
|
3018
2487
|
- `src/services/newFeatureService.js` - New business logic
|
|
3019
2488
|
- `src/models/NewFeature.js` - New data model
|
|
3020
2489
|
- [etc...]
|
|
3021
2490
|
|
|
3022
2491
|
### Integration Considerations
|
|
2492
|
+
|
|
3023
2493
|
- Will need to integrate with existing auth middleware
|
|
3024
2494
|
- Must follow existing response format in `src/utils/responseFormatter.js`
|
|
3025
2495
|
- [Other integration points]
|
|
@@ -3027,6 +2497,7 @@ Based on the enhancement requirements, these files will be affected:
|
|
|
3027
2497
|
## Appendix - Useful Commands and Scripts
|
|
3028
2498
|
|
|
3029
2499
|
### Frequently Used Commands
|
|
2500
|
+
|
|
3030
2501
|
```bash
|
|
3031
2502
|
npm run dev # Start development server
|
|
3032
2503
|
npm run build # Production build
|
|
@@ -3035,14 +2506,13 @@ npm run seed # Seed test data
|
|
|
3035
2506
|
```
|
|
3036
2507
|
|
|
3037
2508
|
### Debugging and Troubleshooting
|
|
2509
|
+
|
|
3038
2510
|
- **Logs**: Check `logs/app.log` for application logs
|
|
3039
2511
|
- **Debug Mode**: Set `DEBUG=app:*` for verbose logging
|
|
3040
2512
|
- **Common Issues**: See `docs/troubleshooting.md`]]
|
|
3041
2513
|
|
|
3042
2514
|
### 4. Document Delivery
|
|
3043
2515
|
|
|
3044
|
-
[[LLM: After generating the complete architecture document:
|
|
3045
|
-
|
|
3046
2516
|
1. **In Web UI (Gemini, ChatGPT, Claude)**:
|
|
3047
2517
|
- Present the entire document in one response (or multiple if too long)
|
|
3048
2518
|
- Tell user to copy and save as `docs/brownfield-architecture.md` or `docs/project-architecture.md`
|
|
@@ -3054,6 +2524,7 @@ npm run seed # Seed test data
|
|
|
3054
2524
|
- Can be sharded later using PO agent if desired
|
|
3055
2525
|
|
|
3056
2526
|
The document should be comprehensive enough that future agents can understand:
|
|
2527
|
+
|
|
3057
2528
|
- The actual state of the system (not idealized)
|
|
3058
2529
|
- Where to find key files and logic
|
|
3059
2530
|
- What technical debt exists
|
|
@@ -3062,7 +2533,7 @@ The document should be comprehensive enough that future agents can understand:
|
|
|
3062
2533
|
|
|
3063
2534
|
### 5. Quality Assurance
|
|
3064
2535
|
|
|
3065
|
-
|
|
2536
|
+
CRITICAL: Before finalizing the document:
|
|
3066
2537
|
|
|
3067
2538
|
1. **Accuracy Check**: Verify all technical details match the actual codebase
|
|
3068
2539
|
2. **Completeness Review**: Ensure all major system components are documented
|
|
@@ -3070,7 +2541,7 @@ The document should be comprehensive enough that future agents can understand:
|
|
|
3070
2541
|
4. **Clarity Assessment**: Check that explanations are clear for AI agents
|
|
3071
2542
|
5. **Navigation**: Ensure document has clear section structure for easy reference
|
|
3072
2543
|
|
|
3073
|
-
Apply the advanced elicitation task after major sections to refine based on user feedback.
|
|
2544
|
+
Apply the advanced elicitation task after major sections to refine based on user feedback.
|
|
3074
2545
|
|
|
3075
2546
|
## Success Criteria
|
|
3076
2547
|
|
|
@@ -4069,9 +3540,9 @@ sections:
|
|
|
4069
3540
|
|
|
4070
3541
|
## Purpose
|
|
4071
3542
|
|
|
4072
|
-
- Guide a structured response to a change trigger using the
|
|
3543
|
+
- Guide a structured response to a change trigger using the `.bmad-core/checklists/change-checklist`.
|
|
4073
3544
|
- Analyze the impacts of the change on epics, project artifacts, and the MVP, guided by the checklist's structure.
|
|
4074
|
-
- Explore potential solutions (e.g., adjust scope, rollback elements,
|
|
3545
|
+
- Explore potential solutions (e.g., adjust scope, rollback elements, re-scope features) as prompted by the checklist.
|
|
4075
3546
|
- Draft specific, actionable proposed updates to any affected project artifacts (e.g., epics, user stories, PRD sections, architecture document sections) based on the analysis.
|
|
4076
3547
|
- Produce a consolidated "Sprint Change Proposal" document that contains the impact analysis and the clearly drafted proposed edits for user review and approval.
|
|
4077
3548
|
- Ensure a clear handoff path if the nature of the changes necessitates fundamental replanning by other core agents (like PM or Architect).
|
|
@@ -4083,19 +3554,16 @@ sections:
|
|
|
4083
3554
|
- **Acknowledge Task & Inputs:**
|
|
4084
3555
|
- Confirm with the user that the "Correct Course Task" (Change Navigation & Integration) is being initiated.
|
|
4085
3556
|
- Verify the change trigger and ensure you have the user's initial explanation of the issue and its perceived impact.
|
|
4086
|
-
- Confirm access to all relevant project artifacts (e.g., PRD, Epics/Stories, Architecture Documents, UI/UX Specifications) and, critically, the
|
|
3557
|
+
- Confirm access to all relevant project artifacts (e.g., PRD, Epics/Stories, Architecture Documents, UI/UX Specifications) and, critically, the `.bmad-core/checklists/change-checklist`.
|
|
4087
3558
|
- **Establish Interaction Mode:**
|
|
4088
3559
|
- Ask the user their preferred interaction mode for this task:
|
|
4089
|
-
- **"Incrementally (Default & Recommended):** Shall we work through the
|
|
3560
|
+
- **"Incrementally (Default & Recommended):** Shall we work through the change-checklist section by section, discussing findings and collaboratively drafting proposed changes for each relevant part before moving to the next? This allows for detailed, step-by-step refinement."
|
|
4090
3561
|
- **"YOLO Mode (Batch Processing):** Or, would you prefer I conduct a more batched analysis based on the checklist and then present a consolidated set of findings and proposed changes for a broader review? This can be quicker for initial assessment but might require more extensive review of the combined proposals."
|
|
4091
|
-
-
|
|
4092
|
-
- Once the user chooses, confirm the selected mode (e.g., "Okay, we will proceed in Incremental mode."). This chosen mode will govern how subsequent steps in this task are executed.
|
|
4093
|
-
- **Explain Process:** Briefly inform the user: "We will now use the `change-checklist` to analyze the change and draft proposed updates. I will guide you through the checklist items based on our chosen interaction mode."
|
|
4094
|
-
<rule>When asking multiple questions or presenting multiple points for user input at once, number them clearly (e.g., 1., 2a., 2b.) to make it easier for the user to provide specific responses.</rule>
|
|
3562
|
+
- Once the user chooses, confirm the selected mode and then inform the user: "We will now use the change-checklist to analyze the change and draft proposed updates. I will guide you through the checklist items based on our chosen interaction mode."
|
|
4095
3563
|
|
|
4096
3564
|
### 2. Execute Checklist Analysis (Iteratively or Batched, per Interaction Mode)
|
|
4097
3565
|
|
|
4098
|
-
- Systematically work through Sections 1-4 of the
|
|
3566
|
+
- Systematically work through Sections 1-4 of the change-checklist (typically covering Change Context, Epic/Story Impact Analysis, Artifact Conflict Resolution, and Path Evaluation/Recommendation).
|
|
4099
3567
|
- For each checklist item or logical group of items (depending on interaction mode):
|
|
4100
3568
|
- Present the relevant prompt(s) or considerations from the checklist to the user.
|
|
4101
3569
|
- Request necessary information and actively analyze the relevant project artifacts (PRD, epics, architecture documents, story history, etc.) to assess the impact.
|
|
@@ -4118,7 +3586,7 @@ sections:
|
|
|
4118
3586
|
|
|
4119
3587
|
### 4. Generate "Sprint Change Proposal" with Edits
|
|
4120
3588
|
|
|
4121
|
-
- Synthesize the complete
|
|
3589
|
+
- Synthesize the complete change-checklist analysis (covering findings from Sections 1-4) and all the agreed-upon proposed edits (from Instruction 3) into a single document titled "Sprint Change Proposal." This proposal should align with the structure suggested by Section 5 of the change-checklist.
|
|
4122
3590
|
- The proposal must clearly present:
|
|
4123
3591
|
- **Analysis Summary:** A concise overview of the original issue, its analyzed impact (on epics, artifacts, MVP scope), and the rationale for the chosen path forward.
|
|
4124
3592
|
- **Specific Proposed Edits:** For each affected artifact, clearly show or describe the exact changes (e.g., "Change Story X.Y from: [old text] To: [new text]", "Add new Acceptance Criterion to Story A.B: [new AC]", "Update Section 3.2 of Architecture Document as follows: [new/modified text or diagram description]").
|
|
@@ -4135,9 +3603,9 @@ sections:
|
|
|
4135
3603
|
## Output Deliverables
|
|
4136
3604
|
|
|
4137
3605
|
- **Primary:** A "Sprint Change Proposal" document (in markdown format). This document will contain:
|
|
4138
|
-
- A summary of the
|
|
3606
|
+
- A summary of the change-checklist analysis (issue, impact, rationale for the chosen path).
|
|
4139
3607
|
- Specific, clearly drafted proposed edits for all affected project artifacts.
|
|
4140
|
-
- **Implicit:** An annotated
|
|
3608
|
+
- **Implicit:** An annotated change-checklist (or the record of its completion) reflecting the discussions, findings, and decisions made during the process.
|
|
4141
3609
|
==================== END: .bmad-core/tasks/correct-course.md ====================
|
|
4142
3610
|
|
|
4143
3611
|
==================== START: .bmad-core/tasks/brownfield-create-epic.md ====================
|
|
@@ -4560,20 +4028,20 @@ The LLM will:
|
|
|
4560
4028
|
|
|
4561
4029
|
## Primary Method: Automatic with markdown-tree
|
|
4562
4030
|
|
|
4563
|
-
[[LLM: First, check if markdownExploder is set to true in bmad-core/core-config.yaml. If it is, attempt to run the command: `md-tree explode {input file} {output path}`.
|
|
4031
|
+
[[LLM: First, check if markdownExploder is set to true in .bmad-core/core-config.yaml. If it is, attempt to run the command: `md-tree explode {input file} {output path}`.
|
|
4564
4032
|
|
|
4565
4033
|
If the command succeeds, inform the user that the document has been sharded successfully and STOP - do not proceed further.
|
|
4566
4034
|
|
|
4567
4035
|
If the command fails (especially with an error indicating the command is not found or not available), inform the user: "The markdownExploder setting is enabled but the md-tree command is not available. Please either:
|
|
4568
4036
|
|
|
4569
4037
|
1. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
|
|
4570
|
-
2. Or set markdownExploder to false in bmad-core/core-config.yaml
|
|
4038
|
+
2. Or set markdownExploder to false in .bmad-core/core-config.yaml
|
|
4571
4039
|
|
|
4572
4040
|
**IMPORTANT: STOP HERE - do not proceed with manual sharding until one of the above actions is taken.**"
|
|
4573
4041
|
|
|
4574
4042
|
If markdownExploder is set to false, inform the user: "The markdownExploder setting is currently false. For better performance and reliability, you should:
|
|
4575
4043
|
|
|
4576
|
-
1. Set markdownExploder to true in bmad-core/core-config.yaml
|
|
4044
|
+
1. Set markdownExploder to true in .bmad-core/core-config.yaml
|
|
4577
4045
|
2. Install @kayvan/markdown-tree-parser globally with: `npm install -g @kayvan/markdown-tree-parser`
|
|
4578
4046
|
|
|
4579
4047
|
I will now proceed with the manual sharding process."
|
|
@@ -4613,8 +4081,6 @@ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manu
|
|
|
4613
4081
|
|
|
4614
4082
|
## Manual Method (if @kayvan/markdown-tree-parser is not available or user indicated manual method)
|
|
4615
4083
|
|
|
4616
|
-
[[LLM: Only proceed with the manual instructions below if the user cannot or does not want to use @kayvan/markdown-tree-parser.]]
|
|
4617
|
-
|
|
4618
4084
|
### Task Instructions
|
|
4619
4085
|
|
|
4620
4086
|
1. Identify Document and Target Location
|
|
@@ -4625,7 +4091,7 @@ If the user has @kayvan/markdown-tree-parser installed, use it and skip the manu
|
|
|
4625
4091
|
|
|
4626
4092
|
2. Parse and Extract Sections
|
|
4627
4093
|
|
|
4628
|
-
|
|
4094
|
+
CRITICAL AEGNT SHARDING RULES:
|
|
4629
4095
|
|
|
4630
4096
|
1. Read the entire document content
|
|
4631
4097
|
2. Identify all level 2 sections (## headings)
|
|
@@ -4686,8 +4152,6 @@ Create an `index.md` file in the sharded folder that:
|
|
|
4686
4152
|
|
|
4687
4153
|
### 5. Preserve Special Content
|
|
4688
4154
|
|
|
4689
|
-
[[LLM: Pay special attention to preserving:
|
|
4690
|
-
|
|
4691
4155
|
1. **Code blocks**: Must capture complete blocks including:
|
|
4692
4156
|
|
|
4693
4157
|
```language
|
|
@@ -4709,7 +4173,7 @@ Create an `index.md` file in the sharded folder that:
|
|
|
4709
4173
|
|
|
4710
4174
|
6. **Links and references**: Keep all markdown links intact
|
|
4711
4175
|
|
|
4712
|
-
7. **Template markup**: If documents contain {{placeholders}}
|
|
4176
|
+
7. **Template markup**: If documents contain {{placeholders}} ,preserve exactly
|
|
4713
4177
|
|
|
4714
4178
|
### 6. Validation
|
|
4715
4179
|
|
|
@@ -5809,7 +5273,7 @@ To generate a masterful, comprehensive, and optimized prompt that can be used wi
|
|
|
5809
5273
|
|
|
5810
5274
|
## Inputs
|
|
5811
5275
|
|
|
5812
|
-
- Completed UI/UX Specification (`front-end-spec`)
|
|
5276
|
+
- Completed UI/UX Specification (`front-end-spec.md`)
|
|
5813
5277
|
- Completed Frontend Architecture Document (`front-end-architecture`) or a full stack combined architecture such as `architecture.md`
|
|
5814
5278
|
- Main System Architecture Document (`architecture` - for API contracts and tech stack to give further context)
|
|
5815
5279
|
|