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,262 @@
|
|
|
1
|
+
# Preparación para Pull Request
|
|
2
|
+
|
|
3
|
+
Este comando valida que todo está listo para crear Pull Requests.
|
|
4
|
+
|
|
5
|
+
## 📋 Requisitos previos
|
|
6
|
+
|
|
7
|
+
- Implementación completa (todas las tareas del `/plan` ejecutadas)
|
|
8
|
+
- Todos los commits realizados
|
|
9
|
+
- Workspace limpio y organizado
|
|
10
|
+
|
|
11
|
+
## 🎯 Objetivo
|
|
12
|
+
|
|
13
|
+
Garantizar que la implementación está completa, probada y lista para revisión antes de crear los PRs.
|
|
14
|
+
|
|
15
|
+
## ✅ Checklist de Validación
|
|
16
|
+
|
|
17
|
+
### 1. Completitud de la Implementación
|
|
18
|
+
|
|
19
|
+
```markdown
|
|
20
|
+
## Verificación de Completitud
|
|
21
|
+
|
|
22
|
+
- [ ] Todas las tareas del plan fueron ejecutadas
|
|
23
|
+
- [ ] Todos los requisitos funcionales del PRD fueron implementados
|
|
24
|
+
- [ ] Todos los criterios de aceptación fueron cumplidos
|
|
25
|
+
- [ ] Ninguna funcionalidad quedó a medias
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### 2. Calidad del Código
|
|
29
|
+
|
|
30
|
+
Para cada repositorio modificado:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
cd <repositório>
|
|
34
|
+
|
|
35
|
+
# Verificar estado
|
|
36
|
+
git status
|
|
37
|
+
|
|
38
|
+
# Verificar linting
|
|
39
|
+
npm run lint # o comando equivalente
|
|
40
|
+
|
|
41
|
+
# Verificar formateo
|
|
42
|
+
npm run format:check # o comando equivalente
|
|
43
|
+
|
|
44
|
+
# Verificar build
|
|
45
|
+
npm run build # o comando equivalente
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Checklist:
|
|
49
|
+
```markdown
|
|
50
|
+
## Calidad del Código
|
|
51
|
+
|
|
52
|
+
### <repo-1>
|
|
53
|
+
- [ ] Linting sin errores
|
|
54
|
+
- [ ] Formateo correcto
|
|
55
|
+
- [ ] Build sin errores
|
|
56
|
+
- [ ] Sin warnings críticos
|
|
57
|
+
|
|
58
|
+
### <repo-2>
|
|
59
|
+
- [ ] Linting sin errores
|
|
60
|
+
- [ ] Formateo correcto
|
|
61
|
+
- [ ] Build sin errores
|
|
62
|
+
- [ ] Sin warnings críticos
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 3. Pruebas
|
|
66
|
+
|
|
67
|
+
Para cada repositorio:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
cd <repositório>
|
|
71
|
+
|
|
72
|
+
# Ejecutar pruebas unitarias
|
|
73
|
+
npm run test:unit # o comando equivalente
|
|
74
|
+
|
|
75
|
+
# Ejecutar pruebas de integración
|
|
76
|
+
npm run test:integration # o comando equivalente
|
|
77
|
+
|
|
78
|
+
# Verificar cobertura
|
|
79
|
+
npm run test:coverage # o comando equivalente
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Checklist:
|
|
83
|
+
```markdown
|
|
84
|
+
## Pruebas
|
|
85
|
+
|
|
86
|
+
### <repo-1>
|
|
87
|
+
- [ ] Todas las pruebas unitarias pasando
|
|
88
|
+
- [ ] Todas las pruebas de integración pasando
|
|
89
|
+
- [ ] Cobertura de pruebas adecuada (>= X%)
|
|
90
|
+
- [ ] Nuevas pruebas añadidas para nuevas funcionalidades
|
|
91
|
+
|
|
92
|
+
### <repo-2>
|
|
93
|
+
- [ ] Todas las pruebas unitarias pasando
|
|
94
|
+
- [ ] Todas las pruebas de integración pasando
|
|
95
|
+
- [ ] Cobertura de pruebas adecuada (>= X%)
|
|
96
|
+
- [ ] Nuevas pruebas añadidas para nuevas funcionalidades
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### 4. Documentación
|
|
100
|
+
|
|
101
|
+
```markdown
|
|
102
|
+
## Documentación
|
|
103
|
+
|
|
104
|
+
- [ ] README actualizado (si es necesario)
|
|
105
|
+
- [ ] Comentarios de código adecuados
|
|
106
|
+
- [ ] Documentación de APIs actualizada (si hay cambios)
|
|
107
|
+
- [ ] Changelog actualizado
|
|
108
|
+
- [ ] Documentación técnica actualizada en las metaspecs (si aplica)
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### 5. Commits
|
|
112
|
+
|
|
113
|
+
```markdown
|
|
114
|
+
## Commits
|
|
115
|
+
|
|
116
|
+
- [ ] Todos los commits tienen mensajes claros y descriptivos
|
|
117
|
+
- [ ] Los commits siguen el estándar del proyecto (conventional commits, etc.)
|
|
118
|
+
- [ ] No hay commits con mensajes genéricos ("fix", "update", etc.)
|
|
119
|
+
- [ ] Los commits están organizados lógicamente
|
|
120
|
+
- [ ] No hay commits de debug o temporales
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### 6. Sincronización
|
|
124
|
+
|
|
125
|
+
```markdown
|
|
126
|
+
## Sincronización
|
|
127
|
+
|
|
128
|
+
- [ ] Las branches están actualizadas con la branch base (main/develop)
|
|
129
|
+
- [ ] No hay conflictos de merge
|
|
130
|
+
- [ ] Cambios entre repositorios están sincronizados
|
|
131
|
+
- [ ] Dependencias entre repos fueron probadas
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### 7. Seguridad
|
|
135
|
+
|
|
136
|
+
```markdown
|
|
137
|
+
## Seguridad
|
|
138
|
+
|
|
139
|
+
- [ ] No hay credenciales ni secrets en el código
|
|
140
|
+
- [ ] No hay datos sensibles en logs
|
|
141
|
+
- [ ] Dependencias de seguridad fueron verificadas
|
|
142
|
+
- [ ] No hay vulnerabilidades conocidas introducidas
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### 8. Performance
|
|
146
|
+
|
|
147
|
+
```markdown
|
|
148
|
+
## Performance
|
|
149
|
+
|
|
150
|
+
- [ ] No hay regresiones de performance evidentes
|
|
151
|
+
- [ ] Queries/operaciones costosas fueron optimizadas
|
|
152
|
+
- [ ] No hay memory leaks introducidos
|
|
153
|
+
- [ ] Requisitos de performance del PRD fueron cumplidos
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## 🔍 Validación Cruzada
|
|
157
|
+
|
|
158
|
+
Si se modificaron múltiples repositorios:
|
|
159
|
+
|
|
160
|
+
```markdown
|
|
161
|
+
## Validación Cruzada
|
|
162
|
+
|
|
163
|
+
- [ ] Probé la integración entre los repositorios localmente
|
|
164
|
+
- [ ] APIs/contratos entre repos están consistentes
|
|
165
|
+
- [ ] No hay breaking changes no documentados
|
|
166
|
+
- [ ] El orden de deploy/merge está claro
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## 📄 Preparación de la Descripción del PR
|
|
170
|
+
|
|
171
|
+
Cree `./.sessions/<ISSUE-ID>/pr-description.md`:
|
|
172
|
+
|
|
173
|
+
```markdown
|
|
174
|
+
## 🎯 Objetivo
|
|
175
|
+
[Breve descripción de lo que hace esta feature]
|
|
176
|
+
|
|
177
|
+
## 📝 Cambios Principales
|
|
178
|
+
- [Cambio 1]
|
|
179
|
+
- [Cambio 2]
|
|
180
|
+
- [Cambio 3]
|
|
181
|
+
|
|
182
|
+
## 🔗 Enlaces
|
|
183
|
+
- **Issue**: [ISSUE-ID]
|
|
184
|
+
- **PRD**: [link o ruta]
|
|
185
|
+
- **Plan Técnico**: [link o ruta]
|
|
186
|
+
|
|
187
|
+
## ✅ Checklist
|
|
188
|
+
- [x] Código implementado y probado
|
|
189
|
+
- [x] Pruebas unitarias añadidas/actualizadas
|
|
190
|
+
- [x] Pruebas de integración pasando
|
|
191
|
+
- [x] Documentación actualizada
|
|
192
|
+
- [x] Linting y formateo OK
|
|
193
|
+
- [x] Build sin errores
|
|
194
|
+
|
|
195
|
+
## 🧪 Cómo Testear
|
|
196
|
+
1. [Paso 1]
|
|
197
|
+
2. [Paso 2]
|
|
198
|
+
3. [Resultado esperado]
|
|
199
|
+
|
|
200
|
+
## 🔍 Notas para Revisores
|
|
201
|
+
- [Punto de atención 1]
|
|
202
|
+
- [Punto de atención 2]
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## 🚨 Problemas Encontrados
|
|
206
|
+
|
|
207
|
+
Si alguna validación falla:
|
|
208
|
+
1. 🛑 **PARE** el proceso de creación de PR
|
|
209
|
+
2. 📝 **DOCUMENTE** el problema
|
|
210
|
+
3. 🔧 **CORRIJA** el problema
|
|
211
|
+
4. 🔄 **EJECUTE** `/pre-pr` nuevamente
|
|
212
|
+
|
|
213
|
+
## 📊 Informe de Validación
|
|
214
|
+
|
|
215
|
+
Cree `./.sessions/<ISSUE-ID>/pre-pr-report.md`:
|
|
216
|
+
|
|
217
|
+
```markdown
|
|
218
|
+
# Informe de Validación Pre-PR
|
|
219
|
+
|
|
220
|
+
**Fecha**: [fecha/hora]
|
|
221
|
+
**Issue**: [ISSUE-ID]
|
|
222
|
+
|
|
223
|
+
## Estado General
|
|
224
|
+
✅ Listo para PR / ⚠️ Pendientes / ❌ Bloqueado
|
|
225
|
+
|
|
226
|
+
## Repositorios Validados
|
|
227
|
+
- **<repo-1>**: ✅ OK
|
|
228
|
+
- **<repo-2>**: ✅ OK
|
|
229
|
+
|
|
230
|
+
## Resumen de Pruebas
|
|
231
|
+
- **Pruebas Unitarias**: X/X pasando
|
|
232
|
+
- **Pruebas de Integración**: Y/Y pasando
|
|
233
|
+
- **Cobertura**: Z%
|
|
234
|
+
|
|
235
|
+
## Pendientes (si las hay)
|
|
236
|
+
- [Pendiente 1]
|
|
237
|
+
- [Pendiente 2]
|
|
238
|
+
|
|
239
|
+
## Próximos Pasos
|
|
240
|
+
- [x] Todas las validaciones pasaron
|
|
241
|
+
- [ ] Ejecutar `/pr` para crear Pull Requests
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
**Argumentos proporcionados**:
|
|
247
|
+
|
|
248
|
+
```
|
|
249
|
+
#$ARGUMENTS
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## 🎯 Próximo Paso
|
|
255
|
+
|
|
256
|
+
Si todas las validaciones pasaron:
|
|
257
|
+
|
|
258
|
+
```bash
|
|
259
|
+
/pr
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
Este comando creará los Pull Requests para todos los repositorios modificados.
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
# Inicio del Desarrollo
|
|
2
|
+
|
|
3
|
+
Este comando inicia el desarrollo de una funcionalidad en el workspace actual.
|
|
4
|
+
|
|
5
|
+
## 📍 IMPORTANTE: Entienda la Estructura
|
|
6
|
+
|
|
7
|
+
**Workspace** (donde trabajará):
|
|
8
|
+
```
|
|
9
|
+
<orchestrator>/.sessions/<ISSUE-ID>/
|
|
10
|
+
├── repo-1/ # worktree con branch feature/<ISSUE-ID>
|
|
11
|
+
├── repo-2/ # worktree con branch feature/<ISSUE-ID>
|
|
12
|
+
├── context.md # contexto (inmutable - creado por este comando)
|
|
13
|
+
├── architecture.md # arquitectura (inmutable - creado por este comando)
|
|
14
|
+
└── plan.md # plan (mutable - creado por /plan)
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
**Repositorios principales** (solo lectura):
|
|
18
|
+
```
|
|
19
|
+
{base_path}/repo-1/ # repo principal (branch main/master)
|
|
20
|
+
{base_path}/repo-2/ # repo principal (branch main/master)
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**REGLA DE ORO**:
|
|
24
|
+
- ✅ Lea metaspecs y código de los repositorios principales (read-only)
|
|
25
|
+
- ✅ Cree `context.md` y `architecture.md` en `.sessions/<ISSUE-ID>/`
|
|
26
|
+
- ❌ NUNCA haga checkout en los repositorios principales
|
|
27
|
+
- ❌ NUNCA modifique código en este comando (use `/work` después)
|
|
28
|
+
|
|
29
|
+
## 📚 Cargar MetaSpecs
|
|
30
|
+
|
|
31
|
+
**Localizar MetaSpecs automáticamente**:
|
|
32
|
+
1. Lea `context-manifest.json` del orchestrator
|
|
33
|
+
2. Encuentre el repositorio con `"role": "metaspecs"`
|
|
34
|
+
3. Lea `ai.properties.md` para obtener el `base_path`
|
|
35
|
+
4. El metaspecs está en: `{base_path}/{metaspecs-repo-id}/`
|
|
36
|
+
5. Lea los archivos `index.md` relevantes:
|
|
37
|
+
- Contexto de negocio
|
|
38
|
+
- Stack, arquitectura y patrones técnicos
|
|
39
|
+
- Convenciones del proyecto
|
|
40
|
+
- ADRs (Architecture Decision Records)
|
|
41
|
+
|
|
42
|
+
## 🎯 Contexto del Proyecto
|
|
43
|
+
|
|
44
|
+
Antes de iniciar, cargue el contexto consultando:
|
|
45
|
+
- `context-manifest.json` - Estructura de repositorios
|
|
46
|
+
- MetaSpecs (localizado arriba) - Arquitectura y patrones
|
|
47
|
+
- `directorio del workspace` - Información del workspace actual
|
|
48
|
+
|
|
49
|
+
## ⚙️ Configuración Inicial
|
|
50
|
+
|
|
51
|
+
1. **Verificar Workspace**:
|
|
52
|
+
- Confirme que está en el workspace correcto (verifique `directorio del workspace`)
|
|
53
|
+
- Liste los repositorios disponibles en el workspace
|
|
54
|
+
|
|
55
|
+
2. **Verificar Branches**:
|
|
56
|
+
- Para cada repositorio en el workspace, verifique la branch actual
|
|
57
|
+
- Confirme que todas las branches están sincronizadas
|
|
58
|
+
|
|
59
|
+
3. **Cargar Especificación**:
|
|
60
|
+
- **Si task manager configurado**: Lea la issue usando el MCP apropiado
|
|
61
|
+
- **Si no**: Pida al usuario el archivo de especificación o descripción de la feature
|
|
62
|
+
|
|
63
|
+
4. **Actualizar Estado** (si task manager configurado):
|
|
64
|
+
- Mueva la issue a "En Progreso"
|
|
65
|
+
|
|
66
|
+
## 📋 Análisis y Entendimiento
|
|
67
|
+
|
|
68
|
+
Analice la especificación y construya un entendimiento completo respondiendo:
|
|
69
|
+
|
|
70
|
+
### Negocio
|
|
71
|
+
- **¿Por qué** se está construyendo esto?
|
|
72
|
+
- **¿Quién** se beneficia?
|
|
73
|
+
- **¿Qué** métrica queremos impactar?
|
|
74
|
+
|
|
75
|
+
### Funcional
|
|
76
|
+
- **¿Cuál es el resultado esperado**? (comportamiento del usuario, output del sistema)
|
|
77
|
+
- **¿Qué componentes** serán creados/modificados en cada repositorio?
|
|
78
|
+
- **¿Qué integraciones** entre repositorios son necesarias?
|
|
79
|
+
|
|
80
|
+
### Técnico
|
|
81
|
+
- **¿Stack aprobada**? Verificar contra especificaciones técnicas
|
|
82
|
+
- **¿Patrones arquitectónicos**? Verificar ADRs (si están disponibles)
|
|
83
|
+
- **¿Dependencias nuevas**? Justificar y documentar
|
|
84
|
+
- **¿Cómo probar**? (según patrones del proyecto)
|
|
85
|
+
|
|
86
|
+
### Validación contra MetaSpecs
|
|
87
|
+
|
|
88
|
+
Si metaspecs están disponibles, validar:
|
|
89
|
+
- ¿Está alineado con la estrategia y roadmap?
|
|
90
|
+
- ¿Usa stack tecnológica aprobada?
|
|
91
|
+
- ¿Respeta Architecture Decision Records?
|
|
92
|
+
- ¿Sigue reglas de negocio documentadas?
|
|
93
|
+
|
|
94
|
+
## 🤔 Preguntas de Aclaración
|
|
95
|
+
|
|
96
|
+
Después del análisis inicial, formule **3-5 aclaraciones más importantes**:
|
|
97
|
+
|
|
98
|
+
**Ejemplos de preguntas relevantes**:
|
|
99
|
+
- ¿Qué repositorio debe contener la lógica principal?
|
|
100
|
+
- ¿Cómo deben comunicarse los repositorios?
|
|
101
|
+
- ¿Hay dependencias entre los cambios en los diferentes repos?
|
|
102
|
+
- ¿Cuál es el orden de implementación recomendado?
|
|
103
|
+
- ¿Hay impacto en APIs o contratos entre servicios?
|
|
104
|
+
|
|
105
|
+
## 💾 Creación del Context.md
|
|
106
|
+
|
|
107
|
+
**IMPORTANTE**: Este archivo es **INMUTABLE** tras la aprobación. No debe ser modificado por comandos subsecuentes.
|
|
108
|
+
|
|
109
|
+
Cree el archivo `./.sessions/<ISSUE-ID>/context.md` con:
|
|
110
|
+
|
|
111
|
+
```markdown
|
|
112
|
+
# Context: [Nombre de la Feature]
|
|
113
|
+
|
|
114
|
+
## Por Qué
|
|
115
|
+
[Valor de negocio, persona atendida, métrica impactada]
|
|
116
|
+
|
|
117
|
+
## Qué
|
|
118
|
+
[Funcionalidades principales, comportamiento esperado]
|
|
119
|
+
|
|
120
|
+
## Cómo
|
|
121
|
+
[Enfoque técnico, componentes, repositorios afectados]
|
|
122
|
+
|
|
123
|
+
## Validación contra MetaSpecs
|
|
124
|
+
- [x] Alineado con estrategia de producto
|
|
125
|
+
- [x] Atiende a la persona correcta
|
|
126
|
+
- [x] Métrica impactada documentada
|
|
127
|
+
- [x] Usa stack aprobada
|
|
128
|
+
- [x] Respeta ADRs
|
|
129
|
+
- [x] Sin conflictos con limitaciones conocidas
|
|
130
|
+
|
|
131
|
+
## Dependencias
|
|
132
|
+
[Bibliotecas, APIs, componentes existentes]
|
|
133
|
+
|
|
134
|
+
## Restricciones
|
|
135
|
+
[Limitaciones técnicas, objetivos de performance, presupuesto]
|
|
136
|
+
|
|
137
|
+
## Tests
|
|
138
|
+
[E2E críticos, unit tests necesarios, cobertura esperada]
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**Después de crear `context.md`, pida revisión y aprobación al usuario antes de continuar.**
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## 🏗️ Creación del Architecture.md
|
|
146
|
+
|
|
147
|
+
**IMPORTANTE**: Este archivo es **INMUTABLE** tras la aprobación. No debe ser modificado por comandos subsecuentes.
|
|
148
|
+
|
|
149
|
+
### Principios Arquitectónicos (OBLIGATORIO)
|
|
150
|
+
|
|
151
|
+
**ANTES de crear la arquitectura, DEBE:**
|
|
152
|
+
|
|
153
|
+
1. **Leer ADRs (Architecture Decision Records)**:
|
|
154
|
+
- Liste ADRs en metaspecs
|
|
155
|
+
- Lea TODOS los ADRs relevantes para la feature
|
|
156
|
+
- Identifique restricciones y patrones obligatorios
|
|
157
|
+
|
|
158
|
+
2. **Consultar patrones arquitectónicos**:
|
|
159
|
+
- Lea guías de estructura del proyecto en metaspecs
|
|
160
|
+
- Lea patrones de código en metaspecs
|
|
161
|
+
- Identifique patrones existentes en el código (use Glob/Grep para encontrar ejemplos similares)
|
|
162
|
+
|
|
163
|
+
3. **Validar compliance con ADRs**:
|
|
164
|
+
- Para cada ADR relevante, verifique si la solución propuesta respeta las decisiones
|
|
165
|
+
- Documente compliance en architecture.md
|
|
166
|
+
- Si hay violación, justifique o proponga corrección
|
|
167
|
+
|
|
168
|
+
4. **Analizar código existente**:
|
|
169
|
+
- Use Glob/Grep para encontrar componentes/módulos similares
|
|
170
|
+
- Entienda patrones y estructuras existentes
|
|
171
|
+
- Alinee nueva implementación con patrones del proyecto
|
|
172
|
+
|
|
173
|
+
### Estructura del Documento de Arquitectura
|
|
174
|
+
|
|
175
|
+
Cree el archivo `./.sessions/<ISSUE-ID>/architecture.md` con:
|
|
176
|
+
|
|
177
|
+
```markdown
|
|
178
|
+
# Architecture: [Nombre de la Feature]
|
|
179
|
+
|
|
180
|
+
## Visión General
|
|
181
|
+
[Visión de alto nivel del sistema antes y después del cambio]
|
|
182
|
+
|
|
183
|
+
## Componentes Afectados
|
|
184
|
+
[Lista de componentes y sus relaciones, dependencias]
|
|
185
|
+
|
|
186
|
+
### Diagrama de Componentes
|
|
187
|
+
[Descripción textual o diagrama Mermaid de los componentes]
|
|
188
|
+
|
|
189
|
+
### Flujo de Datos
|
|
190
|
+
1. [Paso 1 del flujo]
|
|
191
|
+
2. [Paso 2 del flujo]
|
|
192
|
+
3. [Paso 3 del flujo]
|
|
193
|
+
|
|
194
|
+
## Estructura de Directorios Propuesta
|
|
195
|
+
[Basada en patrones del proyecto]
|
|
196
|
+
|
|
197
|
+
```
|
|
198
|
+
repo-1/
|
|
199
|
+
├── src/
|
|
200
|
+
│ ├── components/
|
|
201
|
+
│ │ └── NewComponent.tsx (CREAR)
|
|
202
|
+
│ └── services/
|
|
203
|
+
│ └── NewService.ts (CREAR)
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
## Patrones y Mejores Prácticas
|
|
207
|
+
[Patrones que se mantendrán o introducirán]
|
|
208
|
+
|
|
209
|
+
## Validación de ADRs
|
|
210
|
+
[Lista de ADRs consultados y compliance]
|
|
211
|
+
|
|
212
|
+
- [x] ADR-001: [Nombre] - Compliant
|
|
213
|
+
- [x] ADR-002: [Nombre] - Compliant
|
|
214
|
+
|
|
215
|
+
## Dependencias Externas
|
|
216
|
+
[Bibliotecas que se usarán o añadirán]
|
|
217
|
+
|
|
218
|
+
## Decisiones Técnicas
|
|
219
|
+
|
|
220
|
+
### Decisión 1: [Título]
|
|
221
|
+
**Contexto**: [Por qué necesitamos decidir esto]
|
|
222
|
+
**Opciones consideradas**:
|
|
223
|
+
- Opción A: [Pros y contras]
|
|
224
|
+
- Opción B: [Pros y contras]
|
|
225
|
+
**Decisión**: [Opción elegida]
|
|
226
|
+
**Justificación**: [Por qué elegimos esta opción]
|
|
227
|
+
|
|
228
|
+
## Restricciones y Suposiciones
|
|
229
|
+
[Limitaciones técnicas y premisas]
|
|
230
|
+
|
|
231
|
+
## Trade-offs
|
|
232
|
+
[Alternativas consideradas y por qué no fueron elegidas]
|
|
233
|
+
|
|
234
|
+
## Consecuencias
|
|
235
|
+
**Positivas**:
|
|
236
|
+
- [Beneficio 1]
|
|
237
|
+
- [Beneficio 2]
|
|
238
|
+
|
|
239
|
+
**Negativas**:
|
|
240
|
+
- [Costo/limitación 1]
|
|
241
|
+
- [Costo/limitación 2]
|
|
242
|
+
|
|
243
|
+
## Archivos Principales
|
|
244
|
+
[Lista de los principales archivos a editar/crear]
|
|
245
|
+
|
|
246
|
+
- `repo-1/src/components/NewComponent.tsx` (CREAR)
|
|
247
|
+
- `repo-1/src/services/NewService.ts` (CREAR)
|
|
248
|
+
- `repo-2/src/controllers/NewController.ts` (CREAR)
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**Después de crear `architecture.md`, pida revisión y aprobación al usuario antes de continuar.**
|
|
252
|
+
|
|
253
|
+
---
|
|
254
|
+
|
|
255
|
+
**Argumentos proporcionados**:
|
|
256
|
+
|
|
257
|
+
```
|
|
258
|
+
#$ARGUMENTS
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## 🎯 Próximo Paso
|
|
264
|
+
|
|
265
|
+
**Después de la aprobación del usuario de los archivos `context.md` y `architecture.md`**:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
/plan
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
Este comando creará la planificación técnica detallada de la implementación.
|
|
272
|
+
|
|
273
|
+
---
|
|
274
|
+
|
|
275
|
+
## ⚠️ IMPORTANTE: Archivos Inmutables
|
|
276
|
+
|
|
277
|
+
**`context.md` y `architecture.md` son INMUTABLES tras la aprobación.**
|
|
278
|
+
|
|
279
|
+
- ✅ Pueden ser LEÍDOS por comandos subsecuentes (`/plan`, `/work`)
|
|
280
|
+
- ❌ NO deben ser MODIFICADOS por ningún comando
|
|
281
|
+
- ❌ Si hay necesidad de cambio, discútalo con el usuario y cree nuevos archivos o actualice la issue en el task manager
|