Sistema NEXUS v3.4 migrado con: Estructura principal: - core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles) - core/catalog: Catalogo de funcionalidades reutilizables - shared/knowledge-base: Base de conocimiento compartida - devtools/scripts: Herramientas de desarrollo - control-plane/registries: Control de servicios y CI/CD - orchestration/: Configuracion de orquestacion de agentes Proyectos incluidos (11): - gamilit (submodule -> GitHub) - trading-platform (OrbiquanTIA) - erp-suite con 5 verticales: - erp-core, construccion, vidrio-templado - mecanicas-diesel, retail, clinicas - betting-analytics - inmobiliaria-analytics - platform_marketing_content - pos-micro, erp-basico Configuracion: - .gitignore completo para Node.js/Python/Docker - gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git) - Sistema de puertos estandarizado (3005-3199) Generated with NEXUS v3.4 Migration System EPIC-010: Configuracion Git y Repositorios
519 lines
12 KiB
Markdown
519 lines
12 KiB
Markdown
# {HU-ID} - {Título de la Historia de Usuario}
|
|
|
|
**Proyecto:** {nombre-proyecto}
|
|
**Módulo:** {nombre-módulo}
|
|
**Epic:** {EPIC-ID} - {nombre-epic}
|
|
**Feature:** {FEATURE-ID} - {nombre-feature} *(si aplica)*
|
|
|
|
---
|
|
|
|
## METADATOS
|
|
|
|
| Campo | Valor |
|
|
|-------|-------|
|
|
| **ID** | {HU-XXX} |
|
|
| **Tipo** | feature / enhancement / fix / refactor / spike / doc-only / tech-debt / security / performance |
|
|
| **Origen** | plan-original / descubrimiento / incidencia / mejora-continua / dependencia |
|
|
| **Prioridad** | P0 / P1 / P2 / P3 |
|
|
| **Fecha Creación** | YYYY-MM-DD |
|
|
| **Fecha Inicio** | YYYY-MM-DD |
|
|
| **Fecha Fin** | YYYY-MM-DD |
|
|
| **Agente Principal** | {nombre-agente} |
|
|
| **Estado** | pendiente / en-progreso / validacion / completada / bloqueada |
|
|
|
|
---
|
|
|
|
## C - CONTEXTO
|
|
|
|
### Vinculación al Proyecto
|
|
|
|
```yaml
|
|
proyecto: "{nombre}"
|
|
ruta: "projects/{proyecto}/"
|
|
modulo: "{módulo afectado}"
|
|
epic:
|
|
id: "{EPIC-ID}"
|
|
nombre: "{nombre del epic}"
|
|
ruta: "docs/{fase}/{epic}/"
|
|
feature: # si aplica
|
|
id: "{FEATURE-ID}"
|
|
nombre: "{nombre del feature}"
|
|
```
|
|
|
|
### Documentos Vinculados
|
|
|
|
```yaml
|
|
docs_requerimientos:
|
|
- "docs/{fase}/{epic}/requerimientos/{archivo}.md"
|
|
|
|
docs_especificaciones:
|
|
- "docs/{fase}/{epic}/especificaciones/{archivo}.md"
|
|
|
|
docs_diseño:
|
|
- "docs/{fase}/{epic}/diseño/{archivo}.md"
|
|
|
|
docs_tecnicos:
|
|
- "docs/95-guias-desarrollo/{relevante}.md"
|
|
|
|
adrs_relacionados:
|
|
- "docs/97-adr/ADR-{NNN}.md"
|
|
```
|
|
|
|
### SIMCO Cargados
|
|
|
|
```yaml
|
|
simco_aplicados:
|
|
- "SIMCO-TAREA.md" # Siempre
|
|
- "SIMCO-{operacion}.md" # Según tipo
|
|
- "SIMCO-{dominio}.md" # Según capa
|
|
```
|
|
|
|
### Contexto Cargado (CCA)
|
|
|
|
- [ ] Principios leídos (DOC-PRIMERO, ANTI-DUP, VALIDACION, CAPVED)
|
|
- [ ] Perfil de agente cargado
|
|
- [ ] CONTEXTO-PROYECTO.md leído
|
|
- [ ] Inventarios consultados
|
|
- [ ] SIMCO correspondientes cargados
|
|
|
|
---
|
|
|
|
## A - ANÁLISIS
|
|
|
|
### Descripción de Negocio
|
|
|
|
**Como** {rol de usuario}
|
|
**Quiero** {acción deseada}
|
|
**Para** {beneficio/valor}
|
|
|
|
### Comportamiento Esperado
|
|
|
|
```yaml
|
|
casos_de_uso:
|
|
caso_feliz:
|
|
- "Usuario hace X"
|
|
- "Sistema responde Y"
|
|
- "Usuario ve Z"
|
|
|
|
casos_de_error:
|
|
- "Si X falla, mostrar mensaje Y"
|
|
- "Si usuario no tiene permiso, redirigir a Z"
|
|
|
|
casos_limite:
|
|
- "Si lista está vacía, mostrar estado vacío"
|
|
- "Si hay más de N registros, paginar"
|
|
```
|
|
|
|
### Restricciones
|
|
|
|
```yaml
|
|
seguridad:
|
|
autenticacion_requerida: true/false
|
|
roles_permitidos: []
|
|
rls_aplicable: true/false
|
|
datos_sensibles: []
|
|
|
|
performance:
|
|
volumen_esperado: "{registros}"
|
|
tiempo_respuesta_max: "{ms}"
|
|
requiere_paginacion: true/false
|
|
requiere_cache: true/false
|
|
|
|
ux:
|
|
wireframe_disponible: true/false
|
|
estados_carga_definidos: true/false
|
|
manejo_errores_definido: true/false
|
|
responsive_requerido: true/false
|
|
```
|
|
|
|
### Objetos Impactados
|
|
|
|
#### Base de Datos
|
|
|
|
| Tipo | Nombre | Acción | Schema |
|
|
|------|--------|--------|--------|
|
|
| tabla | {nombre} | crear / modificar | {schema} |
|
|
| vista | {nombre} | crear / modificar | {schema} |
|
|
| función | {nombre} | crear / modificar | {schema} |
|
|
| índice | {nombre} | crear | {schema} |
|
|
| trigger | {nombre} | crear / modificar | {schema} |
|
|
| rls_policy | {nombre} | crear / modificar | {schema} |
|
|
|
|
#### Backend
|
|
|
|
| Tipo | Nombre | Acción | Módulo |
|
|
|------|--------|--------|--------|
|
|
| entity | {nombre} | crear / modificar | {módulo} |
|
|
| service | {nombre} | crear / modificar | {módulo} |
|
|
| controller | {nombre} | crear / modificar | {módulo} |
|
|
| dto | {nombre} | crear / modificar | {módulo} |
|
|
| guard | {nombre} | crear / modificar | {módulo} |
|
|
|
|
#### Frontend
|
|
|
|
| Tipo | Nombre | Acción | App/Módulo |
|
|
|------|--------|--------|------------|
|
|
| página | {nombre} | crear / modificar | {app} |
|
|
| componente | {nombre} | crear / modificar | {módulo} |
|
|
| hook | {nombre} | crear / modificar | {módulo} |
|
|
| store | {nombre} | crear / modificar | {módulo} |
|
|
| type | {nombre} | crear / modificar | {módulo} |
|
|
|
|
### Dependencias
|
|
|
|
#### Bloquea a (Esta HU bloquea)
|
|
|
|
| HU ID | Descripción | Razón |
|
|
|-------|-------------|-------|
|
|
| {HU-XXX} | {descripción} | {por qué bloquea} |
|
|
|
|
#### Bloqueada por (Esta HU depende de)
|
|
|
|
| HU ID | Descripción | Estado | Razón |
|
|
|-------|-------------|--------|-------|
|
|
| {HU-YYY} | {descripción} | completada / en-progreso / pendiente | {por qué depende} |
|
|
|
|
#### Relacionadas (Sin bloqueo directo)
|
|
|
|
| HU ID | Descripción | Relación |
|
|
|-------|-------------|----------|
|
|
| {HU-ZZZ} | {descripción} | mismo módulo / misma feature |
|
|
|
|
### Riesgos Identificados
|
|
|
|
| ID | Descripción | Probabilidad | Impacto | Mitigación |
|
|
|----|-------------|--------------|---------|------------|
|
|
| R1 | {descripción} | alta/media/baja | alto/medio/bajo | {estrategia} |
|
|
| R2 | {descripción} | alta/media/baja | alto/medio/bajo | {estrategia} |
|
|
|
|
### Checklist Análisis
|
|
|
|
- [ ] Comportamiento de negocio documentado
|
|
- [ ] Restricciones identificadas
|
|
- [ ] Objetos impactados mapeados (todas las capas)
|
|
- [ ] Dependencias identificadas
|
|
- [ ] Riesgos documentados
|
|
|
|
---
|
|
|
|
## P - PLANEACIÓN
|
|
|
|
### Subtareas
|
|
|
|
#### Documentación (Siempre Primero)
|
|
|
|
| ID | Descripción | Artefactos | Agente |
|
|
|----|-------------|------------|--------|
|
|
| ST-001 | {descripción} | {archivos} | {agente} |
|
|
|
|
#### Database
|
|
|
|
| ID | Descripción | Artefactos | Agente | Depende de |
|
|
|----|-------------|------------|--------|------------|
|
|
| ST-002 | {descripción} | {archivos} | Database-Agent | ST-001 |
|
|
|
|
#### Backend
|
|
|
|
| ID | Descripción | Artefactos | Agente | Depende de |
|
|
|----|-------------|------------|--------|------------|
|
|
| ST-003 | {descripción} | {archivos} | Backend-Agent | ST-002 |
|
|
| ST-004 | {descripción} | {archivos} | Backend-Agent | ST-003 |
|
|
|
|
#### Frontend
|
|
|
|
| ID | Descripción | Artefactos | Agente | Depende de |
|
|
|----|-------------|------------|--------|------------|
|
|
| ST-005 | {descripción} | {archivos} | Frontend-Agent | ST-004 |
|
|
|
|
#### Validación (Siempre al Final)
|
|
|
|
| ID | Descripción | Agente | Depende de |
|
|
|----|-------------|--------|------------|
|
|
| ST-006 | Validación final build/lint/tests | Directo | ST-005 |
|
|
|
|
### Orden de Ejecución
|
|
|
|
```
|
|
ST-001 (Docs)
|
|
↓
|
|
ST-002 (Database)
|
|
↓
|
|
ST-003 (Backend - Entity)
|
|
↓
|
|
ST-004 (Backend - Service/Controller)
|
|
↓
|
|
ST-005 (Frontend)
|
|
↓
|
|
ST-006 (Validación)
|
|
```
|
|
|
|
### Criterios de Aceptación
|
|
|
|
#### Funcionales
|
|
|
|
- [ ] {criterio 1}
|
|
- [ ] {criterio 2}
|
|
- [ ] {criterio 3}
|
|
|
|
#### Técnicos
|
|
|
|
- [ ] Build pasa sin errores
|
|
- [ ] Lint pasa sin errores
|
|
- [ ] Tests unitarios cubren >80%
|
|
- [ ] API documentada en Swagger
|
|
|
|
#### Documentación
|
|
|
|
- [ ] Inventarios actualizados
|
|
- [ ] Trazas registradas
|
|
- [ ] ADR creado (si aplica)
|
|
|
|
### Plan de Pruebas
|
|
|
|
```yaml
|
|
unitarias:
|
|
- "{test 1}"
|
|
- "{test 2}"
|
|
|
|
integracion:
|
|
- "{test 1}"
|
|
- "{test 2}"
|
|
|
|
e2e:
|
|
- "{test 1}"
|
|
|
|
regresion:
|
|
- "{verificación 1}"
|
|
```
|
|
|
|
### Checklist Planeación
|
|
|
|
- [ ] Subtareas desglosadas por dominio
|
|
- [ ] Orden de ejecución definido
|
|
- [ ] Criterios de aceptación establecidos
|
|
- [ ] Plan de pruebas definido
|
|
- [ ] Agentes asignados
|
|
|
|
---
|
|
|
|
## V - VALIDACIÓN (⚠️ NO DELEGAR)
|
|
|
|
### Verificación Cobertura A → P
|
|
|
|
| Objeto (de Análisis) | Subtarea (en Plan) | Estado |
|
|
|---------------------|-------------------|--------|
|
|
| {objeto 1} | ST-XXX | ✓ cubierto / ⚠️ gap |
|
|
| {objeto 2} | ST-YYY | ✓ cubierto / ⚠️ gap |
|
|
|
|
### Gaps Detectados
|
|
|
|
| Gap | Acción |
|
|
|-----|--------|
|
|
| {objeto sin subtarea} | Agregar ST-XXX |
|
|
|
|
### Verificación Dependencias
|
|
|
|
| Dependencia | Estado | Acción |
|
|
|-------------|--------|--------|
|
|
| HU-XXX | completada | ✓ lista |
|
|
| HU-YYY | pendiente | ⚠️ esperar / crear subtarea previa |
|
|
|
|
### Scope Creep Detectado
|
|
|
|
| Item | Parte de HU Original | Acción | HU Derivada |
|
|
|------|---------------------|--------|-------------|
|
|
| {item detectado} | No | Crear HU | DERIVED-{HU-ID}-001 |
|
|
|
|
### Gate de Validación
|
|
|
|
- [ ] Todo objeto de Análisis tiene subtarea en Plan
|
|
- [ ] Todas las dependencias resueltas o planificadas
|
|
- [ ] Criterios de aceptación cubren riesgos
|
|
- [ ] Scope creep registrado
|
|
- [ ] HUs derivadas creadas (si aplica)
|
|
|
|
**RESULTADO:** ✓ APROBADO PARA EJECUCIÓN / ⚠️ REQUIERE AJUSTES
|
|
|
|
---
|
|
|
|
## E - EJECUCIÓN
|
|
|
|
### Progreso de Subtareas
|
|
|
|
| ID | Descripción | Estado | Inicio | Fin | Notas |
|
|
|----|-------------|--------|--------|-----|-------|
|
|
| ST-001 | {desc} | ✓/⏳/⏸ | YYYY-MM-DD | YYYY-MM-DD | {notas} |
|
|
| ST-002 | {desc} | ✓/⏳/⏸ | YYYY-MM-DD | YYYY-MM-DD | {notas} |
|
|
| ST-003 | {desc} | ✓/⏳/⏸ | YYYY-MM-DD | YYYY-MM-DD | {notas} |
|
|
|
|
### Archivos Creados
|
|
|
|
```
|
|
{ruta/archivo1.ext}
|
|
{ruta/archivo2.ext}
|
|
```
|
|
|
|
### Archivos Modificados
|
|
|
|
```
|
|
{ruta/archivo1.ext}
|
|
{ruta/archivo2.ext}
|
|
```
|
|
|
|
### Validaciones Ejecutadas
|
|
|
|
```bash
|
|
# Database
|
|
./create-database.sh # ✓ OK / ✗ Error
|
|
|
|
# Backend
|
|
npm run build # ✓ OK / ✗ Error
|
|
npm run lint # ✓ OK / ✗ Error
|
|
npm test # ✓ OK / ✗ Error (N passed, M failed)
|
|
|
|
# Frontend
|
|
npm run build # ✓ OK / ✗ Error
|
|
npm run lint # ✓ OK / ✗ Error
|
|
npm run typecheck # ✓ OK / ✗ Error
|
|
```
|
|
|
|
### Desviaciones del Plan
|
|
|
|
| Subtarea | Desviación | Razón | Impacto |
|
|
|----------|-----------|-------|---------|
|
|
| ST-XXX | {descripción} | {razón} | {impacto} |
|
|
|
|
### Checklist Ejecución
|
|
|
|
- [ ] docs/ actualizado PRIMERO
|
|
- [ ] Subtareas ejecutadas en orden
|
|
- [ ] Build pasa en todas las capas
|
|
- [ ] Lint pasa en todas las capas
|
|
- [ ] Tests pasan (si aplica)
|
|
- [ ] Desviaciones documentadas
|
|
|
|
---
|
|
|
|
## D - DOCUMENTACIÓN
|
|
|
|
### Actualizaciones Realizadas
|
|
|
|
#### Diagramas/Modelos
|
|
|
|
| Tipo | Ubicación | Cambio |
|
|
|------|-----------|--------|
|
|
| ERD | docs/{epic}/diseño/ | {cambio} |
|
|
| Arquitectura | docs/00-vision/ | {cambio} |
|
|
|
|
#### Especificaciones Técnicas
|
|
|
|
| Tipo | Ubicación | Cambio |
|
|
|------|-----------|--------|
|
|
| API | docs/{epic}/specs/ | {cambio} |
|
|
| BD | docs/{epic}/specs/ | {cambio} |
|
|
|
|
#### ADRs Creados
|
|
|
|
| ADR | Título | Decisión |
|
|
|-----|--------|----------|
|
|
| ADR-{NNN} | {título} | {decisión tomada} |
|
|
|
|
#### Inventarios Actualizados
|
|
|
|
- [ ] DATABASE_INVENTORY.yml
|
|
- Agregado: {descripción}
|
|
- [ ] BACKEND_INVENTORY.yml
|
|
- Agregado: {descripción}
|
|
- [ ] FRONTEND_INVENTORY.yml
|
|
- Agregado: {descripción}
|
|
|
|
#### Trazas Registradas
|
|
|
|
- [ ] TRAZA-TAREAS-DATABASE.md
|
|
- [ ] TRAZA-TAREAS-BACKEND.md
|
|
- [ ] TRAZA-TAREAS-FRONTEND.md
|
|
|
|
### HUs Derivadas
|
|
|
|
| ID | Descripción | Origen | Fase Detectada | Prioridad |
|
|
|----|-------------|--------|----------------|-----------|
|
|
| DERIVED-{HU-ID}-001 | {descripción} | {HU-ID} | V / E | P0/P1/P2/P3 |
|
|
| DERIVED-{HU-ID}-002 | {descripción} | {HU-ID} | V / E | P0/P1/P2/P3 |
|
|
|
|
### Lecciones Aprendidas
|
|
|
|
#### Qué Funcionó Bien
|
|
|
|
- {lección 1}
|
|
- {lección 2}
|
|
|
|
#### Qué Se Puede Mejorar
|
|
|
|
- {área de mejora 1}
|
|
- {área de mejora 2}
|
|
|
|
#### Para Futuras HUs Similares
|
|
|
|
- {recomendación 1}
|
|
- {recomendación 2}
|
|
|
|
### Checklist Documentación
|
|
|
|
- [ ] Diagramas/modelos actualizados
|
|
- [ ] Specs técnicas actualizadas
|
|
- [ ] ADRs creados (si aplica)
|
|
- [ ] Inventarios actualizados
|
|
- [ ] Trazas registradas
|
|
- [ ] HUs derivadas vinculadas
|
|
- [ ] Lecciones aprendidas registradas
|
|
|
|
---
|
|
|
|
## RESUMEN FINAL
|
|
|
|
### Métricas
|
|
|
|
| Métrica | Valor |
|
|
|---------|-------|
|
|
| Subtareas totales | N |
|
|
| Subtareas completadas | N/N |
|
|
| Archivos creados | N |
|
|
| Archivos modificados | N |
|
|
| HUs derivadas | N |
|
|
| Tiempo total | Xh |
|
|
|
|
### Estado Final
|
|
|
|
```
|
|
[ ] ✓ COMPLETADA - Todos los gates pasaron
|
|
[ ] ⚠️ COMPLETADA CON OBSERVACIONES - Requiere seguimiento
|
|
[ ] ✗ BLOQUEADA - Pendiente de {descripción}
|
|
```
|
|
|
|
### Firma de Cierre
|
|
|
|
| Campo | Valor |
|
|
|-------|-------|
|
|
| **Completada por** | {agente} |
|
|
| **Fecha cierre** | YYYY-MM-DD HH:MM |
|
|
| **Revisada por** | {agente/humano} |
|
|
| **Aprobación** | ✓ Aprobada / ⏳ Pendiente |
|
|
|
|
---
|
|
|
|
## HISTORIAL DE CAMBIOS
|
|
|
|
| Fecha | Fase | Cambio | Autor |
|
|
|-------|------|--------|-------|
|
|
| YYYY-MM-DD | C | Creación inicial | {agente} |
|
|
| YYYY-MM-DD | A | Análisis completado | {agente} |
|
|
| YYYY-MM-DD | P | Plan definido | {agente} |
|
|
| YYYY-MM-DD | V | Validación aprobada | {agente} |
|
|
| YYYY-MM-DD | E | Ejecución completada | {agente} |
|
|
| YYYY-MM-DD | D | Documentación cerrada | {agente} |
|
|
|
|
---
|
|
|
|
**Template:** TEMPLATE-TAREA-CAPVED.md v1.0.0
|
|
**Sistema:** SIMCO + CAPVED
|