context-first-cli 1.8.2 → 2.0.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/dist/commands/create-orchestrator.d.ts.map +1 -1
- package/dist/commands/create-orchestrator.js +15 -3
- package/dist/commands/create-orchestrator.js.map +1 -1
- package/dist/commands/feature.d.ts.map +1 -1
- package/dist/commands/feature.js +33 -2
- package/dist/commands/feature.js.map +1 -1
- package/dist/commands/update-commands.d.ts.map +1 -1
- package/dist/commands/update-commands.js +42 -2
- package/dist/commands/update-commands.js.map +1 -1
- package/dist/templates/commands/en/engineer/plan.md +297 -0
- package/dist/templates/commands/en/engineer/pr.md +167 -0
- package/dist/templates/commands/en/engineer/pre-pr.md +262 -0
- package/dist/templates/commands/en/engineer/start.md +281 -0
- package/dist/templates/commands/en/engineer/work.md +197 -0
- package/dist/templates/commands/en/products/check.md +233 -0
- package/dist/templates/commands/en/products/collect.md +156 -0
- package/dist/templates/commands/en/products/refine.md +222 -0
- package/dist/templates/commands/en/products/spec.md +267 -0
- package/dist/templates/commands/en/quality/metrics.md +240 -0
- package/dist/templates/commands/en/quality/observe.md +168 -0
- package/dist/templates/commands/en/warm-up.md +78 -0
- package/dist/templates/commands/es/engineer/plan.md +297 -0
- package/dist/templates/commands/es/engineer/pr.md +167 -0
- package/dist/templates/commands/es/engineer/pre-pr.md +262 -0
- package/dist/templates/commands/es/engineer/start.md +281 -0
- package/dist/templates/commands/es/engineer/work.md +197 -0
- package/dist/templates/commands/es/products/check.md +233 -0
- package/dist/templates/commands/es/products/collect.md +156 -0
- package/dist/templates/commands/es/products/refine.md +222 -0
- package/dist/templates/commands/es/products/spec.md +267 -0
- package/dist/templates/commands/es/quality/metrics.md +240 -0
- package/dist/templates/commands/es/quality/observe.md +168 -0
- package/dist/templates/commands/es/warm-up.md +78 -0
- package/dist/utils/config.d.ts +1 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js.map +1 -1
- package/package.json +1 -1
- package/templates/commands/en/engineer/plan.md +297 -0
- package/templates/commands/en/engineer/pr.md +167 -0
- package/templates/commands/en/engineer/pre-pr.md +262 -0
- package/templates/commands/en/engineer/start.md +281 -0
- package/templates/commands/en/engineer/work.md +197 -0
- package/templates/commands/en/products/check.md +233 -0
- package/templates/commands/en/products/collect.md +156 -0
- package/templates/commands/en/products/refine.md +222 -0
- package/templates/commands/en/products/spec.md +267 -0
- package/templates/commands/en/quality/metrics.md +240 -0
- package/templates/commands/en/quality/observe.md +168 -0
- package/templates/commands/en/warm-up.md +78 -0
- package/templates/commands/es/engineer/plan.md +297 -0
- package/templates/commands/es/engineer/pr.md +167 -0
- package/templates/commands/es/engineer/pre-pr.md +262 -0
- package/templates/commands/es/engineer/start.md +281 -0
- package/templates/commands/es/engineer/work.md +197 -0
- package/templates/commands/es/products/check.md +233 -0
- package/templates/commands/es/products/collect.md +156 -0
- package/templates/commands/es/products/refine.md +222 -0
- package/templates/commands/es/products/spec.md +267 -0
- package/templates/commands/es/quality/metrics.md +240 -0
- package/templates/commands/es/quality/observe.md +168 -0
- package/templates/commands/es/warm-up.md +78 -0
- package/templates/commands/pt-BR/engineer/plan.md +297 -0
- package/templates/commands/pt-BR/engineer/pr.md +167 -0
- package/templates/commands/pt-BR/engineer/pre-pr.md +262 -0
- package/templates/commands/pt-BR/engineer/start.md +281 -0
- package/templates/commands/pt-BR/engineer/work.md +197 -0
- package/templates/commands/pt-BR/products/check.md +233 -0
- package/templates/commands/pt-BR/products/collect.md +156 -0
- package/templates/commands/pt-BR/products/refine.md +222 -0
- package/templates/commands/pt-BR/products/spec.md +267 -0
- package/templates/commands/pt-BR/quality/metrics.md +240 -0
- package/templates/commands/pt-BR/quality/observe.md +168 -0
- package/templates/commands/pt-BR/warm-up.md +78 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/plan.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/pr.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/pre-pr.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/start.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/engineer/work.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/products/check.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/products/collect.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/products/refine.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/products/spec.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/quality/metrics.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/quality/observe.md +0 -0
- /package/{templates/commands → dist/templates/commands/pt-BR}/warm-up.md +0 -0
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# Work Execution
|
|
2
|
+
|
|
3
|
+
This command executes a unit of work in the current workspace, implementing part of the technical plan.
|
|
4
|
+
|
|
5
|
+
## 📋 Prerequisites
|
|
6
|
+
|
|
7
|
+
Before executing, make sure that:
|
|
8
|
+
- You have run `/start` and `/plan` to have the technical plan
|
|
9
|
+
- You are in the correct workspace: `<orchestrator>/.sessions/<ISSUE-ID>/`
|
|
10
|
+
- You have the files `.sessions/<ISSUE-ID>/` available:
|
|
11
|
+
- `context.md` (immutable)
|
|
12
|
+
- `architecture.md` (immutable)
|
|
13
|
+
- `plan.md` (mutable)
|
|
14
|
+
|
|
15
|
+
## 📍 IMPORTANT: Understand the Structure
|
|
16
|
+
|
|
17
|
+
**Workspace** (where you work):
|
|
18
|
+
```
|
|
19
|
+
<orchestrator>/.sessions/<ISSUE-ID>/
|
|
20
|
+
├── repo-1/ # worktree with branch feature/<ISSUE-ID>
|
|
21
|
+
├── repo-2/ # worktree with branch feature/<ISSUE-ID>
|
|
22
|
+
├── context.md # context (immutable)
|
|
23
|
+
├── architecture.md # architecture (immutable)
|
|
24
|
+
└── plan.md # plan (mutable)
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Main repositories** (DO NOT touch):
|
|
28
|
+
```
|
|
29
|
+
{base_path}/repo-1/ # main repo (branch main/master)
|
|
30
|
+
{base_path}/repo-2/ # main repo (branch main/master)
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**GOLDEN RULE**:
|
|
34
|
+
- ✅ Work ONLY inside `<orchestrator>/.sessions/<ISSUE-ID>/`
|
|
35
|
+
- ✅ Make commits in the worktrees inside the workspace
|
|
36
|
+
- ❌ NEVER checkout branches in the main repositories
|
|
37
|
+
- ❌ NEVER navigate to `{base_path}/{repo-id}/`
|
|
38
|
+
|
|
39
|
+
## ⚠️ IMPORTANT: Immutable Files
|
|
40
|
+
|
|
41
|
+
**This command must READ but NOT MODIFY:**
|
|
42
|
+
- ✅ **READ** `.sessions/<ISSUE-ID>/context.md` (immutable)
|
|
43
|
+
- ✅ **READ** `.sessions/<ISSUE-ID>/architecture.md` (immutable)
|
|
44
|
+
- ✅ **UPDATE** `.sessions/<ISSUE-ID>/plan.md` (mark progress)
|
|
45
|
+
- ✅ **IMPLEMENT** code in the workspace repositories
|
|
46
|
+
- ✅ **MAKE COMMITS** in the workspace repositories
|
|
47
|
+
- ❌ **DO NOT modify `context.md` or `architecture.md`**
|
|
48
|
+
- ❌ **DO NOT checkout branches in the main repositories (outside the workspace)**
|
|
49
|
+
|
|
50
|
+
## 📚 Load MetaSpecs
|
|
51
|
+
|
|
52
|
+
**Automatically locate MetaSpecs**:
|
|
53
|
+
1. Read `context-manifest.json` from the orchestrator
|
|
54
|
+
2. Find the repository with `"role": "metaspecs"`
|
|
55
|
+
3. Read `ai.properties.md` to get the `base_path`
|
|
56
|
+
4. The metaspecs are located at: `{base_path}/{metaspecs-repo-id}/`
|
|
57
|
+
5. Read the relevant `index.md` files during implementation to:
|
|
58
|
+
- Follow coding standards
|
|
59
|
+
- Respect defined architecture
|
|
60
|
+
- Use correct conventions
|
|
61
|
+
|
|
62
|
+
## 🎯 Objective
|
|
63
|
+
|
|
64
|
+
Implement a specific unit of work from the plan, which may involve:
|
|
65
|
+
- Creating new files/components
|
|
66
|
+
- Modifying existing files
|
|
67
|
+
- Adding tests
|
|
68
|
+
- Updating documentation
|
|
69
|
+
|
|
70
|
+
## 📝 Work Process
|
|
71
|
+
|
|
72
|
+
### 1. Identify Unit of Work
|
|
73
|
+
|
|
74
|
+
Based on the technical plan (`./.sessions/<ISSUE-ID>/plan.md`), identify:
|
|
75
|
+
- Which specific task will be implemented now
|
|
76
|
+
- In which workspace repository(ies)
|
|
77
|
+
- Which files will be created/modified
|
|
78
|
+
- Dependencies with other tasks
|
|
79
|
+
|
|
80
|
+
### 2. Implementation
|
|
81
|
+
|
|
82
|
+
**IMPORTANT**: Work ONLY inside the workspace at `.sessions/<ISSUE-ID>/`
|
|
83
|
+
|
|
84
|
+
For each repository in the workspace:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
# Navigate to the worktree inside the workspace
|
|
88
|
+
cd <orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/
|
|
89
|
+
|
|
90
|
+
# Verify you are on the correct branch
|
|
91
|
+
git branch # should show * feature/<ISSUE-ID>
|
|
92
|
+
|
|
93
|
+
# Implement the code here
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Perform the implementation following:
|
|
97
|
+
- **Project standards**: Consult style and architecture guides
|
|
98
|
+
- **Approved stack**: Use only technologies documented in the metaspecs
|
|
99
|
+
- **Tests**: Implement tests according to project standards
|
|
100
|
+
- **Documentation**: Update comments and docs when necessary
|
|
101
|
+
|
|
102
|
+
### 3. Local Validation
|
|
103
|
+
|
|
104
|
+
Before committing:
|
|
105
|
+
- Run unit/integration tests
|
|
106
|
+
- Check linting and formatting
|
|
107
|
+
- Confirm that existing functionality is not broken
|
|
108
|
+
|
|
109
|
+
### 4. Commit
|
|
110
|
+
|
|
111
|
+
For each modified repository **inside the workspace**:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
# Navigate to the worktree inside the workspace
|
|
115
|
+
cd <orchestrator>/.sessions/<ISSUE-ID>/<repo-name>/
|
|
116
|
+
|
|
117
|
+
# Add changes
|
|
118
|
+
git add .
|
|
119
|
+
|
|
120
|
+
# Commit
|
|
121
|
+
git commit -m "type: concise description
|
|
122
|
+
|
|
123
|
+
- Detail 1
|
|
124
|
+
- Detail 2
|
|
125
|
+
|
|
126
|
+
Refs: <ISSUE-ID>"
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
**Commit types**: `feat`, `fix`, `refactor`, `test`, `docs`, `chore`
|
|
130
|
+
|
|
131
|
+
### 5. Update Plan.md
|
|
132
|
+
|
|
133
|
+
**FOR EACH completed task**, update `./.sessions/<ISSUE-ID>/plan.md`:
|
|
134
|
+
|
|
135
|
+
```markdown
|
|
136
|
+
#### 1.1 - [Task Name] [Completed ✅]
|
|
137
|
+
- [Detail 1]
|
|
138
|
+
- [Detail 2]
|
|
139
|
+
- [Detail 3]
|
|
140
|
+
|
|
141
|
+
**Files**:
|
|
142
|
+
- `path/to/file1.ts` ✅
|
|
143
|
+
- `path/to/file2.vue` ✅
|
|
144
|
+
|
|
145
|
+
**Tests**:
|
|
146
|
+
- Unit test: [Description] ✅
|
|
147
|
+
- Integration test: [Description] ✅
|
|
148
|
+
|
|
149
|
+
**Comments**:
|
|
150
|
+
- Decision: [Explanation of important technical decision]
|
|
151
|
+
- Learning: [Something learned during implementation]
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
**Mark task status**:
|
|
155
|
+
- `[Not Started ⏳]` - Task not started yet
|
|
156
|
+
- `[In Progress ⏰]` - Task currently being worked on
|
|
157
|
+
- `[Completed ✅]` - Task finished and validated
|
|
158
|
+
|
|
159
|
+
## 🔍 Quality Checklist
|
|
160
|
+
|
|
161
|
+
Before considering the unit complete:
|
|
162
|
+
- [ ] Code implemented and tested
|
|
163
|
+
- [ ] Tests passing
|
|
164
|
+
- [ ] Linting/formatting OK
|
|
165
|
+
- [ ] Documentation updated (if necessary)
|
|
166
|
+
- [ ] Commit made in all affected repos
|
|
167
|
+
- [ ] `plan.md` updated with progress and comments
|
|
168
|
+
|
|
169
|
+
## ⚠️ Jidoka Principle
|
|
170
|
+
|
|
171
|
+
If you encounter problems during implementation:
|
|
172
|
+
1. 🛑 **STOP** the implementation
|
|
173
|
+
2. 📝 **DOCUMENT** the problem found
|
|
174
|
+
3. 💬 **ALERT** the user and discuss solutions
|
|
175
|
+
4. 🔄 **ADJUST** the plan if necessary
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
**Provided arguments**:
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
#$ARGUMENTS
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## 🎯 Next Steps
|
|
188
|
+
|
|
189
|
+
- **Continue implementation**: Run `/work` again for the next unit
|
|
190
|
+
- **Finish feature**: When everything is implemented, run `/pre-pr`
|
|
191
|
+
|
|
192
|
+
## 💡 Tips
|
|
193
|
+
|
|
194
|
+
- Work in small, incremental units
|
|
195
|
+
- Commit frequently (atomic commits)
|
|
196
|
+
- Document important decisions in the session
|
|
197
|
+
- Keep repositories synchronized with each other
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
# Validation Against MetaSpecs
|
|
2
|
+
|
|
3
|
+
This command validates requirements, decisions, or implementations against the project's metaspecs.
|
|
4
|
+
|
|
5
|
+
## ⚠️ IMPORTANT: Mode of Operation
|
|
6
|
+
|
|
7
|
+
**This command is for VALIDATION:**
|
|
8
|
+
- ✅ Validate against metaspecs
|
|
9
|
+
- ✅ **READ** files from repositories (read-only)
|
|
10
|
+
- ✅ Generate validation report
|
|
11
|
+
- ❌ **DO NOT checkout branches in main repositories**
|
|
12
|
+
- ❌ **DO NOT modify code**
|
|
13
|
+
- ❌ **DO NOT modify `context.md` or `architecture.md`**
|
|
14
|
+
|
|
15
|
+
## 🎯 Objective
|
|
16
|
+
|
|
17
|
+
Ensure alignment with:
|
|
18
|
+
- Product strategy
|
|
19
|
+
- Technical architecture
|
|
20
|
+
- Standards and conventions
|
|
21
|
+
- ADRs (Architecture Decision Records)
|
|
22
|
+
|
|
23
|
+
## 📋 When to Use
|
|
24
|
+
|
|
25
|
+
Run this command:
|
|
26
|
+
- After `/spec` - validate PRD
|
|
27
|
+
- After `/plan` - validate technical plan
|
|
28
|
+
- During `/work` - validate implementation decisions
|
|
29
|
+
- Before `/pr` - final validation
|
|
30
|
+
|
|
31
|
+
## 📚 Load MetaSpecs
|
|
32
|
+
|
|
33
|
+
**Automatically locate MetaSpecs**:
|
|
34
|
+
1. Read `context-manifest.json` from the orchestrator
|
|
35
|
+
2. Find the repository with `"role": "metaspecs"`
|
|
36
|
+
3. Read `ai.properties.md` to get the `base_path`
|
|
37
|
+
4. The metaspecs are located at: `{base_path}/{metaspecs-repo-id}/
|
|
38
|
+
|
|
39
|
+
## 🔍 Validation Process
|
|
40
|
+
|
|
41
|
+
### 1. Identify Available MetaSpecs
|
|
42
|
+
|
|
43
|
+
Navigate to the metaspecs directory and identify which metaspecs exist:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
ls -la {base_path}/{metaspecs-repo-id}/
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### 2. Business Validation
|
|
50
|
+
|
|
51
|
+
If there are business metaspecs (`MetaSpecs repository (business section)`):
|
|
52
|
+
|
|
53
|
+
```markdown
|
|
54
|
+
## Business Validation
|
|
55
|
+
|
|
56
|
+
### Product Strategy
|
|
57
|
+
- **File**: `MetaSpecs repository (business section)PRODUCT_STRATEGY.md`
|
|
58
|
+
- **Validation**: [Is this feature aligned with the strategy?]
|
|
59
|
+
- **Status**: ✅ Aligned / ⚠️ Partially / ❌ Not aligned
|
|
60
|
+
- **Notes**: [Observations]
|
|
61
|
+
|
|
62
|
+
### Personas
|
|
63
|
+
- **File**: `MetaSpecs repository (business section)CUSTOMER_PERSONAS.md`
|
|
64
|
+
- **Validation**: [Does it meet the correct persona?]
|
|
65
|
+
- **Status**: ✅ Aligned / ⚠️ Partially / ❌ Not aligned
|
|
66
|
+
- **Notes**: [Observations]
|
|
67
|
+
|
|
68
|
+
### Metrics
|
|
69
|
+
- **File**: `MetaSpecs repository (business section)PRODUCT_METRICS.md`
|
|
70
|
+
- **Validation**: [Is the success metric documented?]
|
|
71
|
+
- **Status**: ✅ Aligned / ⚠️ Partially / ❌ Not aligned
|
|
72
|
+
- **Notes**: [Observations]
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### 3. Technical Validation
|
|
76
|
+
|
|
77
|
+
If there are technical metaspecs (`MetaSpecs repository (technical section)`):
|
|
78
|
+
|
|
79
|
+
```markdown
|
|
80
|
+
## Technical Validation
|
|
81
|
+
|
|
82
|
+
### Technology Stack
|
|
83
|
+
- **File**: `MetaSpecs repository (technical section)meta/stack.md`
|
|
84
|
+
- **Validation**: [Uses only approved technologies?]
|
|
85
|
+
- **Status**: ✅ Compliant / ⚠️ Justified exception / ❌ Non-compliant
|
|
86
|
+
- **Notes**: [Technologies used and justifications]
|
|
87
|
+
|
|
88
|
+
### Architecture
|
|
89
|
+
- **File**: `MetaSpecs repository (technical section)ARCHITECTURE.md`
|
|
90
|
+
- **Validation**: [Follows architectural standards?]
|
|
91
|
+
- **Status**: ✅ Compliant / ⚠️ Partial / ❌ Non-compliant
|
|
92
|
+
- **Notes**: [Observations]
|
|
93
|
+
|
|
94
|
+
### ADRs (Architecture Decision Records)
|
|
95
|
+
- **Directory**: `MetaSpecs repository (technical section)adr/`
|
|
96
|
+
- **Validation**: [Respects documented architectural decisions?]
|
|
97
|
+
- **Relevant ADRs**: [List of verified ADRs]
|
|
98
|
+
- **Status**: ✅ Compliant / ⚠️ Minor conflict / ❌ Critical conflict
|
|
99
|
+
- **Notes**: [Observations]
|
|
100
|
+
|
|
101
|
+
### Business Rules
|
|
102
|
+
- **File**: `MetaSpecs repository (technical section)BUSINESS_LOGIC.md`
|
|
103
|
+
- **Validation**: [Implements business rules correctly?]
|
|
104
|
+
- **Status**: ✅ Compliant / ⚠️ Partial / ❌ Non-compliant
|
|
105
|
+
- **Notes**: [Observations]
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### 4. Standards Validation
|
|
109
|
+
|
|
110
|
+
```markdown
|
|
111
|
+
## Standards Validation
|
|
112
|
+
|
|
113
|
+
### Code
|
|
114
|
+
- **File**: `MetaSpecs repository (technical section)CODE_STANDARDS.md`
|
|
115
|
+
- **Validation**: [Follows code standards?]
|
|
116
|
+
- **Status**: ✅ Compliant / ⚠️ Minor deviations / ❌ Non-compliant
|
|
117
|
+
|
|
118
|
+
### Tests
|
|
119
|
+
- **File**: `MetaSpecs repository (technical section)TEST_STANDARDS.md`
|
|
120
|
+
- **Validation**: [Adequate testing strategy?]
|
|
121
|
+
- **Status**: ✅ Compliant / ⚠️ Partial / ❌ Non-compliant
|
|
122
|
+
|
|
123
|
+
### Documentation
|
|
124
|
+
- **File**: `MetaSpecs repository (technical section)DOC_STANDARDS.md`
|
|
125
|
+
- **Validation**: [Adequate documentation?]
|
|
126
|
+
- **Status**: ✅ Compliant / ⚠️ Partial / ❌ Non-compliant
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 5. Conflict Identification
|
|
130
|
+
|
|
131
|
+
If there are conflicts or misalignments:
|
|
132
|
+
|
|
133
|
+
```markdown
|
|
134
|
+
## Identified Conflicts
|
|
135
|
+
|
|
136
|
+
### Conflict 1: [Description]
|
|
137
|
+
- **Severity**: Critical / High / Medium / Low
|
|
138
|
+
- **Metaspec**: [File being violated]
|
|
139
|
+
- **Description**: [Conflict details]
|
|
140
|
+
- **Recommendation**: [How to resolve]
|
|
141
|
+
|
|
142
|
+
### Conflict 2: [Description]
|
|
143
|
+
[Same format as above]
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### 6. Justified Exceptions
|
|
147
|
+
|
|
148
|
+
If there are justified deviations:
|
|
149
|
+
|
|
150
|
+
```markdown
|
|
151
|
+
## Justified Exceptions
|
|
152
|
+
|
|
153
|
+
### Exception 1: [Description]
|
|
154
|
+
- **Metaspec**: [File being deviated]
|
|
155
|
+
- **Deviation**: [What is different]
|
|
156
|
+
- **Justification**: [Why it is necessary]
|
|
157
|
+
- **Approval**: [Who approved]
|
|
158
|
+
- **Documentation**: [Where it was documented]
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
## 📄 Saving the Validation Report
|
|
162
|
+
|
|
163
|
+
**PRIORITY 1: Use MCP (Model Context Protocol)**
|
|
164
|
+
|
|
165
|
+
- Read `ai.properties.md` from the orchestrator to identify the `task_management_system`
|
|
166
|
+
- Use the appropriate MCP to add the report to the issue:
|
|
167
|
+
- Add as a comment on the issue
|
|
168
|
+
- Update labels/tags according to the result (e.g., "validated", "needs-adjustment", "blocked")
|
|
169
|
+
- If there are critical conflicts, update the issue status
|
|
170
|
+
- Inform the user: "✅ Validation report added to issue [ID]"
|
|
171
|
+
|
|
172
|
+
**FALLBACK: Create .md file only if MCP fails**
|
|
173
|
+
|
|
174
|
+
If MCP is unavailable or fails, create `./.sessions/<ISSUE-ID>/check-report.md`:
|
|
175
|
+
|
|
176
|
+
```markdown
|
|
177
|
+
# Validation Report - [ISSUE-ID]
|
|
178
|
+
|
|
179
|
+
**Date**: [date/time]
|
|
180
|
+
**Phase**: [spec/plan/work/pre-pr]
|
|
181
|
+
|
|
182
|
+
## Overall Status
|
|
183
|
+
✅ Validated / ⚠️ Validated with reservations / ❌ Not validated
|
|
184
|
+
|
|
185
|
+
## Validations Performed
|
|
186
|
+
- Business: ✅ / ⚠️ / ❌
|
|
187
|
+
- Technical: ✅ / ⚠️ / ❌
|
|
188
|
+
- Standards: ✅ / ⚠️ / ❌
|
|
189
|
+
|
|
190
|
+
## Conflicts
|
|
191
|
+
[List of conflicts, if any]
|
|
192
|
+
|
|
193
|
+
## Exceptions
|
|
194
|
+
[List of justified exceptions, if any]
|
|
195
|
+
|
|
196
|
+
## Recommendations
|
|
197
|
+
1. [Recommendation 1]
|
|
198
|
+
2. [Recommendation 2]
|
|
199
|
+
|
|
200
|
+
## Approval
|
|
201
|
+
- [ ] Approved to proceed
|
|
202
|
+
- [ ] Requires adjustments
|
|
203
|
+
- [ ] Blocked
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
Inform the user: "⚠️ Report saved locally in .sessions/ (task manager not available)"
|
|
207
|
+
|
|
208
|
+
## 🚨 Action in Case of Conflicts
|
|
209
|
+
|
|
210
|
+
If critical conflicts are found:
|
|
211
|
+
1. 🛑 **STOP** the current process
|
|
212
|
+
2. 📝 **DOCUMENT** all conflicts
|
|
213
|
+
3. 💬 **ALERT** the user and stakeholders
|
|
214
|
+
4. **Via MCP**: Update issue status to "Blocked" or "Requires Adjustments"
|
|
215
|
+
5. 🔄 **ADJUST** the plan/implementation as needed
|
|
216
|
+
6. ✅ **REVALIDATE** after adjustments
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
**Provided arguments**:
|
|
221
|
+
|
|
222
|
+
```
|
|
223
|
+
#$ARGUMENTS
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## 🎯 Outcome
|
|
229
|
+
|
|
230
|
+
After validation:
|
|
231
|
+
- If ✅: Proceed to the next phase
|
|
232
|
+
- If ⚠️: Document reservations and proceed with approval
|
|
233
|
+
- If ❌: Fix conflicts before proceeding
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
# Idea and Requirements Collection
|
|
2
|
+
|
|
3
|
+
You are a product expert responsible for collecting and documenting new ideas, features, or bugs.
|
|
4
|
+
|
|
5
|
+
## ⚠️ IMPORTANT: This Command Does NOT Implement Code
|
|
6
|
+
|
|
7
|
+
**This command is ONLY for planning and documentation:**
|
|
8
|
+
- ✅ Collect and understand requirements
|
|
9
|
+
- ✅ Create issue in task manager via MCP
|
|
10
|
+
- ✅ Ask clarifying questions
|
|
11
|
+
- ✅ **READ** files from main repositories (read-only)
|
|
12
|
+
- ❌ **DO NOT implement code**
|
|
13
|
+
- ❌ **DO NOT edit code files**
|
|
14
|
+
- ❌ **DO NOT checkout branches in main repositories**
|
|
15
|
+
- ❌ **DO NOT make commits**
|
|
16
|
+
|
|
17
|
+
**Next step**: `/refine [ISSUE-ID]` to refine the collected requirements.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Project Context
|
|
22
|
+
|
|
23
|
+
Before starting, load the context by consulting:
|
|
24
|
+
|
|
25
|
+
1. **Locate MetaSpecs automatically**:
|
|
26
|
+
- Read `context-manifest.json` from orchestrator
|
|
27
|
+
- Find the repository with `"role": "metaspecs"`
|
|
28
|
+
- Read `ai.properties.md` to get the `base_path`
|
|
29
|
+
- Metaspecs is at: `{base_path}/{metaspecs-repo-id}/`
|
|
30
|
+
- Read `index.md` files as reference
|
|
31
|
+
|
|
32
|
+
2. **Project structure**:
|
|
33
|
+
- `context-manifest.json` - List of repositories and their functions
|
|
34
|
+
- `README.md` of involved repositories
|
|
35
|
+
|
|
36
|
+
## Your Objective
|
|
37
|
+
|
|
38
|
+
Understand the user's request and capture it as an issue in the task manager (via MCP).
|
|
39
|
+
|
|
40
|
+
**At this stage, you DO NOT need to:**
|
|
41
|
+
- ❌ Write complete specification
|
|
42
|
+
- ❌ Validate against metaspecs (this is done in `/refine` or `/spec`)
|
|
43
|
+
- ❌ Detail technical implementation
|
|
44
|
+
|
|
45
|
+
Just make sure the idea is **adequately understood**.
|
|
46
|
+
|
|
47
|
+
## Issue Format
|
|
48
|
+
|
|
49
|
+
```markdown
|
|
50
|
+
# [Clear and Descriptive Title]
|
|
51
|
+
|
|
52
|
+
## Description
|
|
53
|
+
[2-3 paragraphs explaining what the feature/bug is and why it's important]
|
|
54
|
+
|
|
55
|
+
## Type
|
|
56
|
+
- [ ] New Feature
|
|
57
|
+
- [ ] Existing Feature Improvement
|
|
58
|
+
- [ ] Bug
|
|
59
|
+
- [ ] Tech Debt
|
|
60
|
+
- [ ] Documentation
|
|
61
|
+
|
|
62
|
+
## Additional Context
|
|
63
|
+
[Relevant information: where the bug occurs, feature inspiration, etc.]
|
|
64
|
+
|
|
65
|
+
## Affected Repositories
|
|
66
|
+
[List which project repositories will be impacted]
|
|
67
|
+
|
|
68
|
+
## Suggested Priority
|
|
69
|
+
- [ ] 🔴 Critical
|
|
70
|
+
- [ ] 🟡 High
|
|
71
|
+
- [ ] 🟢 Medium
|
|
72
|
+
- [ ] ⚪ Low (Backlog)
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## Collection Process
|
|
76
|
+
|
|
77
|
+
1. **Initial Understanding**
|
|
78
|
+
- Ask clarifying questions if needed
|
|
79
|
+
- Identify: Is it a new feature? Improvement? Bug?
|
|
80
|
+
- Identify which repositories will be affected
|
|
81
|
+
|
|
82
|
+
2. **Issue Draft**
|
|
83
|
+
- Clear title (maximum 10 words)
|
|
84
|
+
- Objective description (2-3 paragraphs)
|
|
85
|
+
- Relevant additional context
|
|
86
|
+
- Affected repositories
|
|
87
|
+
- Suggested priority
|
|
88
|
+
|
|
89
|
+
3. **User Approval**
|
|
90
|
+
- Present the draft
|
|
91
|
+
- Make adjustments based on feedback
|
|
92
|
+
- Obtain final approval
|
|
93
|
+
|
|
94
|
+
4. **Issue Saving**
|
|
95
|
+
|
|
96
|
+
**PRIORITY 1: Use MCP (Model Context Protocol)**
|
|
97
|
+
|
|
98
|
+
Check if there's MCP configured for task manager:
|
|
99
|
+
- Read `ai.properties.md` from orchestrator to identify the `task_management_system`
|
|
100
|
+
- If `task_management_system=jira`: Use Jira MCP to create the issue
|
|
101
|
+
- If `task_management_system=linear`: Use Linear MCP to create the issue
|
|
102
|
+
- If `task_management_system=github`: Use GitHub MCP to create the issue
|
|
103
|
+
|
|
104
|
+
**When using MCP:**
|
|
105
|
+
- Create the issue directly in the task manager
|
|
106
|
+
- Get the created issue ID (e.g., FIN-123, LIN-456)
|
|
107
|
+
- Inform the user: "✅ Issue [ID] created in [task manager]"
|
|
108
|
+
- **DO NOT create .md file**
|
|
109
|
+
|
|
110
|
+
**FALLBACK: Create .md file only if MCP fails**
|
|
111
|
+
|
|
112
|
+
If MCP is not available or fails:
|
|
113
|
+
- Create file at `./.sessions/<ISSUE-ID>/collect.md`
|
|
114
|
+
- Use manual ID format: `LOCAL-001`, `LOCAL-002`, etc.
|
|
115
|
+
- Include date, type, and complete content
|
|
116
|
+
- Inform the user: "⚠️ Issue saved locally in .sessions/ (task manager not available)"
|
|
117
|
+
|
|
118
|
+
## Clarifying Questions
|
|
119
|
+
|
|
120
|
+
**For Features**:
|
|
121
|
+
- What problem does it solve?
|
|
122
|
+
- Who benefits?
|
|
123
|
+
- Is it visible functionality or infrastructure?
|
|
124
|
+
- Is it related to any existing feature?
|
|
125
|
+
- Which repositories need to be modified?
|
|
126
|
+
|
|
127
|
+
**For Bugs**:
|
|
128
|
+
- Where does the bug occur? (repository, component, flow)
|
|
129
|
+
- How to reproduce?
|
|
130
|
+
- What is the expected vs actual behavior?
|
|
131
|
+
- Impact severity?
|
|
132
|
+
|
|
133
|
+
**For Improvements**:
|
|
134
|
+
- What is working but can improve?
|
|
135
|
+
- Which metric do we want to impact?
|
|
136
|
+
- Is it technical or business optimization?
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
**Provided arguments**:
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
#$ARGUMENTS
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## 🎯 Next Step
|
|
149
|
+
|
|
150
|
+
After approval and issue saving:
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
/refine [ISSUE-ID]
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
This command will transform the collected issue into refined and validated requirements.
|