siesa-agents 2.1.97 → 2.1.98

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.
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: 'Pipeline secuencial de sub-agentes por épica: crea, desarrolla y revisa TODAS las historias de una o varias épicas usando sub-agentes aislados con integración TEA completa (ATDD + Automate + Review + Test Design + Trace). Acepta una épica individual (ej: 3) o un rango (ej: 1-4).'
2
+ description: 'Pipeline secuencial de sub-agentes por épica: crea, desarrolla y revisa TODAS las historias de una o varias épicas usando sub-agentes aislados. Acepta una épica individual (ej: 3) o un rango (ej: 1-4).'
3
3
  ---
4
4
 
5
5
  ## PASO 0 — Identificar las épicas a procesar
@@ -63,69 +63,6 @@ Con la fuente de la épica resuelta y el `sprint-status.yaml`:
63
63
 
64
64
  Informa al usuario cuántas historias se van a procesar y cuáles son, con su status actual.
65
65
 
66
- ### 0.5 — Integración TEA
67
-
68
- El pipeline siempre ejecuta el módulo TEA completo (ATDD + Automate + Review + Test Design + Trace). No hay modos opcionales.
69
-
70
- ---
71
-
72
- > Los pasos 0.6 y 0.7 siempre se ejecutan.
73
-
74
- ### 0.6 — Verificar Test Framework
75
-
76
- Verifica si existe `playwright.config.ts`, `playwright.config.js`, `cypress.config.ts` o `cypress.config.js` en el proyecto.
77
-
78
- - **Si existe**: el framework ya está configurado. Continúa al paso 0.7.
79
- - **Si NO existe**: usa el sub-agente `sa-tea-framework` para inicializarlo.
80
-
81
- ```
82
- Proyecto: {PROJECT_NAME}
83
- Directorio raíz: {PROJECT_ROOT}
84
- ```
85
-
86
- **ESPERA** a que complete antes de continuar.
87
-
88
- ### 0.7 — Test Design de la épica
89
-
90
- Ejecuta el sub-agente `sa-tea-test-design` pasando:
91
-
92
- ```
93
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
94
- Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
95
- Modo: epic-level
96
- ```
97
-
98
- **ESPERA** a que complete antes de iniciar el loop de historias.
99
-
100
- ---
101
-
102
- ## Reglas generales del pipeline
103
-
104
- ### Regla 1 — Observabilidad obligatoria en cada sub-agente
105
-
106
- Cada sub-agente que ejecuta un workflow BMAD (`sa-create-story`, `sa-dev-story`, `sa-code-review`) **DEBE honrar las instrucciones de observabilidad** definidas en su respectivo `workflow_ext.md`. Estas instrucciones emiten eventos de telemetría (`sa-emit.js`) a GCP en momentos específicos del flujo y son la fuente de todos los reportes de métricas del equipo.
107
-
108
- **Workflows instrumentados y eventos que se deben emitir:**
109
-
110
- | Sub-agente | `workflow_ext.md` | Eventos emitidos |
111
- |---|---|---|
112
- | `sa-create-story` | `_siesa-agents/bmm/workflows/4-implementation/create-story/workflow_ext.md` | `workflow.started`, `status.changed` (backlog → ready-for-dev), `workflow.finished` |
113
- | `sa-dev-story` | `_siesa-agents/bmm/workflows/4-implementation/dev-story/workflow_ext.md` | `workflow.started`, `status.changed` (in-progress → review), `workflow.finished` |
114
- | `sa-code-review` | `_siesa-agents/bmm/workflows/4-implementation/code-review/workflow_ext.md` | `workflow.started`, `fix.started`/`fix.finished` (cuando el usuario acepta auto_fix / action_items / show_details), `status.changed` (review → done o → in-progress), `workflow.finished` |
115
-
116
- **Prohibido a cualquier sub-agente bajo este orquestador:**
117
-
118
- - ❌ Saltarse, comentar, condicionar u omitir cualquier comando `node ... sa-emit.js ...` del `workflow_ext.md` correspondiente.
119
- - ❌ Diferir la emisión al "final del pipeline" o agruparla en batch. Los eventos son **lifecycle markers** y solo tienen sentido en el instante exacto que el `workflow_ext.md` indica (`workflow.finished` mide `duration_ms` desde el `workflow.started` correspondiente; si lo retrasas, la métrica queda corrompida).
120
-
121
- **Manejo de errores de `sa-emit.js`:**
122
-
123
- Si la llamada a `sa-emit.js` falla (gateway caído, credenciales mal configuradas, etc.), el sub-agente debe:
124
-
125
- 1. Registrar el fallo como advertencia **no-bloqueante**.
126
- 2. **Continuar el workflow normalmente** (regla universal documentada en cada `workflow_ext.md`: *"observability must never block the workflow"*).
127
- 3. NUNCA reemplazar la llamada por su omisión deliberada — el evento queda buffereado localmente en `~/.claude/observability/buffer/events.jsonl` y se reenvía automáticamente cuando el transporte se recupera.
128
-
129
66
  ---
130
67
 
131
68
  ## Reglas generales del pipeline
@@ -159,7 +96,7 @@ Si la llamada a `sa-emit.js` falla (gateway caído, credenciales mal configurada
159
96
 
160
97
  ## PASO 1 — Loop de procesamiento por historia
161
98
 
162
- Para CADA historia pendiente de la épica seleccionada, ejecuta secuencialmente los sub-agentes dedicados. Cada historia completa su ciclo completo antes de pasar a la siguiente.
99
+ Para CADA historia pendiente de la épica seleccionada, ejecuta secuencialmente los 3 sub-agentes dedicados. Cada historia completa su ciclo completo (create → dev → code-review) antes de pasar a la siguiente.
163
100
 
164
101
  Los sub-agentes están definidos en `.claude/agents/` y DEBES invocarlos por nombre usando la herramienta Agent con `subagent_type`.
165
102
 
@@ -180,22 +117,6 @@ Descripción: {STORY_DESCRIPTION_FROM_EPICS_FILE}
180
117
 
181
118
  ---
182
119
 
183
- ### SUB-AGENTE A.5 — ATDD
184
-
185
- Solo si el SUB-AGENTE A fue exitoso, usa la herramienta Agent con `subagent_type: "sa-tea-atdd"` y pasa como prompt:
186
-
187
- ```
188
- Historia a procesar: {STORY_FILE_PATH}
189
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
190
- Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
191
- ```
192
-
193
- **ESPERA** a que complete.
194
-
195
- > Si falla, registra el fallo como no-bloqueante y **CONTINÚA** con el SUB-AGENTE B. Los tests ATDD no son prerequisito para la implementación.
196
-
197
- ---
198
-
199
120
  ### SUB-AGENTE B — Dev Story
200
121
 
201
122
  Solo si el SUB-AGENTE A fue exitoso, usa la herramienta Agent con `subagent_type: "sa-dev-story"` y pasa como prompt:
@@ -210,71 +131,6 @@ Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
210
131
 
211
132
  ---
212
133
 
213
- ### SUB-AGENTE B.1 — ATDD Verify (loop de corrección)
214
-
215
- Solo si el SUB-AGENTE B fue exitoso Y el SUB-AGENTE A.5 generó tests, ejecuta este loop.
216
- Si A.5 falló o no generó tests, omite este paso y continúa con B.5.
217
-
218
- Ejecuta hasta **3 intentos en total** (1 inicial + 2 reintentos):
219
-
220
- #### Intento N:
221
-
222
- Usa la herramienta Agent con `subagent_type: "sa-tea-atdd-run"` y pasa como prompt:
223
-
224
- ```
225
- Historia: {STORY_FILE_PATH}
226
- Archivos de test ATDD: {ATDD_TEST_FILES_PATH}
227
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
228
- ```
229
-
230
- **ESPERA** a que complete y evalúa el resultado:
231
-
232
- - **PASS** → todos los tests en GREEN. Continúa con el SUB-AGENTE B.5.
233
- - **SKIP** → no se encontraron los archivos. Registra como advertencia y continúa con B.5.
234
- - **FAIL** (y quedan reintentos) → re-invoca el SUB-AGENTE B con contexto adicional:
235
-
236
- ```
237
- Historia a implementar: {STORY_FILE_PATH}
238
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
239
- Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
240
- CORRECCIÓN REQUERIDA — Tests ATDD fallidos (intento {N}/3):
241
- {OUTPUT_COMPLETO_DE_ATDD_RUN con nombres de tests fallidos y mensajes de error}
242
- Corrige la implementación para que estos tests pasen a GREEN.
243
- ```
244
-
245
- - **FAIL** (sin reintentos restantes, tras 3 intentos) → registra la historia como FAIL con motivo "ATDD no pasaron a GREEN tras 3 intentos" y pasa a la siguiente historia. No ejecuta B.5, B.6 ni C.
246
-
247
- ---
248
-
249
- ### SUB-AGENTE B.5 — Test Automate
250
-
251
- Solo si el SUB-AGENTE B fue exitoso, usa la herramienta Agent con `subagent_type: "sa-tea-automate"` y pasa como prompt:
252
-
253
- ```
254
- Historia a procesar: {STORY_FILE_PATH}
255
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
256
- Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
257
- Tests ATDD generados: {ATDD_TEST_FILES_PATH_OR_"ninguno si A.5 falló"}
258
- ```
259
-
260
- **ESPERA** a que complete. Si falla, registra el fallo y continúa con el SUB-AGENTE B.6 / C.
261
-
262
- ---
263
-
264
- ### SUB-AGENTE B.6 — Test Review
265
-
266
- Solo si el SUB-AGENTE B.5 fue exitoso, usa la herramienta Agent con `subagent_type: "sa-tea-review"` y pasa como prompt:
267
-
268
- ```
269
- Historia revisada: {STORY_FILE_PATH}
270
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
271
- Directorio de tests de la historia: {STORY_TEST_DIR}
272
- ```
273
-
274
- **ESPERA** a que complete. Si falla, registra el fallo y continúa con el SUB-AGENTE C.
275
-
276
- ---
277
-
278
134
  ### SUB-AGENTE C — Code Review
279
135
 
280
136
  Solo si el SUB-AGENTE B fue exitoso, usa la herramienta Agent con `subagent_type: "sa-code-review"` y pasa como prompt:
@@ -291,49 +147,24 @@ Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
291
147
 
292
148
  ### Feedback intermedio por historia
293
149
 
294
- Después de completar todos los sub-agentes para una historia, muestra al usuario un resumen breve de UNA línea.
150
+ Después de completar los 3 sub-agentes para una historia, muestra al usuario un resumen breve de UNA línea.
295
151
 
296
152
  ```
297
- ✅ Story {N}.{M} [{título}]: create ✅ → atdd ✅ → dev ✅ → atdd-run ✅ → automate ✅ → test-review ✅ → review ✅ (PASS)
298
- ```
299
-
300
- Si hubo reintentos en atdd-run, indica cuántos:
301
- ```
302
- ✅ Story {N}.{M} [{título}]: create ✅ → atdd ✅ → dev ✅ → atdd-run ⚠️(2 intentos) → automate ✅ → test-review ✅ → review ✅ (PASS)
153
+ ✅ Story {N}.{M} [{título}]: create ✅ → dev ✅ → review ✅ (PASS)
303
154
  ```
304
155
 
305
156
  En caso de fallo:
306
157
  ```
307
- ❌ Story {N}.{M} [{título}]: create ✅ → atdd ✅ → dev ✅ → atdd-run(3/3) (FAIL: ATDD no pasaron a GREEN)
158
+ ❌ Story {N}.{M} [{título}]: create ✅ → dev ✅ → review ❌ (FAIL: motivo breve)
308
159
  ```
309
160
 
310
161
  Luego continúa con la siguiente historia.
311
162
 
312
163
  ---
313
164
 
314
- ## PASO 2 — Quality Gate TEA y Reporte Final
315
-
316
- ### Quality Gate TEA
317
-
318
- Al completar el loop de todas las historias, ejecuta el gate de la épica.
165
+ ## PASO 2 — Reporte Final
319
166
 
320
- #### Gate Traceability + Quality Gate
321
-
322
- Usa la herramienta Agent con `subagent_type: "sa-tea-trace"` y pasa como prompt:
323
-
324
- ```
325
- Épica: {EPIC_NUMBER} - {EPIC_TITLE}
326
- Fuente de la épica: {EPIC_SOURCE_FILE_PATH}
327
- Historias procesadas: {LISTA_DE_STORY_FILE_PATHS}
328
- ```
329
-
330
- **ESPERA** a que complete.
331
-
332
- ---
333
-
334
- ### Reporte Final
335
-
336
- Al completar TODAS las historias y el gate TEA, genera el archivo de reporte en:
167
+ Al completar TODAS las historias de la épica, genera el archivo de reporte en:
337
168
 
338
169
  ```
339
170
  _bmad-output/implementation-artifacts/epic-{N}-report.md
@@ -350,22 +181,14 @@ El contenido del archivo debe seguir esta estructura:
350
181
  - Historias procesadas: X/Y
351
182
  - Exitosas (full pipeline): X
352
183
  - Con fallos: X
353
- - Quality Gate (Cobertura): PASS / CONCERNS / FAIL
354
184
 
355
185
  ## Detalle por Historia
356
186
 
357
- | Historia | Create | ATDD | Dev | ATDD-Run | Automate | Test Review | Code Review | Estado |
358
- |----------|--------|------|-----|----------|----------|-------------|-------------|--------|
359
- | {N}.1 | ✅ | ✅ | ✅ | ✅ (1) | ✅ | ✅ | ✅ PASS | Completada |
360
- | {N}.2 | ✅ | ✅ | ✅ | ⚠️ (2) | ✅ | ⏭️ | ✅ PASS | Completada |
361
- | {N}.3 | ✅ | ❌ | ✅ | ⏭️ | ✅ | ✅ | PASS | Completada |
362
-
363
- ## Quality Gate
364
-
365
- | Gate | Status | Detalle |
366
- |------|--------|---------|
367
- | Coverage P0 | ✅ PASS | 100% cubierto |
368
- | Coverage Overall | ⚠️ CONCERNS | 78% (mínimo 80%) |
187
+ | Historia | Create | Dev | Code Review | Estado |
188
+ |----------|--------|-----|-------------|--------|
189
+ | {N}.1 | ✅ | ✅ | ✅ PASS | Completada |
190
+ | {N}.2 | ✅ | ✅ | ⚠️ PASS c/obs | Completada |
191
+ | {N}.3 | ✅ | ❌ | ⏭️ | Fallo en dev |
369
192
 
370
193
  ## Historias que requieren atención manual
371
194
  - [lista de historias con fallos y razón, o "Ninguna" si todas pasaron]
@@ -377,8 +200,8 @@ Una vez escrito el archivo, informa al usuario:
377
200
  Reporte guardado en: _bmad-output/implementation-artifacts/epic-{N}-report.md
378
201
  ```
379
202
 
380
- Si TODAS las historias pasaron y el gate TEA es PASS, confirma al usuario que la épica está completa.
381
- Si alguna falló o el gate está en CONCERNS/FAIL, indica cuáles requieren intervención manual y por qué.
203
+ Si TODAS las historias pasaron, confirma al usuario que la épica está completa.
204
+ Si alguna falló, indica cuáles requieren intervención manual y por qué.
382
205
 
383
206
  Luego **continúa con la siguiente épica de EPIC_LIST** repitiendo desde el PASO 0.2.
384
207
 
@@ -391,12 +214,12 @@ Al completar el procesamiento de TODAS las épicas de EPIC_LIST, muestra un resu
391
214
  ```
392
215
  ## Resumen del pipeline — Épicas {EPIC_LIST_START}-{EPIC_LIST_END}
393
216
 
394
- | Épica | Historias | Exitosas | Con fallos | Gate TEA | Reporte |
395
- |-------|-----------|----------|------------|----------|---------|
396
- | N | X/Y | X | X | PASS/CONCERNS/FAIL | epic-N-report.md |
397
- | ... | ... | ... | ... | ... | ... |
217
+ | Épica | Historias | Exitosas | Con fallos | Reporte |
218
+ |-------|-----------|----------|------------|---------|
219
+ | N | X/Y | X | X | epic-N-report.md |
220
+ | ... | ... | ... | ... | ... |
398
221
 
399
222
  Total: X épicas procesadas. X completadas, X con atención manual requerida.
400
223
  ```
401
224
 
402
- Si hay épicas con fallos o gates en CONCERNS/FAIL, lista los archivos de reporte para revisión manual.
225
+ Si hay épicas con fallos, lista los archivos de reporte para revisión manual.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "siesa-agents",
3
- "version": "2.1.97",
3
+ "version": "2.1.98",
4
4
  "description": "Paquete para instalar y configurar agentes SIESA en tu proyecto",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -1,76 +0,0 @@
1
- ---
2
- name: sa-tea-atdd-run
3
- description: "Sub-agente TEA autónomo que ejecuta los tests ATDD generados para una historia y reporta cuántos pasaron a GREEN. Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: purple
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo cuya única responsabilidad es **ejecutar los tests ATDD** de una historia y reportar si pasaron a GREEN después de la implementación.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente.
18
- - Ejecuta SOLO los archivos de test indicados en el prompt — no toda la suite.
19
- - No modifiques los tests ni el código fuente. Solo ejecuta y reporta.
20
- - Si no existen los archivos de test indicados, reporta SKIP con el motivo.
21
-
22
- ## Ejecución
23
-
24
- ### 1. Detectar el test runner
25
-
26
- Lee `package.json` del proyecto para determinar si usa Playwright o Cypress:
27
- - Si tiene `@playwright/test` o `playwright` → usa Playwright
28
- - Si tiene `cypress` → usa Cypress
29
-
30
- ### 2. Construir el comando de ejecución
31
-
32
- **Playwright:**
33
- ```
34
- npx playwright test {ATDD_TEST_FILES} --reporter=list
35
- ```
36
-
37
- **Cypress:**
38
- ```
39
- npx cypress run --spec "{ATDD_TEST_FILES}"
40
- ```
41
-
42
- Donde `{ATDD_TEST_FILES}` son los archivos de test indicados en el prompt.
43
-
44
- ### 3. Ejecutar los tests
45
-
46
- Corre el comando y captura la salida completa (stdout + stderr).
47
-
48
- ### 4. Parsear resultados
49
-
50
- Del output extrae:
51
- - Total de tests ejecutados
52
- - Tests que pasaron (GREEN)
53
- - Tests que fallaron (RED) — para cada uno: nombre del test y mensaje de error
54
-
55
- ## Al Finalizar
56
-
57
- Responde ÚNICAMENTE con un bloque estructurado así:
58
-
59
- ```
60
- ATDD-RUN RESULT: PASS | FAIL | SKIP
61
-
62
- Tests ejecutados: X
63
- Tests GREEN: X
64
- Tests RED: X
65
-
66
- Tests fallidos (si los hay):
67
- - [nombre del test]: [mensaje de error resumido en 1 línea]
68
- - [nombre del test]: [mensaje de error resumido en 1 línea]
69
-
70
- Archivos ejecutados:
71
- - {ruta del archivo de test}
72
- ```
73
-
74
- - **PASS**: todos los tests están en GREEN
75
- - **FAIL**: al menos un test sigue en RED — incluye el detalle de cada fallo
76
- - **SKIP**: no se encontraron los archivos de test indicados
@@ -1,40 +0,0 @@
1
- ---
2
- name: sa-tea-atdd
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-atdd para generar tests fallidos ANTES de la implementación (ciclo TDD red-green-refactor). Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: purple
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-atdd** del módulo TEA (Test Engineering Agent) de BMAD.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - Genera tests en estado RED (fallando) — su función es definir el comportamiento esperado ANTES de que exista implementación.
19
- - Sé directo, funcional y breve.
20
- - Implementa SOLO los tests que cubren los acceptance criteria de la historia indicada. Nada más.
21
- - Usa siempre el patrón Given-When-Then.
22
- - Usa network-first intercepts (intercepta la red antes de navegar).
23
- - Usa selectores `data-testid` — nunca selectores CSS frágiles.
24
- - No uses hard waits — solo explicit waits.
25
-
26
- ## Ejecución
27
-
28
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-atdd.md` — este es el punto de entrada oficial del workflow.
29
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
30
- 3. La historia a procesar es la que se indica en el prompt que te invocó. No selecciones otra.
31
- 4. NO hagas preguntas en ningún step. Si un step requiere input del usuario, dedúcelo de los artefactos del proyecto (story file, épica, arquitectura).
32
- 5. Guarda el checklist ATDD y los archivos de test generados.
33
-
34
- ## Al Finalizar
35
-
36
- Responde ÚNICAMENTE con un resumen de máximo 4 líneas indicando:
37
- - Si se generaron los tests ATDD exitosamente o no
38
- - Cantidad de tests generados y niveles cubiertos (E2E / API / Component)
39
- - Ruta(s) de los archivos de test generados
40
- - Ruta del checklist ATDD generado
@@ -1,39 +0,0 @@
1
- ---
2
- name: sa-tea-automate
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-automate en modo BMad-Integrated para expandir cobertura de tests después de la implementación. Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: cyan
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-automate** del módulo TEA (Test Engineering Agent) de BMAD.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - Opera en modo **BMad-Integrated**: expande los tests ATDD existentes con edge cases, no analiza el codebase desde cero.
19
- - Sé directo, funcional y breve.
20
- - Cubre edge cases, error paths y boundary conditions que no estaban en los tests ATDD.
21
- - Si los tests ATDD no existen (fallaron en el sub-agente previo), analiza el código implementado directamente.
22
- - Máximo 3 iteraciones de auto-healing si un test falla al generarse.
23
- - Tests no recuperables tras 3 intentos: márcalos con `test.fixme()` con comentario explicativo.
24
-
25
- ## Ejecución
26
-
27
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-automate.md` — este es el punto de entrada oficial del workflow.
28
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
29
- 3. La historia a procesar es la que se indica en el prompt que te invocó. No selecciones otra.
30
- 4. NO hagas preguntas en ningún step. Deduce lo necesario de los artefactos del proyecto.
31
- 5. Guarda el archivo `automation-summary.md` con el resumen de cobertura.
32
-
33
- ## Al Finalizar
34
-
35
- Responde ÚNICAMENTE con un resumen de máximo 4 líneas indicando:
36
- - Si se expandió la cobertura exitosamente o no
37
- - Cantidad de tests nuevos generados por nivel (E2E / API / Component / Unit)
38
- - Tests marcados como fixme (si los hay) y razón breve
39
- - Ruta del automation-summary.md generado
@@ -1,36 +0,0 @@
1
- ---
2
- name: sa-tea-framework
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-framework para verificar o inicializar la arquitectura del test framework (Playwright o Cypress) en el proyecto. Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: blue
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-framework** del módulo TEA (Test Engineering Agent) de BMAD.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - **Primero verifica** si ya existe un framework configurado (`playwright.config.ts`, `cypress.config.ts`, `playwright.config.js`, `cypress.config.js`). Si existe, reporta que ya está configurado y NO modifiques nada.
19
- - Solo inicializa el framework si no existe ninguna configuración previa.
20
- - Auto-detecta el framework preferido leyendo `package.json`. Si ambos están instalados o ninguno, prefiere Playwright.
21
- - Sé directo, funcional y breve.
22
- - No instales paquetes npm — solo crea los archivos de configuración y estructura de directorios.
23
-
24
- ## Ejecución
25
-
26
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-framework.md` — este es el punto de entrada oficial del workflow.
27
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
28
- 3. NO hagas preguntas en ningún step. Auto-detecta framework y configuración del proyecto.
29
- 4. Si el framework ya existe, detente tras reportarlo — no ejecutes el resto del workflow.
30
-
31
- ## Al Finalizar
32
-
33
- Responde ÚNICAMENTE con un resumen de máximo 3 líneas indicando:
34
- - Si el framework ya existía (no se hizo nada) o si se inicializó
35
- - Framework detectado/configurado (Playwright / Cypress) y versión si está disponible
36
- - Archivos creados (si aplica) o confirmación de que ya estaba configurado
@@ -1,40 +0,0 @@
1
- ---
2
- name: sa-tea-nfr
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-nfr para validar requisitos no-funcionales (performance, security, reliability, maintainability) de la épica. Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: red
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-nfr** del módulo TEA (Test Engineering Agent) de BMAD.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - Evalúa las 4 categorías estándar: Performance, Security, Reliability, Maintainability.
19
- - Aplica reglas determinísticas estrictas por categoría:
20
- - **PASS**: evidencia existe Y cumple el threshold definido
21
- - **CONCERNS**: threshold desconocido O evidencia faltante/incompleta O dentro del 10% del umbral
22
- - **FAIL**: evidencia existe pero NO cumple el threshold
23
- - Sé directo, funcional y breve.
24
- - No inventes evidencia. Si no existe, el resultado es CONCERNS, no PASS.
25
-
26
- ## Ejecución
27
-
28
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-nfr.md` — este es el punto de entrada oficial del workflow.
29
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
30
- 3. La épica a evaluar es la que se indica en el prompt que te invocó.
31
- 4. NO hagas preguntas en ningún step. Deduce lo necesario de los artefactos del proyecto (story files, acceptance criteria, tests generados, código implementado).
32
- 5. Guarda el NFR assessment y el gate YAML.
33
-
34
- ## Al Finalizar
35
-
36
- Responde ÚNICAMENTE con un resumen de máximo 5 líneas indicando:
37
- - Gate decision por categoría: Performance / Security / Reliability / Maintainability (PASS / CONCERNS / FAIL)
38
- - Gate decision global de la épica
39
- - Quick wins identificados (si los hay, máximo 2)
40
- - Ruta del NFR assessment generado
@@ -1,44 +0,0 @@
1
- ---
2
- name: sa-tea-review
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-test-review para revisar la calidad de los tests generados para una historia. Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: orange
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-test-review** del módulo TEA (Test Engineering Agent) de BMAD.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - El scope de revisión es los tests generados para la historia indicada en el prompt (no toda la suite).
19
- - Valida contra los estándares obligatorios del TEA:
20
- - Estructura Given-When-Then
21
- - Sin hard waits
22
- - Auto-cleanup en fixtures (sin estado compartido)
23
- - Selectores `data-testid`
24
- - Performance: menos de 90 segundos por test
25
- - Tamaño: menos de 300 líneas por archivo
26
- - Una assertion principal por test (atómico)
27
- - Si encuentras issues auto-corregibles, corrígelos directamente sin pedir confirmación.
28
- - Sé directo, funcional y breve.
29
-
30
- ## Ejecución
31
-
32
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-test-review.md` — este es el punto de entrada oficial del workflow.
33
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
34
- 3. Los tests a revisar son los de la historia indicada en el prompt. No revises tests de otras historias.
35
- 4. NO hagas preguntas en ningún step.
36
- 5. Guarda el reporte `test-review-{story_id}.md`.
37
-
38
- ## Al Finalizar
39
-
40
- Responde ÚNICAMENTE con un resumen de máximo 4 líneas indicando:
41
- - Veredicto: PASS / PASS CON OBSERVACIONES / FAIL
42
- - Issues encontrados por severidad (críticos / warnings)
43
- - Issues auto-corregidos (si los hay)
44
- - Ruta del test-review generado
@@ -1,37 +0,0 @@
1
- ---
2
- name: sa-tea-test-design
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-test-design en modo Epic-Level (Phase 4) para crear el plan de tests de la épica antes de iniciar el loop de historias. Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: purple
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-test-design** del módulo TEA (Test Engineering Agent) de BMAD, en modo **Epic-Level (Phase 4)**.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - Opera SIEMPRE en modo **epic-level** (Phase 4) — no en modo system-level. Si el workflow intenta auto-detectar el modo, fuerza epic-level.
19
- - Sé directo, funcional y breve.
20
- - El output es el plan de tests para la épica completa, no para una historia individual.
21
- - Incluye risk assessment, estrategia por niveles (E2E/API/Component/Unit) y prioridades P0-P3.
22
-
23
- ## Ejecución
24
-
25
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-test-design.md` — este es el punto de entrada oficial del workflow.
26
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
27
- 3. La épica a diseñar es la que se indica en el prompt que te invocó. No selecciones otra.
28
- 4. NO hagas preguntas en ningún step. Deduce lo necesario del archivo fuente de la épica y los artefactos del proyecto.
29
- 5. Guarda el documento `test-design-epic-{N}.md`.
30
-
31
- ## Al Finalizar
32
-
33
- Responde ÚNICAMENTE con un resumen de máximo 4 líneas indicando:
34
- - Si se creó el test design exitosamente o no
35
- - Áreas de riesgo identificadas (máximo 3)
36
- - Estrategia de testing definida (niveles principales)
37
- - Ruta del archivo test-design-epic-{N}.md generado
@@ -1,41 +0,0 @@
1
- ---
2
- name: sa-tea-trace
3
- description: "Sub-agente TEA autónomo que ejecuta el workflow testarch-trace para generar la traceability matrix de la épica y emitir el quality gate decision (PASS/CONCERNS/FAIL). Solo puede ser invocado por el orquestador sa-quick-dev."
4
- model: inherit
5
- color: yellow
6
- ---
7
-
8
- > **RESTRICCIÓN**: Este sub-agente solo puede ser ejecutado por el orquestador `sa-quick-dev`.
9
- > No debe ni puede ser invocado por el modelo de forma autónoma, ni por ningún workflow
10
- > o skill diferente al orquestador, salvo instrucción explícita y directa del usuario.
11
- > Si recibes esta instrucción fuera del contexto de `sa-quick-dev`, detente y notifica al usuario.
12
-
13
- Eres un agente autónomo ejecutando el workflow **testarch-trace** del módulo TEA (Test Engineering Agent) de BMAD.
14
-
15
- ## Reglas Críticas
16
-
17
- - NO hagas preguntas al usuario. Actúa autónomamente usando los artefactos existentes del proyecto.
18
- - Ejecuta ambas fases del workflow: Fase 1 (traceability matrix) y Fase 2 (quality gate decision).
19
- - Aplica reglas determinísticas estrictas para el gate:
20
- - **PASS**: cobertura P0 ≥ 100%, P1 ≥ 90%, overall ≥ 80%
21
- - **CONCERNS**: threshold UNKNOWN o evidencia MISSING/INCOMPLETE o dentro del 10% del umbral
22
- - **FAIL**: evidencia existe pero no cumple el threshold
23
- - El scope del gate es `epic` (no story individual).
24
- - Sé directo, funcional y breve.
25
-
26
- ## Ejecución
27
-
28
- 1. CARGA y LEE el archivo completo `.claude/commands/bmad/bmm/workflows/testarch-trace.md` — este es el punto de entrada oficial del workflow.
29
- 2. Sigue sus instrucciones EXACTAMENTE tal como están escritas.
30
- 3. La épica a trazar es la que se indica en el prompt que te invocó.
31
- 4. NO hagas preguntas en ningún step. Deduce lo necesario de los artefactos del proyecto (story files, tests generados, épica).
32
- 5. Guarda la traceability matrix y el gate YAML.
33
-
34
- ## Al Finalizar
35
-
36
- Responde ÚNICAMENTE con un resumen de máximo 5 líneas indicando:
37
- - Quality Gate decision: PASS / CONCERNS / FAIL
38
- - Coverage overall % y por prioridad (P0 / P1)
39
- - Gaps críticos identificados (si los hay)
40
- - Ruta de la traceability matrix generada
41
- - Ruta del gate YAML generado