specpulse 1.0.6__py3-none-any.whl → 1.1.0__py3-none-any.whl

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.
Files changed (43) hide show
  1. specpulse/__init__.py +1 -1
  2. specpulse/cli/main.py +598 -617
  3. specpulse/core/specpulse.py +1110 -1105
  4. specpulse/resources/commands/claude/sp-continue.md +203 -0
  5. specpulse/resources/commands/claude/{plan.md → sp-plan.md} +53 -38
  6. specpulse/resources/commands/claude/sp-pulse.md +142 -0
  7. specpulse/resources/commands/claude/{spec.md → sp-spec.md} +36 -23
  8. specpulse/resources/commands/claude/sp-status.md +170 -0
  9. specpulse/resources/commands/claude/{task.md → sp-task.md} +68 -48
  10. specpulse/resources/commands/gemini/sp-continue.toml +56 -0
  11. specpulse/resources/commands/gemini/sp-plan.toml +68 -0
  12. specpulse/resources/commands/gemini/{pulse.toml → sp-pulse.toml} +12 -6
  13. specpulse/resources/commands/gemini/sp-spec.toml +54 -0
  14. specpulse/resources/commands/gemini/sp-status.toml +61 -0
  15. specpulse/resources/commands/gemini/sp-task.toml +79 -0
  16. specpulse/resources/memory/constitution.md +5 -5
  17. specpulse/resources/memory/context.md +12 -1
  18. specpulse/resources/scripts/{pulse-init.py → sp-pulse-init.py} +6 -6
  19. specpulse/resources/scripts/{pulse-init.sh → sp-pulse-init.sh} +95 -95
  20. specpulse/resources/scripts/{pulse-plan.py → sp-pulse-plan.py} +32 -7
  21. specpulse/resources/scripts/{pulse-plan.sh → sp-pulse-plan.sh} +136 -126
  22. specpulse/resources/scripts/{pulse-spec.py → sp-pulse-spec.py} +26 -6
  23. specpulse/resources/scripts/{pulse-spec.sh → sp-pulse-spec.sh} +126 -103
  24. specpulse/resources/scripts/{pulse-task.py → sp-pulse-task.py} +42 -6
  25. specpulse/resources/scripts/{pulse-task.sh → sp-pulse-task.sh} +32 -16
  26. specpulse/resources/templates/plan.md +206 -206
  27. specpulse/resources/templates/spec.md +125 -125
  28. specpulse/resources/templates/task.md +164 -163
  29. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/METADATA +35 -35
  30. specpulse-1.1.0.dist-info/RECORD +41 -0
  31. specpulse/resources/commands/claude/pulse.md +0 -91
  32. specpulse/resources/commands/gemini/plan.toml +0 -59
  33. specpulse/resources/commands/gemini/spec.toml +0 -45
  34. specpulse/resources/commands/gemini/task.toml +0 -69
  35. specpulse/resources/scripts/pulse-init.ps1 +0 -186
  36. specpulse/resources/scripts/pulse-plan.ps1 +0 -251
  37. specpulse/resources/scripts/pulse-spec.ps1 +0 -185
  38. specpulse/resources/scripts/pulse-task.ps1 +0 -263
  39. specpulse-1.0.6.dist-info/RECORD +0 -41
  40. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/WHEEL +0 -0
  41. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/entry_points.txt +0 -0
  42. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/licenses/LICENSE +0 -0
  43. {specpulse-1.0.6.dist-info → specpulse-1.1.0.dist-info}/top_level.txt +0 -0
@@ -1,125 +1,125 @@
1
- <!-- SpecPulse Specification Template v4.0 - AI-Optimized -->
2
- <!-- AI Instructions:
3
- 1. Replace all {{variable}} placeholders with actual values
4
- 2. Fill sections based on user input and requirements analysis
5
- 3. Mark ALL uncertainties with [NEEDS CLARIFICATION: specific question]
6
- 4. Keep requirements testable and unambiguous
7
- 5. Focus on WHAT and WHY, not HOW
8
- -->
9
-
10
- # Specification: {{ feature_name }}
11
-
12
- ## Metadata
13
- - **ID**: SPEC-{{ feature_id }}
14
- - **Branch**: {{ branch_name }}
15
- - **Created**: {{ date }}
16
- - **Author**: {{ author }}
17
- - **AI Assistant**: {{ ai_assistant }}
18
- - **Version**: 1.0.0
19
- - **Status**: DRAFT
20
-
21
- ## Executive Summary
22
- {{ executive_summary | default("Brief description of what this feature does and why it's needed") }}
23
-
24
- ## User Request
25
- ```
26
- {{ user_input }}
27
- ```
28
-
29
- ## Problem Statement
30
-
31
- ### Current State
32
- {{ current_state | default("Describe the current situation and pain points") }}
33
-
34
- ### Desired State
35
- {{ desired_state | default("Describe what should be achieved after implementation") }}
36
-
37
- ## Clarifications Needed
38
- <!-- List ALL ambiguities from user input -->
39
- {% if clarifications %}
40
- {% for clarification in clarifications %}
41
- - [NEEDS CLARIFICATION: {{ clarification }}]
42
- {% endfor %}
43
- {% else %}
44
- - [NEEDS CLARIFICATION: Add specific questions based on user input]
45
- {% endif %}
46
-
47
- ## User Stories
48
-
49
- ### Primary Stories
50
- {% for story in user_stories %}
51
- #### Story {{ loop.index }}: {{ story.title }}
52
- **As a** {{ story.user_type }}
53
- **I want to** {{ story.action }}
54
- **So that** {{ story.benefit }}
55
-
56
- **Acceptance Criteria:**
57
- {% for criteria in story.acceptance_criteria %}
58
- - Given {{ criteria.given }}, when {{ criteria.when }}, then {{ criteria.then }}
59
- {% endfor %}
60
- {% endfor %}
61
-
62
- ## Functional Requirements
63
-
64
- ### MUST Have Requirements
65
- {% for req in must_requirements %}
66
- **FR-{{ "%03d" | format(loop.index0 + 1) }}**: {{ req.statement }}
67
- - **Rationale**: {{ req.rationale }}
68
- - **Testable**: Yes
69
- {% endfor %}
70
-
71
- ### SHOULD Have Requirements
72
- {% for req in should_requirements %}
73
- **FR-{{ "%03d" | format(loop.index0 + len(must_requirements) + 1) }}**: {{ req.statement }}
74
- - **Rationale**: {{ req.rationale }}
75
- - **Testable**: Yes
76
- {% endfor %}
77
-
78
- ## Non-Functional Requirements
79
-
80
- ### Performance
81
- - Response time < {{ performance.response_time | default("200ms") }}
82
- - Support {{ performance.concurrent_users | default("1000") }} concurrent users
83
-
84
- ### Security
85
- - All data encrypted in transit
86
- - {{ security.authentication | default("Authentication required for sensitive actions") }}
87
-
88
- ## Acceptance Scenarios
89
-
90
- ### Critical Path
91
- 1. **Scenario**: {{ primary_scenario.name }}
92
- - **When**: {{ primary_scenario.action }}
93
- - **Then**: {{ primary_scenario.result }}
94
-
95
- ### Error Cases
96
- 1. **Scenario**: {{ error_scenario.name }}
97
- - **When**: {{ error_scenario.action }}
98
- - **Then**: {{ error_scenario.result }}
99
-
100
- ## Success Metrics
101
- - Adoption rate: {{ metrics.adoption_rate | default("80% within 30 days") }}
102
- - Success rate: {{ metrics.success_rate | default("95% of attempts") }}
103
- - User satisfaction: {{ metrics.satisfaction | default("8/10 NPS") }}
104
-
105
- ## Out of Scope
106
- <!-- Explicitly state what this feature will NOT do -->
107
- {% for item in out_of_scope %}
108
- - This feature will NOT {{ item }}
109
- {% endfor %}
110
-
111
- ## Dependencies
112
- {% for dep in dependencies %}
113
- - {{ dep }}
114
- {% endfor %}
115
-
116
- ## Validation Checklist
117
- - [ ] All MUST requirements implemented
118
- - [ ] All acceptance criteria pass
119
- - [ ] No [NEEDS CLARIFICATION] markers remain
120
- - [ ] Performance targets met
121
- - [ ] Security requirements validated
122
-
123
- ---
124
- **Generated by**: {{ ai_assistant }} on {{ date }}
125
- **Next Steps**: Use `/plan` to create implementation plan
1
+ <!-- SpecPulse Specification Template v4.0 - AI-Optimized -->
2
+ <!-- AI Instructions:
3
+ 1. Replace all {{variable}} placeholders with actual values
4
+ 2. Fill sections based on user input and requirements analysis
5
+ 3. Mark ALL uncertainties with [NEEDS CLARIFICATION: specific question]
6
+ 4. Keep requirements testable and unambiguous
7
+ 5. Focus on WHAT and WHY, not HOW
8
+ -->
9
+
10
+ # Specification: {{ feature_name }}
11
+
12
+ ## Metadata
13
+ - **ID**: SPEC-{{ feature_id }}
14
+ - **Branch**: {{ branch_name }}
15
+ - **Created**: {{ date }}
16
+ - **Author**: {{ author }}
17
+ - **AI Assistant**: {{ ai_assistant }}
18
+ - **Version**: 1.0.0
19
+ - **Status**: DRAFT
20
+
21
+ ## Executive Summary
22
+ {{ executive_summary | default("Brief description of what this feature does and why it's needed") }}
23
+
24
+ ## User Request
25
+ ```
26
+ {{ user_input }}
27
+ ```
28
+
29
+ ## Problem Statement
30
+
31
+ ### Current State
32
+ {{ current_state | default("Describe the current situation and pain points") }}
33
+
34
+ ### Desired State
35
+ {{ desired_state | default("Describe what should be achieved after implementation") }}
36
+
37
+ ## Clarifications Needed
38
+ <!-- List ALL ambiguities from user input -->
39
+ {% if clarifications %}
40
+ {% for clarification in clarifications %}
41
+ - [NEEDS CLARIFICATION: {{ clarification }}]
42
+ {% endfor %}
43
+ {% else %}
44
+ - [NEEDS CLARIFICATION: Add specific questions based on user input]
45
+ {% endif %}
46
+
47
+ ## User Stories
48
+
49
+ ### Primary Stories
50
+ {% for story in user_stories %}
51
+ #### Story {{ loop.index }}: {{ story.title }}
52
+ **As a** {{ story.user_type }}
53
+ **I want to** {{ story.action }}
54
+ **So that** {{ story.benefit }}
55
+
56
+ **Acceptance Criteria:**
57
+ {% for criteria in story.acceptance_criteria %}
58
+ - Given {{ criteria.given }}, when {{ criteria.when }}, then {{ criteria.then }}
59
+ {% endfor %}
60
+ {% endfor %}
61
+
62
+ ## Functional Requirements
63
+
64
+ ### MUST Have Requirements
65
+ {% for req in must_requirements %}
66
+ **FR-{{ "%03d" | format(loop.index0 + 1) }}**: {{ req.statement }}
67
+ - **Rationale**: {{ req.rationale }}
68
+ - **Testable**: Yes
69
+ {% endfor %}
70
+
71
+ ### SHOULD Have Requirements
72
+ {% for req in should_requirements %}
73
+ **FR-{{ "%03d" | format(loop.index0 + len(must_requirements) + 1) }}**: {{ req.statement }}
74
+ - **Rationale**: {{ req.rationale }}
75
+ - **Testable**: Yes
76
+ {% endfor %}
77
+
78
+ ## Non-Functional Requirements
79
+
80
+ ### Performance
81
+ - Response time < {{ performance.response_time | default("200ms") }}
82
+ - Support {{ performance.concurrent_users | default("1000") }} concurrent users
83
+
84
+ ### Security
85
+ - All data encrypted in transit
86
+ - {{ security.authentication | default("Authentication required for sensitive actions") }}
87
+
88
+ ## Acceptance Scenarios
89
+
90
+ ### Critical Path
91
+ 1. **Scenario**: {{ primary_scenario.name }}
92
+ - **When**: {{ primary_scenario.action }}
93
+ - **Then**: {{ primary_scenario.result }}
94
+
95
+ ### Error Cases
96
+ 1. **Scenario**: {{ error_scenario.name }}
97
+ - **When**: {{ error_scenario.action }}
98
+ - **Then**: {{ error_scenario.result }}
99
+
100
+ ## Success Metrics
101
+ - Adoption rate: {{ metrics.adoption_rate | default("80% within 30 days") }}
102
+ - Success rate: {{ metrics.success_rate | default("95% of attempts") }}
103
+ - User satisfaction: {{ metrics.satisfaction | default("8/10 NPS") }}
104
+
105
+ ## Out of Scope
106
+ <!-- Explicitly state what this feature will NOT do -->
107
+ {% for item in out_of_scope %}
108
+ - This feature will NOT {{ item }}
109
+ {% endfor %}
110
+
111
+ ## Dependencies
112
+ {% for dep in dependencies %}
113
+ - {{ dep }}
114
+ {% endfor %}
115
+
116
+ ## Validation Checklist
117
+ - [ ] All MUST requirements implemented
118
+ - [ ] All acceptance criteria pass
119
+ - [ ] No [NEEDS CLARIFICATION] markers remain
120
+ - [ ] Performance targets met
121
+ - [ ] Security requirements validated
122
+
123
+ ---
124
+ **Generated by**: {{ ai_assistant }} on {{ date }}
125
+ **Next Steps**: Use `/sp-plan generate` to create implementation plan
@@ -1,164 +1,165 @@
1
- <!-- SpecPulse Task List Template v3.0 - AI-Optimized -->
2
- <!-- AI Instructions: Generate from implementation plan using constitutional gates -->
3
-
4
- # Task List: {{ feature_name }}
5
-
6
- ## Metadata
7
- - **Plan Reference**: SPEC-{{ feature_id }}
8
- - **Total Tasks**: {{ task_count }}
9
- - **Estimated Duration**: {{ total_duration }}
10
- - **Parallel Groups**: {{ parallel_groups }}
11
-
12
- ## Task Organization
13
-
14
- {% for group in parallel_groups %}
15
- ### Parallel Group {{ loop.index }}
16
- *These tasks can be executed simultaneously*
17
-
18
- {% for task in group.tasks %}
19
- #### {{ task.id }}: {{ task.name }}
20
- - **Type**: {{ task.type }}
21
- - **Priority**: {{ task.priority }}
22
- - **Estimate**: {{ task.estimate }}
23
- - **Dependencies**: {{ task.dependencies | join(", ") | default("None") }}
24
- - **Description**: {{ task.description }}
25
- - **Acceptance**: {{ task.acceptance }}
26
- - **Files**: {{ task.files | join(", ") }}
27
- - **Assignable**: {{ task.assignable }}
28
- {% endfor %}
29
- {% endfor %}
30
-
31
- ### Sequential Tasks
32
- *These tasks must be completed in order*
33
-
34
- {% for task in sequential_tasks %}
35
- #### {{ task.id }}: {{ task.name }}
36
- - **Dependencies**: {{ task.dependencies | join(", ") }}
37
- - **Type**: {{ task.type }}
38
- - **Priority**: {{ task.priority }}
39
- - **Estimate**: {{ task.estimate }}
40
- - **Description**: {{ task.description }}
41
- - **Acceptance**: {{ task.acceptance }}
42
- {% endfor %}
43
-
44
- ### Critical Path
45
- *Tasks that directly impact timeline*
46
-
47
- {% for path in critical_path %}
48
- {{ loop.index }}. {{ path.tasks | join(" ") }}
49
- {% endfor %}
50
- - Estimated critical path duration: {{ critical_path_duration }}
51
-
52
- ## Constitutional Gates Compliance
53
-
54
- ### Pre-Implementation Validation
55
- {% for gate in constitutional_gates %}
56
- #### {{ gate.name }}
57
- - [ ] {{ gate.check_1 }}
58
- - [ ] {{ gate.check_2 }}
59
- - [ ] {{ gate.check_3 }}
60
- - [ ] {{ gate.check_4 }}
61
- **Status**: {{ gate.status | default("PENDING") }}
62
- {% endfor %}
63
-
64
- ## Task Details by Category
65
-
66
- {% for category in task_categories %}
67
- ### {{ category.name }} Tasks {% if category.parallel %}[P]{% endif %}
68
- {% for task in category.tasks %}
69
- - [ ] {{ task.id }}: {{ task.name }}
70
- {% endfor %}
71
- {% endfor %}
72
-
73
- ## Execution Schedule
74
-
75
- {% for phase in execution_schedule %}
76
- ### {{ phase.name }}
77
- {% for time_block in phase.time_blocks %}
78
- - {{ time_block.timing }}: {{ time_block.tasks | join(", ") }}{% if time_block.parallel %} (parallel){% endif %}
79
- {% endfor %}
80
- {% endfor %}
81
-
82
- ## Progress Tracking
83
- ```yaml
84
- status:
85
- total: {{ task_count }}
86
- completed: 0
87
- in_progress: 0
88
- blocked: 0
89
-
90
- metrics:
91
- velocity: {{ velocity | default("2-3 tasks/day") }}
92
- estimated_completion: {{ estimated_completion }}
93
- blockers: []
94
-
95
- parallel_groups:
96
- {% for group in parallel_groups %}
97
- - name: "{{ group.name }}"
98
- tasks: [{{ group.tasks | map(attribute='id') | join(", ") }}]
99
- can_start: {{ group.can_start }}
100
- {% endfor %}
101
-
102
- sequential_tasks:
103
- {% for task in sequential_tasks %}
104
- - name: "{{ task.name }}"
105
- id: {{ task.id }}
106
- dependencies: [{{ task.dependencies | join(", ") }}]
107
- {% endfor %}
108
- ```
109
-
110
- ## Task Execution Commands
111
-
112
- ### For parallel tasks:
113
- ```bash
114
- # Execute parallel tasks using SpecPulse scripts
115
- {% for group in parallel_groups %}
116
- # {{ group.name }} tasks
117
- parallel_tasks="{{ group.tasks | map(attribute='id') | join(" ") }}"
118
- for task in $parallel_tasks; do
119
- echo "Starting $task in parallel..."
120
- ./scripts/execute-task.sh "$task" &
121
- done
122
- wait # Wait for all parallel tasks to complete
123
- {% endfor %}
124
- ```
125
-
126
- ### For sequential tasks:
127
- ```bash
128
- # Execute tasks in dependency order
129
- {% for task in sequential_tasks %}
130
- # {{ task.name }} ({{ task.id }})
131
- echo "Executing {{ task.id }}..."
132
- ./scripts/execute-task.sh "{{ task.id }}"
133
- # Check success before proceeding
134
- if [ $? -eq 0 ]; then
135
- echo "{{ task.id }} completed successfully"
136
- else
137
- echo "{{ task.id }} failed - halting execution"
138
- exit 1
139
- fi
140
- {% endfor %}
141
- ```
142
-
143
- ## AI Integration Notes
144
-
145
- ### Constitutional Gates
146
- - All tasks MUST pass constitutional compliance before implementation
147
- - Use `/validate` command to check compliance status
148
- - Mark gates as completed only after actual validation
149
-
150
- ### Progress Tracking
151
- - Update task status in real-time using `/status` command
152
- - Document blockers immediately when identified
153
- - Use velocity metrics to refine future estimates
154
-
155
- ### Quality Assurance
156
- - Each task requires specific acceptance criteria
157
- - Test-first development mandated by Article III
158
- - Integration tests required before deployment
159
-
160
- ---
161
- **Generated by**: {{ ai_assistant }} on {{ date }}
162
- **Feature**: {{ feature_name }}
163
- **Constitutional Gates**: {{ constitutional_status | default("PENDING VALIDATION") }}
1
+ <!-- SpecPulse Task List Template v3.0 - AI-Optimized -->
2
+ <!-- AI Instructions: Generate from implementation plan using constitutional gates -->
3
+
4
+ # Task List: {{ feature_name }}
5
+
6
+ ## Metadata
7
+ - **Plan Reference**: SPEC-{{ feature_id }}
8
+ - **Total Tasks**: {{ task_count }}
9
+ - **Estimated Duration**: {{ total_duration }}
10
+ - **Parallel Groups**: {{ parallel_groups }}
11
+
12
+ ## Task Organization
13
+
14
+ {% for group in parallel_groups %}
15
+ ### Parallel Group {{ loop.index }}
16
+ *These tasks can be executed simultaneously*
17
+
18
+ {% for task in group.tasks %}
19
+ #### {{ task.id }}: {{ task.name }}
20
+ - **Type**: {{ task.type }}
21
+ - **Priority**: {{ task.priority }}
22
+ - **Estimate**: {{ task.estimate }}
23
+ - **Dependencies**: {{ task.dependencies | join(", ") | default("None") }}
24
+ - **Description**: {{ task.description }}
25
+ - **Acceptance**: {{ task.acceptance }}
26
+ - **Files**: {{ task.files | join(", ") }}
27
+ - **Assignable**: {{ task.assignable }}
28
+ {% endfor %}
29
+ {% endfor %}
30
+
31
+ ### Sequential Tasks
32
+ *These tasks must be completed in order*
33
+
34
+ {% for task in sequential_tasks %}
35
+ #### {{ task.id }}: {{ task.name }}
36
+ - **Dependencies**: {{ task.dependencies | join(", ") }}
37
+ - **Type**: {{ task.type }}
38
+ - **Priority**: {{ task.priority }}
39
+ - **Estimate**: {{ task.estimate }}
40
+ - **Description**: {{ task.description }}
41
+ - **Acceptance**: {{ task.acceptance }}
42
+ {% endfor %}
43
+
44
+ ### Critical Path
45
+ *Tasks that directly impact timeline*
46
+
47
+ {% for path in critical_path %}
48
+ {{ loop.index }}. {{ path.tasks | join(" -> ") }}
49
+ {% endfor %}
50
+ - Estimated critical path duration: {{ critical_path_duration }}
51
+
52
+ ## Constitutional Gates Compliance
53
+
54
+ ### Pre-Implementation Validation
55
+ {% for gate in constitutional_gates %}
56
+ #### {{ gate.name }}
57
+ - [ ] {{ gate.check_1 }}
58
+ - [ ] {{ gate.check_2 }}
59
+ - [ ] {{ gate.check_3 }}
60
+ - [ ] {{ gate.check_4 }}
61
+ **Status**: {{ gate.status | default("PENDING") }}
62
+ {% endfor %}
63
+
64
+ ## Task Details by Category
65
+
66
+ {% for category in task_categories %}
67
+ ### {{ category.name }} Tasks {% if category.parallel %}[P]{% endif %}
68
+ {% for task in category.tasks %}
69
+ - [ ] {{ task.id }}: {{ task.name }}
70
+ {% endfor %}
71
+ {% endfor %}
72
+
73
+ ## Execution Schedule
74
+
75
+ {% for phase in execution_schedule %}
76
+ ### {{ phase.name }}
77
+ {% for time_block in phase.time_blocks %}
78
+ - {{ time_block.timing }}: {{ time_block.tasks | join(", ") }}{% if time_block.parallel %} (parallel){% endif %}
79
+ {% endfor %}
80
+ {% endfor %}
81
+
82
+ ## Progress Tracking
83
+ ```yaml
84
+ status:
85
+ total: {{ task_count }}
86
+ completed: 0
87
+ in_progress: 0
88
+ blocked: 0
89
+
90
+ metrics:
91
+ velocity: {{ velocity | default("2-3 tasks/day") }}
92
+ estimated_completion: {{ estimated_completion }}
93
+ blockers: []
94
+
95
+ parallel_groups:
96
+ {% for group in parallel_groups %}
97
+ - name: "{{ group.name }}"
98
+ tasks: [{{ group.tasks | map(attribute='id') | join(", ") }}]
99
+ can_start: {{ group.can_start }}
100
+ {% endfor %}
101
+
102
+ sequential_tasks:
103
+ {% for task in sequential_tasks %}
104
+ - name: "{{ task.name }}"
105
+ id: {{ task.id }}
106
+ dependencies: [{{ task.dependencies | join(", ") }}]
107
+ {% endfor %}
108
+ ```
109
+
110
+ ## Task Execution Guidelines
111
+
112
+ ### AI-Assisted Development Process
113
+ All task execution should be handled by AI assistants (Claude or Gemini) following the SpecPulse methodology:
114
+
115
+ 1. **Task Selection**: AI assistants should select tasks based on:
116
+ - Dependency order (sequential tasks first)
117
+ - Parallel execution opportunities
118
+ - Current context and feature priorities
119
+ - Resource availability
120
+
121
+ 2. **Implementation Process**: For each task:
122
+ ```markdown
123
+ ## Task: {{ task.id }} - {{ task.name }}
124
+
125
+ **Status**: [ ] Pending / [x] Completed / [-] In Progress / [!] Blocked
126
+ **Dependencies**: {{ task.dependencies | join(", ") | default("None") }}
127
+ **Acceptance**: {{ task.acceptance }}
128
+ ```
129
+
130
+ 3. **Parallel Execution Strategy**: When tasks can be executed in parallel:
131
+ - AI assistants should work on multiple tasks simultaneously
132
+ - Coordinate task completion status
133
+ - Handle cross-task dependencies
134
+ - Maintain code consistency
135
+
136
+ ### Task Dependencies Management
137
+
138
+ - **Sequential Dependencies**: Tasks must be completed in specific order
139
+ - **Parallel Opportunities**: Independent tasks can be worked on simultaneously
140
+ - **Dependency Resolution**: AI should resolve conflicts and blocking issues
141
+ - **Progress Coordination**: Multiple AI assistants should coordinate task completion
142
+
143
+ ## AI Integration Notes
144
+
145
+ ### Constitutional Gates
146
+ - All tasks MUST pass constitutional compliance before implementation
147
+ - Use `/sp-validate` command to check compliance status
148
+ - Mark gates as completed only after actual validation
149
+
150
+ ### Progress Tracking
151
+ - Update task status in real-time using markdown checkboxes: `[ ]` → `[-]` → `[x]`
152
+ - Document blockers immediately with `[!]` status and resolution notes
153
+ - Use velocity metrics to refine future estimates
154
+ - Coordinate with other AI assistants for parallel task execution
155
+
156
+ ### Quality Assurance
157
+ - Each task requires specific acceptance criteria
158
+ - Test-first development mandated by Article III
159
+ - Integration tests required before deployment
160
+
161
+ ---
162
+ **Generated by**: {{ ai_assistant }} on {{ date }}
163
+ **Feature**: {{ feature_name }}
164
+ **Constitutional Gates**: {{ constitutional_status | default("PENDING VALIDATION") }}
164
165
  **Next Steps**: Execute tasks following constitutional order