@codemcp/workflows-core 3.2.3 → 3.3.1

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.
@@ -0,0 +1,464 @@
1
+ # yaml-language-server: $schema=../state-machine-schema.json
2
+ ---
3
+ name: 'sdd-greenfield'
4
+ description: 'Specification-driven development for new projects from scratch: Constitution → Specify → Plan → Tasks → Implement → Document'
5
+ initial_state: 'constitution'
6
+
7
+ # Enhanced metadata for better discoverability
8
+ metadata:
9
+ domain: 'sdd'
10
+ complexity: 'high'
11
+ bestFor:
12
+ - 'New projects from scratch'
13
+ - 'Greenfield development'
14
+ - 'Complex system design'
15
+ - 'Comprehensive planning needed'
16
+ useCases:
17
+ - 'Starting a new application'
18
+ - 'Building a new service'
19
+ - 'Creating a new library'
20
+ examples:
21
+ - 'Build a new web application'
22
+ - 'Create a microservice architecture'
23
+ - 'Develop a new API platform'
24
+
25
+ # States with default instructions and transitions
26
+ states:
27
+ constitution:
28
+ description: 'Establish constitutional framework and project governance'
29
+ default_instructions: |
30
+ You are establishing the constitutional framework for this new project. This phase sets the foundational principles that will guide all development decisions.
31
+
32
+ **Your tasks:**
33
+ 1. **Create Project Constitution**: Use the template provided to create a `constitution.md` file
34
+ 2. **Customize Principles**: Adapt the principles to your specific project needs
35
+ 3. **Set Quality Gates**: Define what constitutes acceptable quality and when to reject solutions
36
+ 4. **Document Governance**: Establish how these principles will be enforced
37
+
38
+ Create a `constitution.md` file in the project root with project-specific governance principles. This will be referenced in all subsequent phases.
39
+ additional_instructions: |
40
+ **Constitutional Framework Template:**
41
+
42
+ Use this template to create your `constitution.md` file:
43
+
44
+ ```markdown
45
+ # [PROJECT_NAME] Constitution
46
+
47
+ ## Core Principles
48
+
49
+ ### I. Specifications First
50
+ Specifications are the source of truth, not code. All development decisions must align with written specifications. Code serves specifications, not the other way around.
51
+
52
+ ### II. User Value Drives Decisions
53
+ Every feature and technical decision must demonstrate clear user value. If it doesn't serve users, it doesn't belong in the project.
54
+
55
+ ### III. Simplicity Over Complexity
56
+ Choose simple solutions over complex ones. Complexity must be justified by significant user benefit. YAGNI (You Aren't Gonna Need It) principles apply.
57
+
58
+ ### IV. Testability is Mandatory
59
+ All functionality must be testable. If it can't be tested, it can't be verified. Test-driven development is preferred.
60
+
61
+ ### V. Security by Design
62
+ Security considerations are built in from the start, not added later. All data handling and user interactions must consider security implications.
63
+
64
+ ### VI. Performance Considerations are Explicit
65
+ Performance requirements are documented and measurable. Performance trade-offs are made consciously and documented.
66
+
67
+ ### VII. Maintainability Over Cleverness
68
+ Code should be readable and maintainable by future developers. Clever solutions that are hard to understand are discouraged.
69
+
70
+ ### VIII. Documentation Serves Users
71
+ Documentation focuses on helping users accomplish their goals, not explaining implementation details to developers.
72
+
73
+ ### IX. Dependencies are Minimized and Justified
74
+ External dependencies are kept to a minimum. Each dependency must provide significant value and be actively maintained.
75
+
76
+ ## Quality Gates
77
+
78
+ - All specifications must be reviewed and approved before implementation
79
+ - All code must pass constitutional compliance review
80
+ - All features must demonstrate measurable user value
81
+ - All changes must maintain or improve system simplicity
82
+
83
+ ## Governance
84
+
85
+ This constitution supersedes all other development practices. Amendments require documentation, approval, and migration plan. All development decisions must verify compliance with these principles.
86
+
87
+ **Version**: 1.0 | **Ratified**: [DATE] | **Last Amended**: [DATE]
88
+ ```
89
+
90
+ Customize this template for your specific project, replacing [PROJECT_NAME] and [DATE] with appropriate values.
91
+
92
+ transitions:
93
+ - trigger: 'constitution_established'
94
+ to: 'specify'
95
+ transition_reason: 'Constitutional framework established, ready to create specifications'
96
+
97
+ specify:
98
+ description: 'Create comprehensive feature specification'
99
+ default_instructions: |
100
+ You are creating the feature specification that will be the source of truth for all development.
101
+
102
+ **Specification Process:**
103
+
104
+ 1. **Parse User Requirements**: Extract key concepts from the user's description
105
+ - Identify: actors, actions, data, constraints
106
+ - Focus on WHAT users need and WHY, not HOW to implement
107
+
108
+ 2. **Interactive Requirements Gathering**: Ask clarifying questions about:
109
+ - **Target Users**: Who will use this system? What are their technical skills?
110
+ - **Scale & Performance**: How many users? What performance expectations?
111
+ - **Integration**: Does this need to integrate with existing systems?
112
+ - **Constraints**: Any specific requirements, compliance needs, or limitations?
113
+ - **Success Metrics**: How will you measure if this is successful?
114
+
115
+ 3. **Handle Ambiguities Systematically**:
116
+ - Make informed guesses based on context and industry standards
117
+ - Only use [NEEDS CLARIFICATION: specific question] for critical decisions that:
118
+ - Significantly impact feature scope or user experience
119
+ - Have multiple reasonable interpretations with different implications
120
+ - Lack any reasonable default
121
+ - **LIMIT: Maximum 3 [NEEDS CLARIFICATION] markers total**
122
+ - Prioritize: scope > security/privacy > user experience > technical details
123
+
124
+ 4. **Quality Validation**:
125
+ - No implementation details (languages, frameworks, APIs)
126
+ - Written for non-technical stakeholders
127
+ - All requirements are testable
128
+ - Success criteria are measurable and technology-agnostic
129
+
130
+ 5. **Handle Clarifications** (if any [NEEDS CLARIFICATION] markers exist):
131
+ - Present options to user in structured format
132
+ - Wait for user responses
133
+ - Update specification with chosen answers
134
+
135
+ Create `$VIBE_DIR/specs/$BRANCH_NAME/spec.md` using the template provided.
136
+ additional_instructions: |
137
+ **Feature Specification Template:**
138
+
139
+ Use this template to create your `spec.md` file:
140
+
141
+ ```markdown
142
+ # Feature Specification: [FEATURE NAME]
143
+
144
+ **Created**: [DATE]
145
+ **Status**: Draft
146
+
147
+ ## User Scenarios & Testing *(mandatory)*
148
+
149
+ ### User Story 1 - [Brief Title] (Priority: P1)
150
+
151
+ [Describe this user journey in plain language]
152
+
153
+ **Why this priority**: [Explain the value and why it has this priority level]
154
+
155
+ **Independent Test**: [Describe how this can be tested independently]
156
+
157
+ **Acceptance Scenarios**:
158
+ 1. **Given** [initial state], **When** [action], **Then** [expected outcome]
159
+ 2. **Given** [initial state], **When** [action], **Then** [expected outcome]
160
+
161
+ ---
162
+
163
+ ### User Story 2 - [Brief Title] (Priority: P2)
164
+
165
+ [Describe this user journey in plain language]
166
+
167
+ **Why this priority**: [Explain the value and why it has this priority level]
168
+
169
+ **Independent Test**: [Describe how this can be tested independently]
170
+
171
+ **Acceptance Scenarios**:
172
+ 1. **Given** [initial state], **When** [action], **Then** [expected outcome]
173
+
174
+ ---
175
+
176
+ [Add more user stories as needed, each with an assigned priority]
177
+
178
+ ### Edge Cases
179
+
180
+ - What happens when [boundary condition]?
181
+ - How does system handle [error scenario]?
182
+
183
+ ## Requirements *(mandatory)*
184
+
185
+ ### Functional Requirements
186
+
187
+ - **FR-001**: System MUST [specific capability]
188
+ - **FR-002**: System MUST [specific capability]
189
+ - **FR-003**: Users MUST be able to [key interaction]
190
+ - **FR-004**: System MUST [data requirement]
191
+ - **FR-005**: System MUST [behavior]
192
+
193
+ ### Key Entities *(include if feature involves data)*
194
+
195
+ - **[Entity 1]**: [What it represents, key attributes without implementation]
196
+ - **[Entity 2]**: [What it represents, relationships to other entities]
197
+
198
+ ## Success Criteria *(mandatory)*
199
+
200
+ ### Measurable Outcomes
201
+
202
+ - **SC-001**: [Measurable metric, e.g., "Users can complete task in under 2 minutes"]
203
+ - **SC-002**: [Measurable metric, e.g., "System handles 1000 concurrent users"]
204
+ - **SC-003**: [User satisfaction metric, e.g., "90% task completion rate"]
205
+ - **SC-004**: [Business metric, e.g., "Reduce support tickets by 50%"]
206
+
207
+ ## Assumptions
208
+
209
+ - [Document any assumptions made during specification]
210
+ - [Include reasonable defaults chosen]
211
+
212
+ ## Dependencies
213
+
214
+ - [External systems or prerequisites]
215
+ - [Integration requirements]
216
+ ```
217
+
218
+ Fill in all sections with specific details for your feature. Each user story should be independently testable and prioritized.
219
+
220
+ transitions:
221
+ - trigger: 'specification_complete'
222
+ to: 'plan'
223
+ transition_reason: 'Feature specification completed and validated, ready for implementation planning'
224
+
225
+ - trigger: 'needs_clarification'
226
+ to: 'specify'
227
+ instructions: >
228
+ Specification has unresolved clarifications. Present structured questions to the user,
229
+ wait for their responses, then update the specification accordingly.
230
+ transition_reason: 'Specification needs user clarification before proceeding'
231
+
232
+ plan:
233
+ description: 'Generate implementation plan with constitutional compliance'
234
+ default_instructions: |
235
+ You are creating the implementation plan with constitutional compliance gates.
236
+
237
+ **Planning Process:**
238
+
239
+ 1. **Load Context**:
240
+ - Read the feature specification (`$VIBE_DIR/specs/$BRANCH_NAME/spec.md`)
241
+ - Read the project constitution (`constitution.md`)
242
+ - Understand the technical requirements
243
+
244
+ 2. **Interactive Technology Selection**: Ask the user about their preferences:
245
+ - **Technology Stack**: What programming languages/frameworks do you prefer?
246
+ - **Architecture Style**: Monolith, microservices, serverless, or hybrid?
247
+ - **Database**: What type of data storage do you need? (SQL, NoSQL, files)
248
+ - **Deployment**: Where will this run? (cloud, on-premise, local)
249
+ - **Experience Level**: What's your experience with different technologies?
250
+ - **Constraints**: Any technology restrictions or requirements?
251
+
252
+ 3. **Technical Context Analysis**:
253
+ - Identify technology stack and architecture decisions based on user input
254
+ - Map dependencies and integration points
255
+ - Mark unknowns as "NEEDS CLARIFICATION" for research phase
256
+
257
+ 4. **Constitutional Compliance Check**:
258
+ - Evaluate planned approach against each constitutional article
259
+ - Identify any violations and justify or resolve them
260
+ - Document compliance decisions
261
+
262
+ 5. **Phase 0 - Research & Decisions**:
263
+ - For each unknown in Technical Context → research task
264
+ - For each technology choice → best practices task
265
+ - Generate `$VIBE_DIR/specs/$BRANCH_NAME/technology-research.md` with all decisions and rationale
266
+
267
+ 6. **Phase 1 - High-Level Design**:
268
+ - Document high-level architecture and component overview
269
+ - Identify major system boundaries and integration points
270
+ - Document technology stack decisions and rationale
271
+
272
+ 7. **Re-evaluate Constitutional Compliance**:
273
+ - Verify design decisions align with constitutional principles
274
+ - Document any adjustments needed
275
+
276
+ Create `$VIBE_DIR/specs/$BRANCH_NAME/plan.md` with the complete implementation strategy, including technology decisions, architecture, and development phases.
277
+
278
+ transitions:
279
+ - trigger: 'plan_complete'
280
+ to: 'tasks'
281
+ transition_reason: 'Implementation plan completed with constitutional compliance, ready to generate tasks'
282
+
283
+ - trigger: 'constitutional_violation'
284
+ to: 'plan'
285
+ instructions: >
286
+ Implementation plan violates constitutional principles. Review and revise the approach
287
+ to align with the established governance framework.
288
+ transition_reason: 'Plan violates constitutional principles, needs revision'
289
+
290
+ tasks:
291
+ description: 'Generate actionable, dependency-ordered tasks organized by user stories'
292
+ default_instructions: |
293
+ You are generating actionable tasks organized by user stories for independent implementation.
294
+
295
+ **Task Generation Process:**
296
+
297
+ 1. **Load Design Documents**:
298
+ - **Required**: `$VIBE_DIR/specs/$BRANCH_NAME/plan.md` (tech stack, libraries, structure), `$VIBE_DIR/specs/$BRANCH_NAME/spec.md` (user stories with priorities)
299
+ - **Optional**: `$VIBE_DIR/specs/$BRANCH_NAME/technology-research.md`
300
+
301
+ 2. **Extract User Stories**: Load user stories with priorities (P1, P2, P3...)
302
+
303
+ 3. **Generate Tasks Organized by User Story**:
304
+ - **Setup Phase**: Shared infrastructure needed by all stories
305
+ - **Foundational Phase**: Prerequisites that must complete before ANY user story
306
+ - **User Story Phases** (P1, P2, P3...): One phase per story in priority order
307
+ - Group all tasks needed to complete JUST that story
308
+ - Include models, services, endpoints, UI components specific to that story
309
+ - Mark parallelizable tasks with [P]
310
+ - Each story should be independently testable
311
+
312
+ 4. **Task Rules**:
313
+ - Different files = mark [P] for parallel execution
314
+ - Same file = sequential (no [P])
315
+ - Number tasks sequentially (T001, T002...)
316
+ - Each task specific enough for LLM to complete without additional context
317
+
318
+ 5. **Generate Dependency Graph**: Show user story completion order and parallel opportunities
319
+
320
+ 6. **Implementation Strategy**: MVP-first approach (typically just User Story 1)
321
+
322
+ additional_instructions: |
323
+ **Document Creation Instructions:**
324
+
325
+ Create these documents in the following order:
326
+
327
+ **1. Data Model (`$VIBE_DIR/specs/$BRANCH_NAME/data-model.md`)**:
328
+ - Extract entities from the specification
329
+ - Define relationships between entities
330
+ - Include validation rules from requirements
331
+ - Document state transitions if applicable
332
+
333
+ **2. API Contracts (`$VIBE_DIR/specs/$BRANCH_NAME/contracts/`)**:
334
+ - Generate API contracts from functional requirements
335
+ - Create OpenAPI/GraphQL schemas based on chosen technology stack
336
+ - Ensure contracts align with data models
337
+ - Include error handling and validation
338
+
339
+ **3. Development Setup (`$VIBE_DIR/specs/$BRANCH_NAME/quickstart.md`)**:
340
+ - Project setup instructions based on chosen technology stack
341
+ - Development environment configuration
342
+ - Build and run instructions
343
+ - Testing setup and commands
344
+
345
+ **4. Task Breakdown (`$VIBE_DIR/specs/$BRANCH_NAME/tasks.md`)**:
346
+ Use this structure for the tasks file:
347
+
348
+ ```markdown
349
+ # Implementation Tasks: [FEATURE NAME]
350
+
351
+ ## Setup Phase
352
+ - T001: [Setup task] [P]
353
+ - T002: [Infrastructure task]
354
+
355
+ ## Foundational Phase
356
+ - T003: [Database setup]
357
+ - T004: [Core dependencies] [P]
358
+
359
+ ## User Story 1 (P1): [Story Title]
360
+ **Goal**: [What this story achieves]
361
+ **Independent Test**: [How to test this story alone]
362
+
363
+ - T005: [Model for this story] [P]
364
+ - T006: [Service for this story] [P]
365
+ - T007: [API endpoint for this story]
366
+ - T008: [UI component for this story] [P]
367
+
368
+ ## User Story 2 (P2): [Story Title]
369
+ [Continue pattern...]
370
+
371
+ ## Dependencies
372
+ - Story 1 → Story 2 (if applicable)
373
+ - Parallel opportunities: T001, T002, T004 can run simultaneously
374
+
375
+ ## MVP Scope
376
+ Recommended MVP: User Story 1 only
377
+ ```
378
+
379
+ transitions:
380
+ - trigger: 'tasks_generated'
381
+ to: 'implement'
382
+ transition_reason: 'Tasks generated and organized by user stories, ready for implementation'
383
+
384
+ implement:
385
+ description: 'Execute implementation following the task breakdown'
386
+ default_instructions: |
387
+ You are implementing the solution by executing the tasks in the order defined in `$VIBE_DIR/specs/$BRANCH_NAME/tasks.md`.
388
+
389
+ **Implementation Guidelines:**
390
+ 1. **Follow Task Order**: Execute tasks in the sequence defined, respecting dependencies
391
+ 2. **Constitutional Compliance**: Ensure all implementation decisions align with the project constitution
392
+ 3. **User Story Focus**: Complete one user story at a time for incremental delivery
393
+ 4. **Quality Gates**: Each user story must meet the success criteria from the specification
394
+ 5. **Testing**: Validate each user story independently before moving to the next
395
+ 6. **Documentation**: Update documentation as you implement
396
+
397
+ **Progress Tracking**:
398
+ - Mark completed tasks with [x] in `$VIBE_DIR/specs/$BRANCH_NAME/tasks.md`
399
+ - Document any deviations or decisions in the plan file
400
+ - Update the specification if requirements evolve during implementation
401
+
402
+ Focus on delivering working, tested increments that provide user value.
403
+
404
+ transitions:
405
+ - trigger: 'implementation_complete'
406
+ to: 'document'
407
+ transition_reason: 'All tasks completed and user stories implemented, ready for final documentation'
408
+
409
+ - trigger: 'implementation_blocked'
410
+ to: 'plan'
411
+ instructions: >
412
+ Implementation is blocked by technical issues or missing requirements.
413
+ Return to planning to resolve the blockers and update the approach.
414
+ transition_reason: 'Implementation blocked, need to revise plan'
415
+
416
+ document:
417
+ description: 'Create comprehensive project documentation'
418
+ default_instructions: |
419
+ You are creating the final project documentation that serves users and maintainers.
420
+
421
+ **Documentation Tasks:**
422
+ 1. **User Documentation**:
423
+ - Installation and setup guide
424
+ - User manual with examples
425
+ - API documentation (if applicable)
426
+ - Troubleshooting guide
427
+
428
+ 2. **Developer Documentation**:
429
+ - Architecture overview
430
+ - Development setup
431
+ - Contributing guidelines
432
+ - Code organization
433
+
434
+ 3. **Project Documentation**:
435
+ - README with project overview
436
+ - Changelog
437
+ - License information
438
+ - Deployment guide
439
+
440
+ **Quality Standards** (from constitution):
441
+ - Documentation serves users, not developers
442
+ - Focus on practical examples and common use cases
443
+ - Keep technical details minimal and focused
444
+ - Ensure documentation is maintainable
445
+
446
+ Create comprehensive documentation that enables users to successfully adopt and use the project.
447
+
448
+ transitions:
449
+ - trigger: 'documentation_complete'
450
+ to: 'document'
451
+ instructions: >
452
+ Project documentation is complete. The specification-driven development process has successfully
453
+ delivered a working solution with comprehensive documentation. Review all deliverables and
454
+ ensure they meet the constitutional principles established at the beginning.
455
+ transition_reason: 'Documentation complete, project ready for delivery'
456
+
457
+ # Global transitions available from any state
458
+ global_transitions:
459
+ - trigger: 'abandon_project'
460
+ to: 'constitution'
461
+ instructions: >
462
+ Project abandoned. If you want to restart, you'll begin again with establishing
463
+ the constitutional framework.
464
+ transition_reason: 'Project abandoned, restart from beginning'
@@ -39,10 +39,6 @@ states:
39
39
  transitions:
40
40
  - trigger: ideation_complete
41
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
42
  transition_reason: 'Presentation concept and goals clearly defined, ready for content structuring'
47
43
 
48
44
  - trigger: abandon_presentation
@@ -39,7 +39,6 @@ states:
39
39
  transitions:
40
40
  - trigger: 'requirements_complete'
41
41
  to: 'design'
42
- additional_instructions: 'Requirements are complete! ✅ Now transition to design phase. Mark completed requirements tasks.'
43
42
  transition_reason: 'All requirements tasks completed, moving to technical design'
44
43
  review_perspectives:
45
44
  - perspective: 'business_analyst'
@@ -63,7 +62,6 @@ states:
63
62
 
64
63
  - trigger: 'design_complete'
65
64
  to: 'implementation'
66
- additional_instructions: 'Design is complete! ✅ Now transition to implementation phase. Mark completed design tasks.'
67
65
  transition_reason: 'Technical design is complete, ready for implementation'
68
66
  review_perspectives:
69
67
  - perspective: 'architect'
@@ -91,7 +89,6 @@ states:
91
89
 
92
90
  - trigger: 'implementation_complete'
93
91
  to: 'qa'
94
- additional_instructions: 'Implementation is complete! ✅ Now transition to quality assurance phase.'
95
92
  transition_reason: 'Core implementation is complete, ready for quality assurance'
96
93
  review_perspectives:
97
94
  - perspective: 'senior_software_developer'
@@ -115,7 +112,6 @@ states:
115
112
 
116
113
  - trigger: 'qa_complete'
117
114
  to: 'testing'
118
- additional_instructions: 'Quality assurance is complete! ✅ Now transition to testing phase. Mark completed QA tasks.'
119
115
  transition_reason: 'Quality assurance is complete, ready for comprehensive testing'
120
116
 
121
117
  testing:
@@ -134,7 +130,6 @@ states:
134
130
 
135
131
  - trigger: 'testing_complete'
136
132
  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
133
  transition_reason: 'All testing is complete, feature is ready for delivery'
139
134
  review_perspectives:
140
135
  - perspective: 'business_analyst'
@@ -191,5 +186,4 @@ states:
191
186
 
192
187
  - trigger: 'finalization_complete'
193
188
  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
189
  transition_reason: 'Feature delivery complete, beginning new development cycle'