@codemcp/workflows-core 3.1.22 → 3.2.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/package.json +8 -3
- package/resources/templates/architecture/arc42/arc42-template-EN.md +1077 -0
- package/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio-2023.png +0 -0
- package/resources/templates/architecture/arc42/images/01_2_iso-25010-topics-EN.drawio.png +0 -0
- package/resources/templates/architecture/arc42/images/05_building_blocks-EN.png +0 -0
- package/resources/templates/architecture/arc42/images/08-concepts-EN.drawio.png +0 -0
- package/resources/templates/architecture/arc42/images/arc42-logo.png +0 -0
- package/resources/templates/architecture/c4.md +224 -0
- package/resources/templates/architecture/freestyle.md +53 -0
- package/resources/templates/architecture/none.md +17 -0
- package/resources/templates/design/comprehensive.md +207 -0
- package/resources/templates/design/freestyle.md +37 -0
- package/resources/templates/design/none.md +17 -0
- package/resources/templates/requirements/ears.md +90 -0
- package/resources/templates/requirements/freestyle.md +42 -0
- package/resources/templates/requirements/none.md +17 -0
- package/resources/workflows/big-bang-conversion.yaml +539 -0
- package/resources/workflows/boundary-testing.yaml +334 -0
- package/resources/workflows/bugfix.yaml +185 -0
- package/resources/workflows/business-analysis.yaml +671 -0
- package/resources/workflows/c4-analysis.yaml +485 -0
- package/resources/workflows/epcc.yaml +161 -0
- package/resources/workflows/greenfield.yaml +189 -0
- package/resources/workflows/minor.yaml +127 -0
- package/resources/workflows/posts.yaml +207 -0
- package/resources/workflows/slides.yaml +256 -0
- package/resources/workflows/tdd.yaml +157 -0
- package/resources/workflows/waterfall.yaml +195 -0
- package/.turbo/turbo-build.log +0 -4
- package/src/config-manager.ts +0 -96
- package/src/conversation-manager.ts +0 -489
- package/src/database.ts +0 -427
- package/src/file-detection-manager.ts +0 -302
- package/src/git-manager.ts +0 -64
- package/src/index.ts +0 -28
- package/src/instruction-generator.ts +0 -210
- package/src/interaction-logger.ts +0 -109
- package/src/logger.ts +0 -353
- package/src/path-validation-utils.ts +0 -261
- package/src/plan-manager.ts +0 -323
- package/src/project-docs-manager.ts +0 -523
- package/src/state-machine-loader.ts +0 -365
- package/src/state-machine-types.ts +0 -72
- package/src/state-machine.ts +0 -370
- package/src/system-prompt-generator.ts +0 -122
- package/src/template-manager.ts +0 -328
- package/src/transition-engine.ts +0 -386
- package/src/types.ts +0 -60
- package/src/workflow-manager.ts +0 -606
- package/test/unit/conversation-manager.test.ts +0 -179
- package/test/unit/custom-workflow-loading.test.ts +0 -174
- package/test/unit/directory-linking-and-extensions.test.ts +0 -338
- package/test/unit/file-linking-integration.test.ts +0 -256
- package/test/unit/git-commit-integration.test.ts +0 -91
- package/test/unit/git-manager.test.ts +0 -86
- package/test/unit/install-workflow.test.ts +0 -138
- package/test/unit/instruction-generator.test.ts +0 -247
- package/test/unit/list-workflows-filtering.test.ts +0 -68
- package/test/unit/none-template-functionality.test.ts +0 -224
- package/test/unit/project-docs-manager.test.ts +0 -337
- package/test/unit/state-machine-loader.test.ts +0 -234
- package/test/unit/template-manager.test.ts +0 -217
- package/test/unit/validate-workflow-name.test.ts +0 -150
- package/test/unit/workflow-domain-filtering.test.ts +0 -75
- package/test/unit/workflow-enum-generation.test.ts +0 -92
- package/test/unit/workflow-manager-enhanced-path-resolution.test.ts +0 -369
- package/test/unit/workflow-manager-path-resolution.test.ts +0 -150
- package/test/unit/workflow-migration.test.ts +0 -155
- package/test/unit/workflow-override-by-name.test.ts +0 -116
- package/test/unit/workflow-prioritization.test.ts +0 -38
- package/test/unit/workflow-validation.test.ts +0 -303
- package/test/utils/e2e-test-setup.ts +0 -453
- package/test/utils/run-server-in-dir.sh +0 -27
- package/test/utils/temp-files.ts +0 -308
- package/test/utils/test-access.ts +0 -79
- package/test/utils/test-helpers.ts +0 -286
- package/test/utils/test-setup.ts +0 -78
- package/tsconfig.build.json +0 -21
- package/tsconfig.json +0 -8
- package/vitest.config.ts +0 -18
@@ -0,0 +1,256 @@
|
|
1
|
+
name: slides
|
2
|
+
description: 'A comprehensive workflow for creating presentations - tool-agnostic approach that works with Slidev, PowerPoint, Google Slides, or any presentation platform'
|
3
|
+
initial_state: ideate
|
4
|
+
|
5
|
+
# Enhanced metadata for better discoverability
|
6
|
+
metadata:
|
7
|
+
domain: 'office'
|
8
|
+
complexity: 'medium'
|
9
|
+
bestFor:
|
10
|
+
- 'Presentation creation'
|
11
|
+
- 'Slide deck development'
|
12
|
+
- 'Conference talks'
|
13
|
+
- 'Training materials'
|
14
|
+
useCases:
|
15
|
+
- 'Creating a technical presentation'
|
16
|
+
- 'Building training slides'
|
17
|
+
- 'Preparing a conference talk'
|
18
|
+
examples:
|
19
|
+
- 'Create a product demo presentation'
|
20
|
+
- 'Build onboarding slides'
|
21
|
+
- 'Develop a technical workshop'
|
22
|
+
|
23
|
+
states:
|
24
|
+
ideate:
|
25
|
+
description: 'Brainstorm presentation concept and define strategic foundation'
|
26
|
+
default_instructions: |
|
27
|
+
You are in the ideation phase for presentation development. This is where you define the foundation of your presentation.
|
28
|
+
|
29
|
+
Focus on understanding the core purpose and audience:
|
30
|
+
- Brainstorm presentation topic and key messages
|
31
|
+
- Define target audience and their knowledge level
|
32
|
+
- Set presentation goals and success criteria
|
33
|
+
- Research topic and gather reference materials
|
34
|
+
- Define scope, time constraints, and context
|
35
|
+
|
36
|
+
Work with the user to clarify these fundamental aspects before moving to structure.
|
37
|
+
Update the plan file with ideation progress and key decisions.
|
38
|
+
|
39
|
+
transitions:
|
40
|
+
- trigger: ideation_complete
|
41
|
+
to: structure
|
42
|
+
additional_instructions: |
|
43
|
+
Ideation complete! ✅ You have a clear presentation concept, defined audience, and established goals.
|
44
|
+
|
45
|
+
Update the plan file with structural planning tasks and mark completed ideation work.
|
46
|
+
transition_reason: 'Presentation concept and goals clearly defined, ready for content structuring'
|
47
|
+
|
48
|
+
- trigger: abandon_presentation
|
49
|
+
to: ideate
|
50
|
+
instructions: |
|
51
|
+
Presentation development abandoned. Clean up any ideation work and prepare for new presentation topics.
|
52
|
+
The plan file will remain for future reference if needed.
|
53
|
+
additional_instructions: 'Presentation development abandoned. Prepare for new presentation topics.'
|
54
|
+
transition_reason: 'User decided to abandon current presentation development'
|
55
|
+
|
56
|
+
structure:
|
57
|
+
description: 'Organize content flow and logical progression'
|
58
|
+
default_instructions: |
|
59
|
+
Working on presentation structure phase. Focus on organizing your content logically and effectively.
|
60
|
+
|
61
|
+
Key activities for this phase:
|
62
|
+
- Create detailed presentation outline with main sections
|
63
|
+
- Define slide sequence and narrative flow
|
64
|
+
- Plan smooth transitions between topics
|
65
|
+
- Identify key examples, case studies, or demonstrations needed
|
66
|
+
- Estimate timing for each section and overall presentation
|
67
|
+
- Consider audience engagement points and interaction opportunities
|
68
|
+
|
69
|
+
Work with the user to create a solid structural foundation before moving to content drafting.
|
70
|
+
Update the plan file with structural decisions and progress.
|
71
|
+
|
72
|
+
transitions:
|
73
|
+
- trigger: structure_complete
|
74
|
+
to: draft
|
75
|
+
additional_instructions: |
|
76
|
+
Structure complete! ✅ You have a well-organized outline and clear content flow.
|
77
|
+
|
78
|
+
Update the plan file with drafting tasks and mark completed structural work.
|
79
|
+
transition_reason: 'Content structure and flow established, ready for content creation'
|
80
|
+
|
81
|
+
- trigger: need_more_ideation
|
82
|
+
to: ideate
|
83
|
+
additional_instructions: 'Structural work revealed gaps in the initial concept or goals. Focus on clarifying these fundamental aspects.'
|
84
|
+
transition_reason: 'Structure work revealed need for more ideation or concept refinement'
|
85
|
+
|
86
|
+
- trigger: abandon_presentation
|
87
|
+
to: ideate
|
88
|
+
instructions: |
|
89
|
+
Presentation development abandoned during structuring. Clean up structural work and return to ideation.
|
90
|
+
The plan file and any completed work will remain for future reference.
|
91
|
+
additional_instructions: 'Presentation abandoned during structure phase. Clean up and prepare for new topics.'
|
92
|
+
transition_reason: 'User decided to abandon presentation during structure phase'
|
93
|
+
|
94
|
+
draft:
|
95
|
+
description: 'Create content, speaker notes, and visual planning'
|
96
|
+
default_instructions: |
|
97
|
+
Working on content drafting phase. This is where you create the actual presentation content and materials.
|
98
|
+
|
99
|
+
Key activities for this phase:
|
100
|
+
- Write clear, engaging content for each slide/section
|
101
|
+
- Create comprehensive speaker notes as a main deliverable
|
102
|
+
- Make strategic decisions about visual vs. spoken content split
|
103
|
+
- Identify concepts that can be effectively visualized
|
104
|
+
- Define what each visualization should communicate
|
105
|
+
- Create placeholders and specifications for visual content
|
106
|
+
- Ensure content aligns with timing and audience needs
|
107
|
+
|
108
|
+
Focus on creating high-quality content that serves both the slides and the speaker.
|
109
|
+
Update the plan file with drafting progress and content decisions.
|
110
|
+
|
111
|
+
transitions:
|
112
|
+
- trigger: draft_complete
|
113
|
+
to: style
|
114
|
+
additional_instructions: |
|
115
|
+
Draft complete! ✅ You have solid content, speaker notes, and visual planning.
|
116
|
+
|
117
|
+
Update the plan file with styling tasks and mark completed drafting work.
|
118
|
+
transition_reason: 'Content and speaker notes complete, ready for visual design and styling'
|
119
|
+
|
120
|
+
- trigger: need_more_structure
|
121
|
+
to: structure
|
122
|
+
additional_instructions: 'Drafting revealed issues with content organization or flow. Focus on refining the structural foundation.'
|
123
|
+
transition_reason: 'Content creation revealed need for better structure or organization'
|
124
|
+
|
125
|
+
- trigger: abandon_presentation
|
126
|
+
to: ideate
|
127
|
+
instructions: |
|
128
|
+
Presentation development abandoned during drafting. Clean up content work and return to ideation.
|
129
|
+
The plan file and any completed work will remain for future reference.
|
130
|
+
additional_instructions: 'Presentation abandoned during draft phase. Clean up and prepare for new topics.'
|
131
|
+
transition_reason: 'User decided to abandon presentation during draft phase'
|
132
|
+
|
133
|
+
style:
|
134
|
+
description: 'Apply design, create visuals, and enhance presentation aesthetics'
|
135
|
+
default_instructions: |
|
136
|
+
Working on styling and visual design phase. This is where you bring visual appeal and consistency to your presentation.
|
137
|
+
|
138
|
+
Key activities for this phase:
|
139
|
+
- Evaluate presentation requirements and choose appropriate tool/platform
|
140
|
+
- Select themes, templates, and establish visual design approach
|
141
|
+
- Source existing visuals, images, and graphic elements
|
142
|
+
- Create detailed AI image generation prompts for missing visuals
|
143
|
+
- Generate or create required visual content using AI tools or other methods
|
144
|
+
- Apply consistent visual design, colors, and branding
|
145
|
+
- Ensure visual elements effectively support and enhance the content
|
146
|
+
- Test visual consistency across all slides/sections
|
147
|
+
|
148
|
+
Focus on creating a visually appealing and professional presentation.
|
149
|
+
Update the plan file with styling progress and design decisions.
|
150
|
+
|
151
|
+
transitions:
|
152
|
+
- trigger: style_complete
|
153
|
+
to: review
|
154
|
+
additional_instructions: |
|
155
|
+
Styling complete! ✅ You have a visually appealing presentation with consistent design.
|
156
|
+
|
157
|
+
Update the plan file with review tasks and mark completed styling work.
|
158
|
+
transition_reason: 'Visual design and styling complete, ready for content and delivery review'
|
159
|
+
|
160
|
+
- trigger: need_more_content
|
161
|
+
to: draft
|
162
|
+
additional_instructions: 'Styling work revealed gaps in content or speaker notes. Focus on completing the content foundation.'
|
163
|
+
transition_reason: 'Visual design revealed need for additional content or speaker note refinement'
|
164
|
+
|
165
|
+
- trigger: abandon_presentation
|
166
|
+
to: ideate
|
167
|
+
instructions: |
|
168
|
+
Presentation development abandoned during styling. Clean up design work and return to ideation.
|
169
|
+
The plan file and any completed work will remain for future reference.
|
170
|
+
additional_instructions: 'Presentation abandoned during style phase. Clean up and prepare for new topics.'
|
171
|
+
transition_reason: 'User decided to abandon presentation during style phase'
|
172
|
+
|
173
|
+
review:
|
174
|
+
description: 'Validate content quality and presentation effectiveness'
|
175
|
+
default_instructions: |
|
176
|
+
Working on review and validation phase. This is where you ensure your presentation is ready for delivery.
|
177
|
+
|
178
|
+
Key activities for this phase:
|
179
|
+
- Review content flow, narrative coherence, and logical progression
|
180
|
+
- Test presentation timing and pacing for your allocated time
|
181
|
+
- Verify visual quality, consistency, and professional appearance
|
182
|
+
- Practice delivery to identify potential issues or improvements
|
183
|
+
- Gather feedback from test audience, colleagues, or stakeholders
|
184
|
+
- Check technical setup, compatibility, and backup plans
|
185
|
+
- Ensure all interactive elements and visuals work correctly
|
186
|
+
- Refine speaker notes and delivery preparation
|
187
|
+
|
188
|
+
Focus on validating that your presentation achieves its goals effectively.
|
189
|
+
Update the plan file with review progress and any refinements made.
|
190
|
+
|
191
|
+
transitions:
|
192
|
+
- trigger: review_complete
|
193
|
+
to: deliver
|
194
|
+
additional_instructions: |
|
195
|
+
Review complete! ✅ Your presentation has been validated and refined for delivery.
|
196
|
+
|
197
|
+
Update the plan file with delivery preparation tasks and mark completed review work.
|
198
|
+
transition_reason: 'Presentation reviewed and validated, ready for final delivery preparation'
|
199
|
+
|
200
|
+
- trigger: need_style_changes
|
201
|
+
to: style
|
202
|
+
additional_instructions: 'Review revealed visual or design issues that need attention. Focus on addressing these styling concerns.'
|
203
|
+
transition_reason: 'Review process identified visual or design issues requiring style phase work'
|
204
|
+
|
205
|
+
- trigger: need_content_changes
|
206
|
+
to: draft
|
207
|
+
additional_instructions: 'Review revealed content gaps or issues that need addressing. Focus on refining the content and speaker notes.'
|
208
|
+
transition_reason: 'Review process identified content issues requiring draft phase work'
|
209
|
+
|
210
|
+
- trigger: abandon_presentation
|
211
|
+
to: ideate
|
212
|
+
instructions: |
|
213
|
+
Presentation development abandoned during review. Clean up review work and return to ideation.
|
214
|
+
The plan file and any completed work will remain for future reference.
|
215
|
+
additional_instructions: 'Presentation abandoned during review phase. Clean up and prepare for new topics.'
|
216
|
+
transition_reason: 'User decided to abandon presentation during review phase'
|
217
|
+
|
218
|
+
deliver:
|
219
|
+
description: 'Prepare final presentation for delivery'
|
220
|
+
default_instructions: |
|
221
|
+
Working on delivery preparation phase. This is the final phase to ensure your presentation is ready for successful delivery.
|
222
|
+
|
223
|
+
Key activities for this phase:
|
224
|
+
- Export presentation to all required formats (native, PDF, backup formats)
|
225
|
+
- Finalize speaker setup, notes, and delivery materials
|
226
|
+
- Configure and test presentation environment and technical setup
|
227
|
+
- Create comprehensive contingency plans for potential technical issues
|
228
|
+
- Conduct final rehearsal in actual delivery environment if possible
|
229
|
+
- Prepare handouts, follow-up materials, or additional resources
|
230
|
+
- Ensure all backup plans and alternatives are ready
|
231
|
+
- Final check of timing, flow, and delivery readiness
|
232
|
+
|
233
|
+
Focus on ensuring flawless delivery execution and professional presentation.
|
234
|
+
Update the plan file with delivery preparation progress.
|
235
|
+
|
236
|
+
transitions:
|
237
|
+
- trigger: delivery_complete
|
238
|
+
to: ideate
|
239
|
+
additional_instructions: |
|
240
|
+
Presentation delivery complete! ✅ Your presentation has been successfully delivered.
|
241
|
+
|
242
|
+
Mark all delivery tasks as complete in the plan file and prepare for new work.
|
243
|
+
transition_reason: 'Presentation delivery completed successfully, ready for new projects'
|
244
|
+
|
245
|
+
- trigger: need_final_review
|
246
|
+
to: review
|
247
|
+
additional_instructions: 'Final preparation revealed issues requiring additional review. Focus on addressing these concerns before delivery.'
|
248
|
+
transition_reason: 'Delivery preparation identified issues requiring additional review'
|
249
|
+
|
250
|
+
- trigger: abandon_presentation
|
251
|
+
to: ideate
|
252
|
+
instructions: |
|
253
|
+
Presentation development abandoned before delivery. Clean up delivery preparation and return to ideation.
|
254
|
+
The plan file and completed work will remain for future reference.
|
255
|
+
additional_instructions: 'Presentation abandoned before delivery. Clean up and prepare for new topics.'
|
256
|
+
transition_reason: 'User decided to abandon presentation before delivery'
|
@@ -0,0 +1,157 @@
|
|
1
|
+
# yaml-language-server: $schema=../state-machine-schema.json
|
2
|
+
---
|
3
|
+
name: 'tdd'
|
4
|
+
description: 'Test-Driven Development workflow: Explore → Red → Green → Refactor cycle for quality-focused development'
|
5
|
+
initial_state: 'explore'
|
6
|
+
|
7
|
+
# Enhanced metadata for better discoverability
|
8
|
+
metadata:
|
9
|
+
domain: 'code'
|
10
|
+
complexity: 'medium'
|
11
|
+
bestFor:
|
12
|
+
- 'TDD development'
|
13
|
+
- 'Test-first coding'
|
14
|
+
- 'Quality-focused development'
|
15
|
+
- 'Refactoring existing code'
|
16
|
+
useCases:
|
17
|
+
- 'Adding new features with comprehensive tests'
|
18
|
+
- 'Refactoring legacy code safely'
|
19
|
+
- 'Building robust, well-tested components'
|
20
|
+
examples:
|
21
|
+
- 'Add new API endpoint with full test coverage'
|
22
|
+
- 'Refactor existing function with safety net of tests'
|
23
|
+
- 'Build new feature following TDD principles'
|
24
|
+
|
25
|
+
# States with default instructions and transitions
|
26
|
+
states:
|
27
|
+
explore:
|
28
|
+
description: 'Research and exploration phase - understanding the problem space and codebase'
|
29
|
+
default_instructions: |
|
30
|
+
You are in the TDD exploration phase.
|
31
|
+
Your main objective now is to gather context about what needs to be developed. Focus on the WHY and WHAT, not the HOW.
|
32
|
+
Research the codebase, understand existing patterns,
|
33
|
+
If you are not certain about conventions or rules, ask the user about them.
|
34
|
+
Read relevant files and documentation. If $REQUIREMENTS_DOC exists, understand and document requirements there, otherwise document them in the plan file.
|
35
|
+
Don't write code or tests yet - focus on understanding. Document your findings in the plan file.
|
36
|
+
transitions:
|
37
|
+
- trigger: 'exploration_complete'
|
38
|
+
to: 'red'
|
39
|
+
additional_instructions: 'Mark completed exploration tasks.'
|
40
|
+
transition_reason: 'Sufficient understanding gained, ready to start TDD cycle with failing test'
|
41
|
+
|
42
|
+
- trigger: 'abandon_feature'
|
43
|
+
to: 'explore'
|
44
|
+
instructions: >
|
45
|
+
Feature development abandoned. Return to exploration state for new tasks.
|
46
|
+
The plan file will remain for future reference if needed.
|
47
|
+
additional_instructions: 'Clean up any work in progress and prepare for new tasks.'
|
48
|
+
transition_reason: 'User decided to abandon current feature development'
|
49
|
+
|
50
|
+
red:
|
51
|
+
description: 'RED phase - Write a failing test that defines the expected behavior'
|
52
|
+
default_instructions: |
|
53
|
+
You are in the RED phase of TDD. Write a failing test that defines the expected behavior.
|
54
|
+
|
55
|
+
**CRITICAL QUALITY GATE**: Before writing the test, ask the user about:
|
56
|
+
1. What type of test is appropriate (unit, integration, acceptance, etc.)
|
57
|
+
2. Validate with the user that your test actually tests what needs to be developed
|
58
|
+
|
59
|
+
Write a test that:
|
60
|
+
- Clearly defines the expected behavior
|
61
|
+
- Will fail initially (since the functionality doesn't exist yet)
|
62
|
+
- Is specific and focused on one aspect of the functionality
|
63
|
+
- Uses appropriate assertions (not assert(true) or similar meaningless checks)
|
64
|
+
|
65
|
+
Run the test to confirm it fails for the right reason. Document the test in the plan file.
|
66
|
+
transitions:
|
67
|
+
- trigger: 'test_written_and_failing'
|
68
|
+
to: 'green'
|
69
|
+
additional_instructions: 'Mark completed test tasks.'
|
70
|
+
transition_reason: 'Failing test successfully written and validated, ready to implement'
|
71
|
+
|
72
|
+
- trigger: 'need_more_exploration'
|
73
|
+
to: 'explore'
|
74
|
+
transition_reason: 'Test writing revealed need for more exploration'
|
75
|
+
|
76
|
+
- trigger: 'abandon_feature'
|
77
|
+
to: 'explore'
|
78
|
+
additional_instructions: 'Clean up any test artifacts and prepare for new tasks.'
|
79
|
+
transition_reason: 'User decided to abandon feature during test phase'
|
80
|
+
|
81
|
+
green:
|
82
|
+
description: 'GREEN phase - Write only the necessary code to make the test pass'
|
83
|
+
default_instructions: |
|
84
|
+
You are in the GREEN phase of TDD. Write only the necessary code to make the failing test pass with a proper implementation.
|
85
|
+
|
86
|
+
**CRITICAL QUALITY GATE**: Verify your implementation has NO dirty hacks such as:
|
87
|
+
- assert(true) or similar meaningless assertions
|
88
|
+
- Hardcoded return values that don't represent real logic
|
89
|
+
- Shortcuts that bypass the actual functionality
|
90
|
+
- Copy-paste code without understanding
|
91
|
+
|
92
|
+
Focus on:
|
93
|
+
- Making the test pass with real, working code
|
94
|
+
- Writing only what's necessary (no over-engineering)
|
95
|
+
- Ensuring the solution actually solves the problem
|
96
|
+
- Implementing proper logic, not shortcuts
|
97
|
+
- Running the test to confirm it passes
|
98
|
+
|
99
|
+
Document your implementation approach in the plan file.
|
100
|
+
transitions:
|
101
|
+
- trigger: 'test_passing'
|
102
|
+
to: 'refactor'
|
103
|
+
additional_instructions: 'Mark completed implementation tasks.'
|
104
|
+
transition_reason: 'Test passes with proper implementation, ready for refactoring'
|
105
|
+
|
106
|
+
- trigger: 'need_different_test'
|
107
|
+
to: 'red'
|
108
|
+
transition_reason: 'Implementation work revealed need to revise the test'
|
109
|
+
|
110
|
+
- trigger: 'need_more_exploration'
|
111
|
+
to: 'explore'
|
112
|
+
transition_reason: 'Implementation work revealed need for more exploration'
|
113
|
+
|
114
|
+
- trigger: 'abandon_feature'
|
115
|
+
to: 'explore'
|
116
|
+
additional_instructions: 'Clean up any incomplete code and prepare for new tasks.'
|
117
|
+
transition_reason: 'User decided to abandon feature during implementation'
|
118
|
+
|
119
|
+
refactor:
|
120
|
+
description: 'REFACTOR phase - Improve code quality while keeping tests green (cleanup phase)'
|
121
|
+
default_instructions: |
|
122
|
+
You are in the REFACTOR phase of TDD. This is the cleanup phase - improve code quality while keeping all tests green.
|
123
|
+
|
124
|
+
Focus on:
|
125
|
+
- Removing code duplication
|
126
|
+
- Improving variable and function names
|
127
|
+
- Extracting methods for better organization
|
128
|
+
- Simplifying complex logic
|
129
|
+
- Enhancing readability and maintainability
|
130
|
+
- Applying appropriate design patterns
|
131
|
+
|
132
|
+
**Safety Rules**:
|
133
|
+
- Run tests after each refactoring change
|
134
|
+
- If any test breaks, immediately revert the change
|
135
|
+
- Make small, incremental improvements
|
136
|
+
- Stop when code is clean and no obvious improvements remain
|
137
|
+
|
138
|
+
Document significant refactoring decisions in the plan file.
|
139
|
+
transitions:
|
140
|
+
- trigger: 'refactoring_complete'
|
141
|
+
to: 'red'
|
142
|
+
additional_instructions: 'Mark completed refactoring tasks.'
|
143
|
+
transition_reason: 'Code cleanup complete, ready for next TDD cycle'
|
144
|
+
|
145
|
+
- trigger: 'need_different_approach'
|
146
|
+
to: 'green'
|
147
|
+
transition_reason: 'Refactoring revealed need to revise implementation'
|
148
|
+
|
149
|
+
- trigger: 'feature_complete'
|
150
|
+
to: 'explore'
|
151
|
+
additional_instructions: 'Mark feature as complete in plan file.'
|
152
|
+
transition_reason: 'Feature fully implemented and cleaned up, ready for new tasks'
|
153
|
+
|
154
|
+
- trigger: 'abandon_feature'
|
155
|
+
to: 'explore'
|
156
|
+
additional_instructions: 'Clean up any refactoring work and prepare for new tasks.'
|
157
|
+
transition_reason: 'User decided to abandon feature during refactoring'
|
@@ -0,0 +1,195 @@
|
|
1
|
+
# yaml-language-server: $schema=../state-machine-schema.json
|
2
|
+
---
|
3
|
+
name: 'waterfall'
|
4
|
+
description: 'V-Model: Specification down to test – the historical way. Ideal for larger, design-heavy tasks with well-defined requirements'
|
5
|
+
initial_state: 'requirements'
|
6
|
+
|
7
|
+
# Enhanced metadata for better discoverability
|
8
|
+
metadata:
|
9
|
+
domain: 'code'
|
10
|
+
complexity: 'high'
|
11
|
+
bestFor:
|
12
|
+
- 'Large feature development'
|
13
|
+
- 'Complex system changes'
|
14
|
+
- 'Well-defined requirements'
|
15
|
+
- 'Design-heavy projects'
|
16
|
+
useCases:
|
17
|
+
- 'Building a new module from scratch'
|
18
|
+
- 'Implementing complex business logic'
|
19
|
+
- 'Major architectural changes'
|
20
|
+
examples:
|
21
|
+
- 'Create a new authentication system'
|
22
|
+
- 'Build a reporting dashboard'
|
23
|
+
- 'Implement a payment processing workflow'
|
24
|
+
requiresDocumentation: true
|
25
|
+
|
26
|
+
# States with default instructions and transitions
|
27
|
+
states:
|
28
|
+
requirements:
|
29
|
+
description: 'Gathering and analyzing requirements'
|
30
|
+
default_instructions: |
|
31
|
+
Make yourself familiar with the code base.
|
32
|
+
Focus on understanding their goals, scope, constraints, and success criteria, e. g.
|
33
|
+
• Who are the key stakeholders? (end users, business owners, technical teams)
|
34
|
+
• Which requirements are must-have vs nice-to-have?
|
35
|
+
• How will you measure success? What are the acceptance criteria?
|
36
|
+
• What are your time, budget, technical, or regulatory constraints?
|
37
|
+
• What existing systems must this integrate with?
|
38
|
+
Break down their needs into specific requirements in $REQUIREMENTS_DOC. Plan actionable tasks referencing those requirements in the plan file.
|
39
|
+
transitions:
|
40
|
+
- trigger: 'requirements_complete'
|
41
|
+
to: 'design'
|
42
|
+
additional_instructions: 'Requirements are complete! ✅ Now transition to design phase. Mark completed requirements tasks.'
|
43
|
+
transition_reason: 'All requirements tasks completed, moving to technical design'
|
44
|
+
review_perspectives:
|
45
|
+
- perspective: 'business_analyst'
|
46
|
+
prompt: 'Review requirements completeness, clarity, and business value. Ensure all stakeholder needs are captured and requirements are testable. Check for missing edge cases or unclear acceptance criteria.'
|
47
|
+
- perspective: 'ux_expert'
|
48
|
+
prompt: 'Evaluate user experience implications and usability requirements. Ensure user needs and workflows are properly defined. Identify potential UX challenges or accessibility concerns.'
|
49
|
+
|
50
|
+
design:
|
51
|
+
description: 'Technical design and architecture planning'
|
52
|
+
default_instructions: |
|
53
|
+
You are in the design phase. Re-analyze important interfaces of the application.
|
54
|
+
Review requirements from $REQUIREMENTS_DOC and design the technical solution
|
55
|
+
Focus on HOW to implement what's needed including architecture, technologies, data models, API design, and quality goals.
|
56
|
+
Clarify performance expectations and technology preferences if not already obvious from the current analysis.
|
57
|
+
Document architectural decisions in $ARCHITECTURE_DOC and detailed design in $DESIGN_DOC. Update the plan file and ensure the approach is solid before implementation."
|
58
|
+
transitions:
|
59
|
+
- trigger: 'need_more_requirements'
|
60
|
+
to: 'requirements'
|
61
|
+
additional_instructions: 'Design work revealed gaps in requirements understanding. Focus on clarifying the specific requirements that are blocking design decisions.'
|
62
|
+
transition_reason: 'Design work revealed need for additional requirements clarification'
|
63
|
+
|
64
|
+
- trigger: 'design_complete'
|
65
|
+
to: 'implementation'
|
66
|
+
additional_instructions: 'Design is complete! ✅ Now transition to implementation phase. Mark completed design tasks.'
|
67
|
+
transition_reason: 'Technical design is complete, ready for implementation'
|
68
|
+
review_perspectives:
|
69
|
+
- perspective: 'architect'
|
70
|
+
prompt: 'Review technical architecture, design patterns, and system integration. Ensure scalability, maintainability, and alignment with existing systems. Evaluate technology choices and architectural decisions.'
|
71
|
+
- perspective: 'security_expert'
|
72
|
+
prompt: 'Evaluate security considerations, data protection, and potential vulnerabilities in the proposed design. Review authentication, authorization, data handling, and potential attack vectors.'
|
73
|
+
|
74
|
+
implementation:
|
75
|
+
description: 'Building the solution according to design'
|
76
|
+
default_instructions: |
|
77
|
+
You are in the implementation phase. Follow the architecture from $ARCHITECTURE_DOC and detailed design from $DESIGN_DOC to build the solution. Before starting, clarify the approach:
|
78
|
+
• Should this be implemented incrementally or all at once? Any specific order of implementation?
|
79
|
+
• Are there high-risk parts that need extra validation or careful implementation?
|
80
|
+
Ensure requirements from $REQUIREMENTS_DOC are met. Focus on code structure, error handling, security, and maintainability. Write clean, well-documented code and include basic testing. Update the plan file with implementation progress.
|
81
|
+
transitions:
|
82
|
+
- trigger: 'need_design_changes'
|
83
|
+
to: 'design'
|
84
|
+
additional_instructions: "Implementation revealed issues with the current design. Consider what you've learned during coding and adjust the design accordingly. Document the changes and reasons."
|
85
|
+
transition_reason: 'Implementation work revealed need to revise the design'
|
86
|
+
|
87
|
+
- trigger: 'need_more_requirements'
|
88
|
+
to: 'requirements'
|
89
|
+
additional_instructions: 'Implementation revealed gaps in requirements understanding. Focus on clarifying the specific requirements that are blocking implementation.'
|
90
|
+
transition_reason: 'Implementation work revealed need for additional requirements'
|
91
|
+
|
92
|
+
- trigger: 'implementation_complete'
|
93
|
+
to: 'qa'
|
94
|
+
additional_instructions: 'Implementation is complete! ✅ Now transition to quality assurance phase.'
|
95
|
+
transition_reason: 'Core implementation is complete, ready for quality assurance'
|
96
|
+
review_perspectives:
|
97
|
+
- perspective: 'senior_software_developer'
|
98
|
+
prompt: 'Review code quality, best practices, and implementation approach. Ensure clean, maintainable, and efficient code. Check for proper error handling, logging, and code organization.'
|
99
|
+
- perspective: 'performance_engineer'
|
100
|
+
prompt: 'Assess performance implications, resource usage, and potential bottlenecks in the implementation. Review algorithms, data structures, and system resource utilization.'
|
101
|
+
|
102
|
+
qa:
|
103
|
+
description: 'Quality assurance and code review'
|
104
|
+
default_instructions: 'You are in the quality assurance phase. Take the following specific actions: 1) Syntax Check: Run syntax checking tools or validate syntax manually, 2) Build Project: Build the project to verify it compiles without errors, 3) Run Linter: Execute linting tools to ensure code style consistency, 4) Execute Tests: Run existing tests to verify functionality. Then conduct a multi-perspective code review from security, performance, UX, maintainability, and requirement compliance perspectives. Verify implementation matches $DESIGN_DOC specifications and fulfills the targeted requirements from $REQUIREMENTS_DOC. Update the plan file with QA progress and mark completed tasks.'
|
105
|
+
transitions:
|
106
|
+
- trigger: 'need_implementation_fixes'
|
107
|
+
to: 'implementation'
|
108
|
+
additional_instructions: 'Quality assurance revealed issues that require code changes. Focus on the specific problems identified during QA review.'
|
109
|
+
transition_reason: 'QA found issues requiring implementation fixes'
|
110
|
+
|
111
|
+
- trigger: 'need_design_changes'
|
112
|
+
to: 'design'
|
113
|
+
additional_instructions: 'Quality assurance revealed fundamental design issues. Consider the QA findings and adjust the design accordingly.'
|
114
|
+
transition_reason: 'QA found issues requiring design changes'
|
115
|
+
|
116
|
+
- trigger: 'qa_complete'
|
117
|
+
to: 'testing'
|
118
|
+
additional_instructions: 'Quality assurance is complete! ✅ Now transition to testing phase. Mark completed QA tasks.'
|
119
|
+
transition_reason: 'Quality assurance is complete, ready for comprehensive testing'
|
120
|
+
|
121
|
+
testing:
|
122
|
+
description: 'Comprehensive testing and validation'
|
123
|
+
default_instructions: 'You are in the testing phase. Create comprehensive test plans, write and execute tests, validate feature completeness, and ensure everything works as expected. Focus on test coverage, edge cases, integration testing, and user acceptance validation.'
|
124
|
+
transitions:
|
125
|
+
- trigger: 'need_implementation_fixes'
|
126
|
+
to: 'implementation'
|
127
|
+
additional_instructions: 'Testing revealed bugs or issues that require code changes. Focus on the specific problems identified during testing.'
|
128
|
+
transition_reason: 'Testing found issues requiring implementation fixes'
|
129
|
+
|
130
|
+
- trigger: 'need_qa_review'
|
131
|
+
to: 'qa'
|
132
|
+
additional_instructions: 'Testing revealed quality issues that need additional QA review. Focus on the specific quality concerns identified.'
|
133
|
+
transition_reason: 'Testing found issues requiring additional QA review'
|
134
|
+
|
135
|
+
- trigger: 'testing_complete'
|
136
|
+
to: 'finalize'
|
137
|
+
additional_instructions: 'Testing is complete! ✅ All tests pass and the feature is validated. Transition to finalization phase. Mark all testing tasks as complete.'
|
138
|
+
transition_reason: 'All testing is complete, feature is ready for delivery'
|
139
|
+
review_perspectives:
|
140
|
+
- perspective: 'business_analyst'
|
141
|
+
prompt: 'Verify that all requirements have been met and business objectives are achieved. Ensure the solution delivers the expected business value and meets acceptance criteria.'
|
142
|
+
- perspective: 'ux_expert'
|
143
|
+
prompt: 'Confirm user experience goals are met and the solution is user-friendly and accessible. Validate that user workflows are intuitive and efficient.'
|
144
|
+
|
145
|
+
finalize:
|
146
|
+
description: 'Code cleanup and documentation finalization'
|
147
|
+
default_instructions: >
|
148
|
+
You are in the finalize phase. This phase ensures code quality and documentation accuracy through systematic cleanup and review.
|
149
|
+
|
150
|
+
**STEP 1: Code Cleanup**
|
151
|
+
Systematically clean up development artifacts:
|
152
|
+
|
153
|
+
1. **Remove Debug Output**: Search for and remove all temporary debug output statements used during development.
|
154
|
+
Look for language-specific debug output methods (console logging, print statements, debug output functions).
|
155
|
+
Remove any debugging statements that were added for development purposes.
|
156
|
+
|
157
|
+
2. **Review TODO/FIXME Comments**:
|
158
|
+
- Address each TODO/FIXME comment by either implementing the solution or documenting why it's deferred
|
159
|
+
- Remove completed TODOs
|
160
|
+
- Convert remaining TODOs to proper issue tracking if needed
|
161
|
+
|
162
|
+
3. **Remove Debugging Code Blocks**:
|
163
|
+
- Remove temporary debugging code, test code blocks, and commented-out code
|
164
|
+
- Clean up any experimental code that's no longer needed
|
165
|
+
- Ensure proper error handling replaces temporary debug logging
|
166
|
+
|
167
|
+
**STEP 2: Documentation Review**
|
168
|
+
Review and update documentation to reflect final implementation:
|
169
|
+
|
170
|
+
1. **Update Long-Term Memory Documents**: Based on what was actually implemented:
|
171
|
+
• Update $REQUIREMENTS_DOC if requirements changed during development
|
172
|
+
• Update $ARCHITECTURE_DOC if architectural decisions evolved
|
173
|
+
• Update $DESIGN_DOC if design details were refined or changed
|
174
|
+
2. **Compare Against Implementation**: Review documentation against actual implemented functionality
|
175
|
+
3. **Update Changed Sections**: Only modify documentation sections that have functional changes
|
176
|
+
4. **Remove Development Progress**: Remove references to development iterations, progress notes, and temporary decisions
|
177
|
+
5. **Focus on Final State**: Ensure documentation describes the final implemented state, not the development process
|
178
|
+
6. **Ask User to Review Document Updates**
|
179
|
+
|
180
|
+
**STEP 3: Final Validation**
|
181
|
+
- Run existing tests to ensure cleanup didn't break functionality
|
182
|
+
- Verify documentation accuracy with a final review
|
183
|
+
- Ensure code is ready for production/delivery
|
184
|
+
|
185
|
+
Update the plan file with finalization progress and mark completed tasks.
|
186
|
+
transitions:
|
187
|
+
- trigger: 'need_final_changes'
|
188
|
+
to: 'implementation'
|
189
|
+
additional_instructions: 'Finalization revealed issues that require code changes. Focus on the specific problems identified during final review.'
|
190
|
+
transition_reason: 'Final review found issues requiring implementation changes'
|
191
|
+
|
192
|
+
- trigger: 'finalization_complete'
|
193
|
+
to: 'requirements'
|
194
|
+
additional_instructions: 'Feature is complete and finalized! All work is finished and ready for delivery. Prepare to gather requirements for the next feature or iteration.'
|
195
|
+
transition_reason: 'Feature delivery complete, beginning new development cycle'
|
package/.turbo/turbo-build.log
DELETED