@christianmaf80/agentic-workflow 1.33.2-beta.7 → 1.34.1-beta.8
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/agent/rules/constitution/agents-behavior.md +28 -0
- package/dist/agent/templates/{brief.md → analisis.md} +24 -34
- package/dist/agent/templates/index.md +3 -2
- package/dist/agent/templates/plan.md +49 -0
- package/dist/agent/templates/{closure.md → qa-results.md} +12 -37
- package/dist/agent/templates/task.md +7 -3
- package/dist/agent/workflows/tasklifecycle-long/phase-4-implementation.md +4 -0
- package/dist/agent/workflows/tasklifecycle-short/index.md +16 -12
- package/dist/agent/workflows/tasklifecycle-short/short-phase-1-analisis.md +116 -0
- package/dist/agent/workflows/tasklifecycle-short/short-phase-2-plan.md +81 -0
- package/dist/agent/workflows/tasklifecycle-short/{short-phase-2-implementation.md → short-phase-3-implementation.md} +29 -20
- package/dist/agent/workflows/tasklifecycle-short/short-phase-4-qa-results.md +84 -0
- package/dist/cli/commands/init.js +16 -0
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/runtime/frontmatter-sync.js +100 -0
- package/dist/runtime/frontmatter-sync.js.map +1 -0
- package/dist/runtime/runtime.js +10 -1
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/write-guard.js +3 -3
- package/dist/runtime/write-guard.js.map +1 -1
- package/package.json +2 -2
- package/dist/agent/workflows/tasklifecycle-short/short-phase-1-brief.md +0 -110
- package/dist/agent/workflows/tasklifecycle-short/short-phase-3-closure.md +0 -104
|
@@ -210,3 +210,31 @@ Se habilita un canal formal de delegación para cambiar el agente activo cuando
|
|
|
210
210
|
### 10.4 Límites
|
|
211
211
|
- Cada tarea **DEBE** ser ejecutada por el agente determinado tras la delegación aprobada.
|
|
212
212
|
- Ningún agente puede delegar para evadir restricciones de constitución o gates.
|
|
213
|
+
|
|
214
|
+
---
|
|
215
|
+
|
|
216
|
+
## 11. AUTO-DELEGACIÓN CONTROLADA POR ARCHITECT (PERMANENT)
|
|
217
|
+
|
|
218
|
+
Se habilita la **auto-delegación** exclusivamente para el **architect-agent** cuando el agente activo no corresponda a la tarea.
|
|
219
|
+
|
|
220
|
+
### 11.1 Condición de activación
|
|
221
|
+
- Si el agente activo **no es** el architect-agent y la tarea **no corresponde** a su rol/constitución, el sistema **DEBE** transferir el control al architect-agent.
|
|
222
|
+
- El architect-agent evalúa y decide el agente responsable final.
|
|
223
|
+
|
|
224
|
+
### 11.2 Aprobación del usuario (OBLIGATORIA)
|
|
225
|
+
- La auto-delegación **requiere confirmación explícita** del usuario.
|
|
226
|
+
- Debe usarse `notify_user` con:
|
|
227
|
+
- `BlockedOnUser: true`
|
|
228
|
+
- `PathsToReview` del artefacto afectado
|
|
229
|
+
- Mensaje claro de cambio de rol
|
|
230
|
+
- Sin aprobación (SI) no hay transferencia efectiva.
|
|
231
|
+
|
|
232
|
+
### 11.3 Trazabilidad y registro
|
|
233
|
+
- Cada auto-delegación **DEBE** registrarse en `task.md` bajo `task.delegation.history`.
|
|
234
|
+
- Registro mínimo:
|
|
235
|
+
- `from`, `to`, `approved_by`, `approved_at`, `reason`.
|
|
236
|
+
- Debe existir log en runtime (si aplica).
|
|
237
|
+
|
|
238
|
+
### 11.4 Límites
|
|
239
|
+
- El cambio automático **no** evita gates ni restricciones de constitución.
|
|
240
|
+
- El usuario **no** necesita invocar manualmente al nuevo agente una vez aprobado.
|
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
---
|
|
2
|
-
artifact:
|
|
3
|
-
phase: short-phase-1-
|
|
2
|
+
artifact: analisis
|
|
3
|
+
phase: short-phase-1-analisis
|
|
4
4
|
owner: architect-agent
|
|
5
|
+
implementation_owner: architect-agent
|
|
5
6
|
status: draft | approved
|
|
6
7
|
related_task: <taskId>-<taskTitle>
|
|
7
8
|
---
|
|
8
9
|
|
|
9
|
-
#
|
|
10
|
+
# Analisis — <taskId>-<taskTitle>
|
|
10
11
|
|
|
11
12
|
## Identificacion del agente (OBLIGATORIA)
|
|
12
13
|
Primera linea del documento:
|
|
13
14
|
`<icono> **<nombre-agente>**: <mensaje>`
|
|
14
15
|
|
|
15
|
-
## 1.
|
|
16
|
+
## 1. Identificacion de la tarea
|
|
16
17
|
|
|
17
|
-
**
|
|
18
|
+
**Titulo**: <titulo de la tarea>
|
|
18
19
|
**Objetivo**: <objetivo principal>
|
|
19
20
|
**Estrategia**: Short
|
|
21
|
+
**Owner de implementacion**: <agent-id> (por defecto: architect-agent)
|
|
20
22
|
|
|
21
23
|
---
|
|
22
24
|
|
|
@@ -36,54 +38,42 @@ Primera linea del documento:
|
|
|
36
38
|
|
|
37
39
|
Derivados de las respuestas anteriores:
|
|
38
40
|
|
|
39
|
-
1. **Alcance**:
|
|
40
|
-
2. **Entradas/Datos**:
|
|
41
|
-
3. **Salidas esperadas**:
|
|
42
|
-
4. **Restricciones**:
|
|
43
|
-
5. **Criterio de Done**:
|
|
41
|
+
1. **Alcance**:
|
|
42
|
+
2. **Entradas/Datos**:
|
|
43
|
+
3. **Salidas esperadas**:
|
|
44
|
+
4. **Restricciones**:
|
|
45
|
+
5. **Criterio de Done**:
|
|
44
46
|
|
|
45
47
|
---
|
|
46
48
|
|
|
47
|
-
## 4.
|
|
49
|
+
## 4. Analisis simplificado
|
|
48
50
|
|
|
49
51
|
### Estado actual (As-Is)
|
|
50
52
|
- Estructura afectada:
|
|
51
53
|
- Limitaciones conocidas:
|
|
52
54
|
|
|
53
|
-
###
|
|
55
|
+
### Evaluacion de complejidad
|
|
54
56
|
|
|
55
57
|
| Indicador | Estado | Comentario |
|
|
56
58
|
|-----------|--------|------------|
|
|
57
|
-
| Afecta
|
|
58
|
-
| Requiere
|
|
59
|
-
| Cambios breaking | ☐
|
|
60
|
-
| Tests E2E complejos | ☐
|
|
59
|
+
| Afecta mas de 3 paquetes | ☐ Si ☐ No | |
|
|
60
|
+
| Requiere investigacion APIs | ☐ Si ☐ No | |
|
|
61
|
+
| Cambios breaking | ☐ Si ☐ No | |
|
|
62
|
+
| Tests E2E complejos | ☐ Si ☐ No | |
|
|
61
63
|
|
|
62
64
|
**Resultado de complejidad**: ☐ BAJA (continuar Short) ☐ ALTA (recomendar abortar a Long)
|
|
63
65
|
|
|
64
66
|
---
|
|
65
67
|
|
|
66
|
-
## 5.
|
|
68
|
+
## 5. Evaluacion de agentes
|
|
67
69
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
- Descripción:
|
|
72
|
-
- Entregables:
|
|
73
|
-
|
|
74
|
-
2. **Paso 2**
|
|
75
|
-
- Descripción:
|
|
76
|
-
- Entregables:
|
|
77
|
-
|
|
78
|
-
(Añadir más pasos según necesidad)
|
|
79
|
-
|
|
80
|
-
### Verificación prevista
|
|
81
|
-
- Tipo de tests:
|
|
82
|
-
- Criterios de éxito:
|
|
70
|
+
| Agente | Desempeno (1-10) | Propuestas de mejora |
|
|
71
|
+
|--------|------------------|----------------------|
|
|
72
|
+
| | | |
|
|
83
73
|
|
|
84
74
|
---
|
|
85
75
|
|
|
86
|
-
## 6.
|
|
76
|
+
## 6. Aprobacion del desarrollador (OBLIGATORIA)
|
|
87
77
|
|
|
88
78
|
```yaml
|
|
89
79
|
approval:
|
|
@@ -93,4 +83,4 @@ approval:
|
|
|
93
83
|
comments: <opcional>
|
|
94
84
|
```
|
|
95
85
|
|
|
96
|
-
> Sin
|
|
86
|
+
> Sin aprobacion, esta fase NO puede avanzar a Plan.
|
|
@@ -33,8 +33,9 @@ templates:
|
|
|
33
33
|
supplemental_report: .agent/templates/supplemental-report.md
|
|
34
34
|
|
|
35
35
|
# Templates del ciclo Short
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
analisis: .agent/templates/analisis.md
|
|
37
|
+
plan: .agent/templates/plan.md
|
|
38
|
+
qa_results: .agent/templates/qa-results.md
|
|
38
39
|
```
|
|
39
40
|
|
|
40
41
|
## Reglas
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
artifact: plan
|
|
3
|
+
phase: short-phase-2-plan
|
|
4
|
+
owner: architect-agent
|
|
5
|
+
status: draft | approved
|
|
6
|
+
related_task: <taskId>-<taskTitle>
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Plan — <taskId>-<taskTitle>
|
|
10
|
+
|
|
11
|
+
## Identificacion del agente (OBLIGATORIA)
|
|
12
|
+
Primera linea del documento:
|
|
13
|
+
`<icono> **<nombre-agente>**: <mensaje>`
|
|
14
|
+
|
|
15
|
+
## 1. Resumen del plan
|
|
16
|
+
- Objetivo resumido
|
|
17
|
+
- Resultado esperado
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 2. Pasos de implementacion
|
|
22
|
+
|
|
23
|
+
### Paso 1
|
|
24
|
+
- Descripcion:
|
|
25
|
+
- Entregables:
|
|
26
|
+
|
|
27
|
+
### Paso 2
|
|
28
|
+
- Descripcion:
|
|
29
|
+
- Entregables:
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## 3. Verificacion prevista
|
|
34
|
+
- Tests / validaciones:
|
|
35
|
+
- Criterios de exito:
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 4. Aprobacion del desarrollador (OBLIGATORIA)
|
|
40
|
+
|
|
41
|
+
```yaml
|
|
42
|
+
approval:
|
|
43
|
+
developer:
|
|
44
|
+
decision: SI | NO
|
|
45
|
+
date: <ISO-8601>
|
|
46
|
+
comments: <opcional>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
> Sin aprobacion, esta fase NO puede avanzar a Implementacion.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
artifact:
|
|
3
|
-
phase: short-phase-
|
|
2
|
+
artifact: qa-results
|
|
3
|
+
phase: short-phase-4-qa-results
|
|
4
4
|
owner: architect-agent
|
|
5
5
|
status: draft | approved
|
|
6
6
|
related_task: <taskId>-<taskTitle>
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
#
|
|
9
|
+
# QA Results — <taskId>-<taskTitle>
|
|
10
10
|
|
|
11
11
|
## Identificacion del agente (OBLIGATORIA)
|
|
12
12
|
Primera linea del documento:
|
|
@@ -14,30 +14,30 @@ Primera linea del documento:
|
|
|
14
14
|
|
|
15
15
|
## 1. Resumen de la tarea
|
|
16
16
|
|
|
17
|
-
**
|
|
17
|
+
**Titulo**: <titulo>
|
|
18
18
|
**Estrategia**: Short
|
|
19
19
|
**Estado final**: ☐ Completada ☐ Abortada
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
-
## 2.
|
|
23
|
+
## 2. Verificacion
|
|
24
24
|
|
|
25
25
|
### Tests ejecutados
|
|
26
26
|
|
|
27
|
-
| Tipo | Comando/
|
|
27
|
+
| Tipo | Comando/Metodo | Resultado |
|
|
28
28
|
|------|----------------|-----------|
|
|
29
29
|
| Unit | | ☐ Pass ☐ Fail ☐ N/A |
|
|
30
30
|
| Integration | | ☐ Pass ☐ Fail ☐ N/A |
|
|
31
31
|
| E2E | | ☐ Pass ☐ Fail ☐ N/A |
|
|
32
32
|
|
|
33
|
-
###
|
|
34
|
-
<Explicar por
|
|
33
|
+
### Justificacion (si no hay tests)
|
|
34
|
+
<Explicar por que no aplican tests>
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
38
|
## 3. Estado de Acceptance Criteria
|
|
39
39
|
|
|
40
|
-
| AC |
|
|
40
|
+
| AC | Descripcion | Estado |
|
|
41
41
|
|----|-------------|--------|
|
|
42
42
|
| 1 | | ☐ ✅ ☐ ❌ |
|
|
43
43
|
| 2 | | ☐ ✅ ☐ ❌ |
|
|
@@ -51,19 +51,13 @@ Primera linea del documento:
|
|
|
51
51
|
|
|
52
52
|
### Ficheros modificados/creados
|
|
53
53
|
|
|
54
|
-
| Fichero |
|
|
54
|
+
| Fichero | Accion | Descripcion |
|
|
55
55
|
|---------|--------|-------------|
|
|
56
56
|
| | Created/Modified/Deleted | |
|
|
57
57
|
|
|
58
|
-
### Commits (si aplica)
|
|
59
|
-
|
|
60
|
-
```
|
|
61
|
-
<tipo>(<scope>): <descripción>
|
|
62
|
-
```
|
|
63
|
-
|
|
64
58
|
---
|
|
65
59
|
|
|
66
|
-
## 5.
|
|
60
|
+
## 5. Aceptacion final del desarrollador (OBLIGATORIA)
|
|
67
61
|
|
|
68
62
|
```yaml
|
|
69
63
|
approval:
|
|
@@ -73,23 +67,4 @@ approval:
|
|
|
73
67
|
comments: <opcional>
|
|
74
68
|
```
|
|
75
69
|
|
|
76
|
-
> Sin
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## 6. Puntuaciones de agentes (OBLIGATORIO)
|
|
81
|
-
|
|
82
|
-
| Agente | Puntuacion (1-10) | Notas |
|
|
83
|
-
|--------|-------------------|-------|
|
|
84
|
-
| | | |
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## 7. Push final (si aplica)
|
|
89
|
-
|
|
90
|
-
```yaml
|
|
91
|
-
push:
|
|
92
|
-
approved: SI | NO
|
|
93
|
-
branch: <rama destino>
|
|
94
|
-
date: <ISO-8601>
|
|
95
|
-
```
|
|
70
|
+
> Sin aceptacion, la tarea NO puede marcarse como completada.
|
|
@@ -96,15 +96,19 @@ task:
|
|
|
96
96
|
completed: false
|
|
97
97
|
validated_by: null
|
|
98
98
|
validated_at: null
|
|
99
|
-
short-phase-1-
|
|
99
|
+
short-phase-1-analisis:
|
|
100
100
|
completed: false
|
|
101
101
|
validated_by: null
|
|
102
102
|
validated_at: null
|
|
103
|
-
short-phase-2-
|
|
103
|
+
short-phase-2-plan:
|
|
104
104
|
completed: false
|
|
105
105
|
validated_by: null
|
|
106
106
|
validated_at: null
|
|
107
|
-
short-phase-3-
|
|
107
|
+
short-phase-3-implementation:
|
|
108
|
+
completed: false
|
|
109
|
+
validated_by: null
|
|
110
|
+
validated_at: null
|
|
111
|
+
short-phase-4-qa-results:
|
|
108
112
|
completed: false
|
|
109
113
|
validated_by: null
|
|
110
114
|
validated_at: null
|
|
@@ -70,6 +70,9 @@ blocking: true
|
|
|
70
70
|
- Identificar todas las tareas de implementación y sus agentes responsables.
|
|
71
71
|
- Crear (si no existe) el directorio:
|
|
72
72
|
- `.agent/artifacts/<taskId>-<taskTitle>/agent-tasks/`
|
|
73
|
+
- Si una tarea no especifica agente responsable:
|
|
74
|
+
- Asignar por defecto `architect-agent`.
|
|
75
|
+
- Registrar el ajuste en `task.delegation.history` (reason: `missing_agent_in_plan`).
|
|
73
76
|
|
|
74
77
|
### 3. Bucle de delegación (SÍNCRONO)
|
|
75
78
|
|
|
@@ -81,6 +84,7 @@ Para cada tarea `N` en el plan:
|
|
|
81
84
|
- Completar:
|
|
82
85
|
- **Input**: Objetivo, Alcance, Dependencias (definidos por el arquitecto)
|
|
83
86
|
- **Output**: Entregables, Evidencia requerida (definidos por el arquitecto)
|
|
87
|
+
- Asegurar que el frontmatter `owner` refleje el agente responsable definido en `plan.md` (o el default).
|
|
84
88
|
|
|
85
89
|
#### 3.2 Asignar al agente
|
|
86
90
|
- El `architect-agent` **DEBE** activar al agente correspondiente:
|
|
@@ -33,14 +33,17 @@ aliases:
|
|
|
33
33
|
id: init
|
|
34
34
|
workflow: .agent/workflows/init.md
|
|
35
35
|
short_phase_1:
|
|
36
|
-
id: short-phase-1-
|
|
37
|
-
workflow: .agent/workflows/tasklifecycle-short/short-phase-1-
|
|
36
|
+
id: short-phase-1-analisis
|
|
37
|
+
workflow: .agent/workflows/tasklifecycle-short/short-phase-1-analisis.md
|
|
38
38
|
short_phase_2:
|
|
39
|
-
id: short-phase-2-
|
|
40
|
-
workflow: .agent/workflows/tasklifecycle-short/short-phase-2-
|
|
39
|
+
id: short-phase-2-plan
|
|
40
|
+
workflow: .agent/workflows/tasklifecycle-short/short-phase-2-plan.md
|
|
41
41
|
short_phase_3:
|
|
42
|
-
id: short-phase-3-
|
|
43
|
-
workflow: .agent/workflows/tasklifecycle-short/short-phase-3-
|
|
42
|
+
id: short-phase-3-implementation
|
|
43
|
+
workflow: .agent/workflows/tasklifecycle-short/short-phase-3-implementation.md
|
|
44
|
+
short_phase_4:
|
|
45
|
+
id: short-phase-4-qa-results
|
|
46
|
+
workflow: .agent/workflows/tasklifecycle-short/short-phase-4-qa-results.md
|
|
44
47
|
```
|
|
45
48
|
|
|
46
49
|
## Input (REQUIRED)
|
|
@@ -49,19 +52,20 @@ aliases:
|
|
|
49
52
|
|
|
50
53
|
## Output (REQUIRED)
|
|
51
54
|
- Task candidate con `task.strategy: short`.
|
|
52
|
-
- Artefactos de cada fase: `
|
|
55
|
+
- Artefactos de cada fase: `analisis.md`, `plan.md`, `implementation.md`, `qa-results.md`.
|
|
53
56
|
|
|
54
57
|
## Objetivo (ONLY)
|
|
55
|
-
- Ejecutar un ciclo simplificado de
|
|
58
|
+
- Ejecutar un ciclo simplificado de 4 fases para tareas de baja complejidad.
|
|
56
59
|
- Mantener la integridad de los gates arquitectónicos.
|
|
57
|
-
- Si se detecta complejidad alta en
|
|
60
|
+
- Si se detecta complejidad alta en Analisis, ofrecer abortar a Long.
|
|
58
61
|
|
|
59
62
|
## Orden oficial de ejecución de fases
|
|
60
63
|
Las fases del ciclo Short **DEBEN ejecutarse estrictamente en orden**:
|
|
61
64
|
|
|
62
|
-
1. `aliases.tasklifecycle-short.phases.short_phase_1.id` (
|
|
63
|
-
2. `aliases.tasklifecycle-short.phases.short_phase_2.id` (
|
|
64
|
-
3. `aliases.tasklifecycle-short.phases.short_phase_3.id` (
|
|
65
|
+
1. `aliases.tasklifecycle-short.phases.short_phase_1.id` (Analisis)
|
|
66
|
+
2. `aliases.tasklifecycle-short.phases.short_phase_2.id` (Plan)
|
|
67
|
+
3. `aliases.tasklifecycle-short.phases.short_phase_3.id` (Implementation)
|
|
68
|
+
4. `aliases.tasklifecycle-short.phases.short_phase_4.id` (QA + Resultados)
|
|
65
69
|
|
|
66
70
|
## Gate (REQUIRED)
|
|
67
71
|
Requisitos (todos obligatorios):
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: workflow.tasklifecycle-short.short-phase-1-analisis
|
|
3
|
+
description: Fase 1 del ciclo Short. Ejecuta analisis y define acceptance criteria basados en 5 preguntas obligatorias.
|
|
4
|
+
owner: architect-agent
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
severity: PERMANENT
|
|
7
|
+
trigger:
|
|
8
|
+
commands: ["short-phase-1", "analisis", "analysis"]
|
|
9
|
+
blocking: true
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# WORKFLOW: tasklifecycle-short.short-phase-1-analisis
|
|
13
|
+
|
|
14
|
+
## Input (REQUIRED)
|
|
15
|
+
- Existe task candidate con `task.strategy: short`.
|
|
16
|
+
- El desarrollador ha proporcionado titulo y objetivo.
|
|
17
|
+
|
|
18
|
+
> [!IMPORTANT]
|
|
19
|
+
> **Constitucion activa (OBLIGATORIO)**:
|
|
20
|
+
> - Cargar `constitution.clean_code` antes de iniciar
|
|
21
|
+
> - Cargar `constitution.agents_behavior` (seccion 7: Gates, seccion 8: Constitucion)
|
|
22
|
+
> - **Activar `skill.runtime-governance`** (Para validacion de gate y trazabilidad por el Architect)
|
|
23
|
+
|
|
24
|
+
## Output (REQUIRED)
|
|
25
|
+
- Artefacto: `.agent/artifacts/<taskId>-<taskTitle>/analisis.md`
|
|
26
|
+
- Artefacto: `.agent/artifacts/<taskId>-<taskTitle>/acceptance.md`
|
|
27
|
+
- Task actualizado con fase actual = `short-phase-1-analisis`
|
|
28
|
+
|
|
29
|
+
## Objetivo (ONLY)
|
|
30
|
+
- Ejecutar las **5 preguntas obligatorias** para definir acceptance criteria.
|
|
31
|
+
- Documentar el analisis de la tarea (estado actual y riesgos basicos).
|
|
32
|
+
- Si se detecta complejidad alta, **ofrecer abortar** y reiniciar en modo Long.
|
|
33
|
+
|
|
34
|
+
> Esta fase **NO implementa codigo**.
|
|
35
|
+
> Esta fase **REQUIERE aprobacion explicita del desarrollador (SI/NO)**.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Pasos obligatorios
|
|
40
|
+
|
|
41
|
+
0. Activar `architect-agent` y usar prefijo obligatorio en cada mensaje.
|
|
42
|
+
|
|
43
|
+
### 1. Verificar inputs
|
|
44
|
+
- Existe task candidate.
|
|
45
|
+
- `task.strategy == "short"`.
|
|
46
|
+
- Si falla -> **FAIL**.
|
|
47
|
+
|
|
48
|
+
### 2. Ejecutar 5 preguntas obligatorias
|
|
49
|
+
El architect-agent **DEBE** formular 5 preguntas especificas basadas en la tarea:
|
|
50
|
+
- Las preguntas varian segun la tarea concreta.
|
|
51
|
+
- Sin respuestas completas, la fase NO avanza.
|
|
52
|
+
|
|
53
|
+
### 2.1 Definir owner de implementacion (OBLIGATORIO)
|
|
54
|
+
- El desarrollador **DEBE** indicar el agente responsable de la implementacion.
|
|
55
|
+
- Registrar el valor en `analisis.md` como `implementation_owner`.
|
|
56
|
+
- Si no se define, usar `architect-agent` por defecto y dejar trazado en el analisis.
|
|
57
|
+
|
|
58
|
+
### 3. Analisis de complejidad
|
|
59
|
+
Evaluar indicadores de complejidad:
|
|
60
|
+
- Afecta mas de 3 paquetes/modulos? -> Alta
|
|
61
|
+
- Requiere investigacion de APIs externas? -> Alta
|
|
62
|
+
- Introduce cambios breaking? -> Alta
|
|
63
|
+
- Necesita tests E2E complejos? -> Alta
|
|
64
|
+
|
|
65
|
+
**Si complejidad es ALTA**:
|
|
66
|
+
- Notificar al desarrollador.
|
|
67
|
+
- Ofrecer opcion de abortar y crear nueva tarea en modo Long.
|
|
68
|
+
- Si decide abortar -> terminar fase con estado "aborted".
|
|
69
|
+
|
|
70
|
+
### 4. Crear artefactos (analisis.md y acceptance.md)
|
|
71
|
+
- Usar templates `templates.analisis` y `templates.acceptance`.
|
|
72
|
+
- En `acceptance.md` incluir:
|
|
73
|
+
- Acceptance criteria derivados de las 5 preguntas.
|
|
74
|
+
- En `analisis.md` incluir:
|
|
75
|
+
- Estado actual (As-Is) simplificado.
|
|
76
|
+
- Riesgos basicos.
|
|
77
|
+
- Evaluacion de complejidad.
|
|
78
|
+
- `implementation_owner` explicito (agente responsable de implementacion).
|
|
79
|
+
- **Evaluacion de Agentes**: Desempeno y propuestas de mejora.
|
|
80
|
+
|
|
81
|
+
### 5. Solicitar aprobacion del desarrollador (por consola)
|
|
82
|
+
```yaml
|
|
83
|
+
approval:
|
|
84
|
+
developer:
|
|
85
|
+
decision: SI | NO
|
|
86
|
+
date: <ISO-8601>
|
|
87
|
+
comments: <opcional>
|
|
88
|
+
```
|
|
89
|
+
- Si `decision != SI` -> **FAIL**.
|
|
90
|
+
|
|
91
|
+
### 6. PASS
|
|
92
|
+
- Actualizar task.md:
|
|
93
|
+
- Marcar fase como completada.
|
|
94
|
+
- Establecer `task.lifecycle.phases.short-phase-1-analisis.validated_at = <ISO-8601>`.
|
|
95
|
+
- Actualizar `task.phase.updated_at = <ISO-8601>`.
|
|
96
|
+
- Avanzar a `short-phase-2-plan`.
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Gate (REQUIRED)
|
|
101
|
+
Requisitos (todos obligatorios):
|
|
102
|
+
1. Existen `analisis.md` y `acceptance.md` con templates correctos.
|
|
103
|
+
2. El `analisis.md` inicia con el prefijo del `architect-agent`.
|
|
104
|
+
3. Las 5 preguntas estan respondidas.
|
|
105
|
+
4. La evaluacion de complejidad esta documentada.
|
|
106
|
+
5. Existe aprobacion explicita del desarrollador.
|
|
107
|
+
6. task.md refleja fase completada.
|
|
108
|
+
7. task.md refleja timestamp y estado:
|
|
109
|
+
- `task.lifecycle.phases.short-phase-1-analisis.completed == true`
|
|
110
|
+
- `task.lifecycle.phases.short-phase-1-analisis.validated_at` no nulo
|
|
111
|
+
- `task.phase.updated_at` no nulo
|
|
112
|
+
8. **Gobernanza verificada**: El historial de logs muestra la secuencia de herramientas MCP definida en `skill.runtime-governance`.
|
|
113
|
+
|
|
114
|
+
Si Gate FAIL:
|
|
115
|
+
- Indicar que requisito falta.
|
|
116
|
+
- Bloquear hasta resolver.
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: workflow.tasklifecycle-short.short-phase-2-plan
|
|
3
|
+
description: Fase 2 del ciclo Short. Define el plan de implementacion basado en el analisis aprobado.
|
|
4
|
+
owner: architect-agent
|
|
5
|
+
version: 1.0.0
|
|
6
|
+
severity: PERMANENT
|
|
7
|
+
trigger:
|
|
8
|
+
commands: ["short-phase-2", "plan", "planning"]
|
|
9
|
+
blocking: true
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# WORKFLOW: tasklifecycle-short.short-phase-2-plan
|
|
13
|
+
|
|
14
|
+
## Input (REQUIRED)
|
|
15
|
+
- Existe analisis aprobado: `.agent/artifacts/<taskId>-<taskTitle>/analisis.md`
|
|
16
|
+
- task.md refleja `task.phase.current == "short-phase-2-plan"`
|
|
17
|
+
|
|
18
|
+
> [!IMPORTANT]
|
|
19
|
+
> **Constitucion activa (OBLIGATORIO)**:
|
|
20
|
+
> - Cargar `constitution.clean_code` antes de iniciar
|
|
21
|
+
> - Cargar `constitution.agents_behavior` (seccion 7: Gates, seccion 8: Constitucion)
|
|
22
|
+
|
|
23
|
+
## Output (REQUIRED)
|
|
24
|
+
- Plan de implementacion: `.agent/artifacts/<taskId>-<taskTitle>/plan.md`
|
|
25
|
+
- Task actualizado.
|
|
26
|
+
|
|
27
|
+
## Objetivo (ONLY)
|
|
28
|
+
- Traducir el analisis a un plan ejecutable.
|
|
29
|
+
- Definir pasos, entregables y verificacion.
|
|
30
|
+
|
|
31
|
+
> Esta fase **NO implementa codigo**.
|
|
32
|
+
> Esta fase **REQUIERE aprobacion explicita del desarrollador (SI/NO)**.
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Pasos obligatorios
|
|
37
|
+
|
|
38
|
+
0. Activar `architect-agent` y usar prefijo obligatorio en cada mensaje.
|
|
39
|
+
|
|
40
|
+
### 1. Verificar inputs
|
|
41
|
+
- Existe `analisis.md` aprobado.
|
|
42
|
+
- `task.phase.current == "short-phase-2-plan"`.
|
|
43
|
+
- Si falla -> **FAIL**.
|
|
44
|
+
|
|
45
|
+
### 2. Crear artefacto plan.md
|
|
46
|
+
- Usar template `templates.plan`.
|
|
47
|
+
- Incluir pasos ordenados, entregables y estrategia de verificacion.
|
|
48
|
+
|
|
49
|
+
### 3. Solicitar aprobacion del desarrollador (por consola)
|
|
50
|
+
```yaml
|
|
51
|
+
approval:
|
|
52
|
+
developer:
|
|
53
|
+
decision: SI | NO
|
|
54
|
+
date: <ISO-8601>
|
|
55
|
+
comments: <opcional>
|
|
56
|
+
```
|
|
57
|
+
- Si `decision != SI` -> **FAIL**.
|
|
58
|
+
|
|
59
|
+
### 4. PASS
|
|
60
|
+
- Actualizar task.md:
|
|
61
|
+
- Marcar fase como completada.
|
|
62
|
+
- Establecer `task.lifecycle.phases.short-phase-2-plan.validated_at = <ISO-8601>`.
|
|
63
|
+
- Actualizar `task.phase.updated_at = <ISO-8601>`.
|
|
64
|
+
- Avanzar a `short-phase-3-implementation`.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Gate (REQUIRED)
|
|
69
|
+
Requisitos (todos obligatorios):
|
|
70
|
+
1. Existe `plan.md` con template correcto.
|
|
71
|
+
2. El `plan.md` inicia con el prefijo del `architect-agent`.
|
|
72
|
+
3. Existe aprobacion explicita del desarrollador.
|
|
73
|
+
4. task.md refleja fase completada.
|
|
74
|
+
5. task.md refleja timestamp y estado:
|
|
75
|
+
- `task.lifecycle.phases.short-phase-2-plan.completed == true`
|
|
76
|
+
- `task.lifecycle.phases.short-phase-2-plan.validated_at` no nulo
|
|
77
|
+
- `task.phase.updated_at` no nulo
|
|
78
|
+
|
|
79
|
+
Si Gate FAIL:
|
|
80
|
+
- Indicar que requisito falta.
|
|
81
|
+
- Bloquear hasta resolver.
|