--- id: PROMPT-SA-18 agent_id: SA-18 model: claude-sonnet-4.5 type: General background fase: FASE-5 scope: Traceability and inventory completeness validation mode: read-only created: 2026-02-06 --- # PROMPT-SA-18: Validación Trazabilidad e Inventarios ## Contexto Eres un agente validador de gobernanza documental. Tu tarea es verificar la **completitud y coherencia de inventarios, trazas y documentos de gobernanza** del proyecto. **Proyecto:** trading-platform **Objetivo:** Validar que todos los sistemas de trazabilidad estén sincronizados y completos **FASE:** FASE-5 (Validation - read only) **Archivos a validar:** 1. **Inventarios (5):** MASTER, DATABASE, BACKEND, FRONTEND, API 2. **Trazas (4):** TRAZA-TAREAS-DATABASE, TRAZA-TAREAS-BACKEND, TRAZA-TAREAS-FRONTEND, TRAZA-EJECUCION-GENERAL 3. **Gobernanza (3):** DEPENDENCY-GRAPH, PROJECT-STATUS, CONTEXT-MAP 4. **Índices:** _INDEX.yml de tareas, _MAP.md ## Instrucciones ### PASO 1: Validar Inventarios (5 archivos) **Archivos a leer:** 1. `orchestration/inventarios/MASTER_INVENTORY.yml` 2. `orchestration/inventarios/DATABASE_INVENTORY.yml` 3. `orchestration/inventarios/BACKEND_INVENTORY.yml` 4. `orchestration/inventarios/FRONTEND_INVENTORY.yml` 5. `orchestration/inventarios/API_INVENTORY.yml` (si existe) **Para cada inventario:** 1. **Verificar campos obligatorios:** - `version`: ¿Presente? - `updated`: ¿Fecha reciente (últimos 7 días)? - `project`: ¿Correcto (trading-platform)? - Métricas principales: ¿Todas presentes? 2. **Validar coherencia entre inventarios:** - MASTER debe ser agregado de DATABASE + BACKEND + FRONTEND - Conteos deben coincidir: - MASTER.tablas = DATABASE.tablas - MASTER.services = BACKEND.services - MASTER.components = FRONTEND.components 3. **Comparar con código real (validaciones previas):** - Usar resultados de SA-15 (DDL), SA-16 (Backend), SA-17 (Frontend) - ¿Los conteos en inventarios coinciden con la realidad? 4. **Generar tabla de coherencia:** ``` | Métrica | MASTER | DATABASE | BACKEND | FRONTEND | Código Real | Estado | |---------|--------|----------|---------|----------|-------------|--------| | Tablas DDL | 101 | 101 | N/A | N/A | 101 | ✅ MATCH | | Entities | 85 | N/A | 85 | N/A | 85 | ✅ MATCH | | Services | 15 | N/A | 15 | N/A | 15 | ✅ MATCH | | Components | 50 | N/A | N/A | 50 | 48 | ❌ GAP (-2) | ``` ### PASO 2: Validar Trazas de Ejecución (4 archivos) **Archivos a leer:** 1. `orchestration/trazas/TRAZA-TAREAS-DATABASE.yml` 2. `orchestration/trazas/TRAZA-TAREAS-BACKEND.yml` 3. `orchestration/trazas/TRAZA-TAREAS-FRONTEND.yml` 4. `orchestration/trazas/TRAZA-EJECUCION-GENERAL.yml` **Para cada traza:** 1. **Verificar estructura:** - `version`: ¿Presente? - `updated`: ¿Actualizada? - `entries`: ¿Array de objetos? 2. **Validar entries:** - ¿IDs consecutivos? (TRAZA-DB-001, TRAZA-DB-002, etc.) - ¿Fechas en orden cronológico? - ¿Campos obligatorios presentes? (id, fecha, tarea, descripcion) - ¿Checksums presentes cuando aplica? 3. **Cross-reference con tareas reales:** - Leer `orchestration/tareas/` - listar todas las tareas completadas - Para cada tarea completada: - ¿Está registrada en la traza correspondiente? - Si modificó DATABASE → debe estar en TRAZA-TAREAS-DATABASE - Si modificó BACKEND → debe estar en TRAZA-TAREAS-BACKEND - Si modificó FRONTEND → debe estar en TRAZA-TAREAS-FRONTEND - Todas las tareas → deben estar en TRAZA-EJECUCION-GENERAL 4. **Identificar gaps:** - Tareas completadas NO registradas en trazas - Entries en trazas de tareas inexistentes ### PASO 3: Validar Documentos de Gobernanza (3 archivos) **Archivos a leer:** 1. `orchestration/DEPENDENCY-GRAPH.yml` 2. `orchestration/PROJECT-STATUS.yml` 3. `orchestration/CONTEXT-MAP.yml` **Para cada documento:** 1. **DEPENDENCY-GRAPH.yml:** - ¿Tiene sección `modules` con los 18 módulos? - ¿Tiene sección `services` con los 15 servicios? - ¿Dependencias están documentadas? - ¿Hay ciclos documentados? - Comparar con análisis real de SA-16 2. **PROJECT-STATUS.yml:** - ¿Campo `status` actualizado? - ¿Métricas actuales coinciden con inventarios? - ¿Sección `gaps` documenta issues conocidos? - ¿Sección `next_steps` está actualizada? 3. **CONTEXT-MAP.yml:** - ¿Documenta los 11 OQIs? - ¿Mapeo de contextos acotados correcto? - ¿Relaciones entre OQIs documentadas? ### PASO 4: Validar Índices de Documentación **Archivos a leer:** 1. `orchestration/tareas/_INDEX.yml` 2. `orchestration/_MAP.md` **Para cada índice:** 1. **_INDEX.yml (tareas):** - Listar todas las carpetas en `orchestration/tareas/` - ¿Todas las tareas están indexadas en _INDEX.yml? - ¿Hay entries de tareas inexistentes? - ¿Metadatos completos? (fecha, estado, prioridad, etc.) 2. **_MAP.md:** - ¿Documenta estructura de orchestration/? - ¿Secciones principales presentes? (Inventarios, Trazas, Tareas, Referencias) - ¿Links a archivos clave funcionan? - ¿Última actualización reciente? ### PASO 5: Validar Flujo Tarea → Traza → Inventario **Flujo esperado:** 1. Tarea se ejecuta → modifica código 2. Tarea se completa → registro en TRAZA-XXX 3. Tarea actualiza métricas → actualiza INVENTARIO-XXX 4. Inventarios se consolidan → actualiza MASTER_INVENTORY **Validación:** 1. **Seleccionar tarea reciente completada:** - Ejemplo: TASK-2026-02-05-ANALISIS-VALIDACION-MODELADO-BD 2. **Verificar flujo:** - ✅ ¿Tarea tiene METADATA.yml con status=completed? - ✅ ¿Tarea tiene INFORME-FINAL.md? - ✅ ¿Tarea registrada en TRAZA-XXX correspondiente? - ✅ ¿Métricas de tarea reflejadas en INVENTARIO-XXX? - ✅ ¿MASTER_INVENTORY actualizado con fecha post-tarea? - ✅ ¿Tarea indexada en _INDEX.yml? 3. **Repetir para 3-5 tareas recientes** 4. **Identificar gaps en el flujo** ### PASO 6: Generar Reporte de Trazabilidad **Estructura del reporte:** ```markdown # Reporte de Trazabilidad e Inventarios ## Resumen Ejecutivo - **Inventarios evaluados:** 5/5 - **Inventarios sincronizados:** X/5 (XX%) - **Trazas evaluadas:** 4/4 - **Trazas completas:** X/4 (XX%) - **Gobernanza evaluada:** 3/3 - **Gobernanza actualizada:** X/3 (XX%) - **Score global de trazabilidad:** XX% ## PARTE 1: Validación de Inventarios ### 1.1 Estado de Inventarios | Inventario | Versión | Última Actualización | Campos Obligatorios | Estado | |------------|---------|---------------------|---------------------|--------| | MASTER_INVENTORY | 3.1.0 | 2026-02-05 | ✅ Completos | ✅ VIGENTE | | DATABASE_INVENTORY | 3.0.0 | 2026-02-05 | ✅ Completos | ✅ VIGENTE | | BACKEND_INVENTORY | 2.1.0 | 2026-02-04 | ⚠️ Falta checksum | ⚠️ PARCIAL | | FRONTEND_INVENTORY | 1.5.0 | 2026-02-03 | ✅ Completos | ⚠️ DESACTUALIZADO | | API_INVENTORY | N/A | N/A | N/A | ❌ NO EXISTE | ### 1.2 Coherencia entre Inventarios | Métrica | MASTER | DATABASE | BACKEND | FRONTEND | Código Real | Estado | |---------|--------|----------|---------|----------|-------------|--------| | Schemas DDL | 11 | 11 | N/A | N/A | 11 | ✅ MATCH | | Tablas DDL | 101 | 101 | N/A | N/A | 101 | ✅ MATCH | | Entities | 85 | N/A | 85 | N/A | 85 | ✅ MATCH | | Services | 15 | N/A | 15 | N/A | 15 | ✅ MATCH | | Controllers | 10 | N/A | 10 | N/A | 10 | ✅ MATCH | | Components | 50 | N/A | N/A | 50 | 48 | ❌ GAP (-2) | | Pages | 95 | N/A | N/A | 95 | 92 | ❌ GAP (-3) | | API Clients | 16 | N/A | N/A | 16 | 16 | ✅ MATCH | **Coherencia inventarios:** 6/8 métricas MATCH (75%) ### 1.3 Gaps Identificados **P0-CRITICO:** - API_INVENTORY.yml NO existe (sin seguimiento de endpoints) **P1-ALTO:** - FRONTEND_INVENTORY desactualizado (2 días atrás) - Components: inventario dice 50, código real 48 (-2) - Pages: inventario dice 95, código real 92 (-3) **P2-MEDIO:** - BACKEND_INVENTORY falta checksums en algunos servicios --- ## PARTE 2: Validación de Trazas ### 2.1 Estado de Trazas | Traza | Versión | Entries | Última Entry | Estado | |-------|---------|---------|--------------|--------| | TRAZA-TAREAS-DATABASE | 1.3.0 | 6 | 2026-02-05 | ✅ ACTUALIZADA | | TRAZA-TAREAS-BACKEND | 2.2.0 | 9 | 2026-02-05 | ✅ ACTUALIZADA | | TRAZA-TAREAS-FRONTEND | 1.2.0 | 4 | 2026-02-05 | ✅ ACTUALIZADA | | TRAZA-EJECUCION-GENERAL | 3.5.0 | 21 | 2026-02-06 | ✅ ACTUALIZADA | ### 2.2 Completitud de Trazas **Tareas completadas en orchestration/tareas/:** 25 tareas **Cross-reference Tareas → Trazas:** | Tarea | DATABASE Traza | BACKEND Traza | FRONTEND Traza | GENERAL Traza | Estado | |-------|---------------|---------------|----------------|---------------|--------| | TASK-001-INITIAL | ✅ | ✅ | ✅ | ✅ | COMPLETO | | TASK-002-SETUP | ✅ | ✅ | ✅ | ✅ | COMPLETO | | TASK-2026-02-05 | ✅ | ✅ | ✅ | ✅ | COMPLETO | | TASK-2026-02-06 | N/A | N/A | N/A | ✅ | COMPLETO (solo docs) | | TASK-XXX | ❌ | ❌ | N/A | ✅ | PARCIAL (faltan trazas específicas) | | [listar 25 tareas] | | | | | | **Tareas con trazas completas:** 22/25 (88%) **Tareas con gaps en trazas:** 3/25 (12%) ### 2.3 Validación de IDs Consecutivos **TRAZA-TAREAS-DATABASE:** - IDs: TRAZA-DB-001, TRAZA-DB-002, ..., TRAZA-DB-006 - ✅ Consecutivos, sin saltos **TRAZA-TAREAS-BACKEND:** - IDs: TRAZA-BE-001, TRAZA-BE-002, ..., TRAZA-BE-009 - ✅ Consecutivos, sin saltos [Repetir para las 4 trazas] ### 2.4 Gaps en Trazas **Tareas NO registradas:** 1. TASK-XXX-YYY: Modificó backend pero NO está en TRAZA-TAREAS-BACKEND 2. TASK-AAA-BBB: Modificó frontend pero NO está en TRAZA-TAREAS-FRONTEND **Entries de tareas inexistentes:** - Ninguna detectada ✅ --- ## PARTE 3: Validación Gobernanza ### 3.1 DEPENDENCY-GRAPH.yml **Estado:** ⚠️ PARCIAL - **Versión:** 2.0.0 (actualizada recientemente) - **Módulos documentados:** 18/18 ✅ - **Servicios documentados:** 15/15 ✅ - **Dependencias documentadas:** ✅ Sí - **Ciclos documentados:** ✅ 1 ciclo (trading ↔ portfolio) **Coherencia con código real (SA-16):** - Módulos: ✅ Coincide - Servicios: ✅ Coincide - Dependencias: ⚠️ Falta documentar 2 dependencias nuevas detectadas ### 3.2 PROJECT-STATUS.yml **Estado:** ⚠️ DESACTUALIZADO - **Versión:** 1.2.0 - **Última actualización:** 2026-02-04 (2 días atrás) - **Métricas coherentes con inventarios:** ⚠️ Parcial (algunas desactualizadas) - **Sección `gaps`:** ✅ Presente (documenta 37 gaps conocidos) - **Sección `next_steps`:** ✅ Presente **Métricas a actualizar:** - tablas: 98 → 101 (inventario dice 101) - components: 52 → 48 (código real 48) ### 3.3 CONTEXT-MAP.yml **Estado:** ✅ ACTUALIZADO - **Versión:** 1.1.0 - **OQIs documentados:** 11/11 ✅ - **Bounded contexts:** ✅ Definidos - **Relaciones OQI:** ✅ Documentadas **Coherencia con OQIs reales:** ✅ 100% --- ## PARTE 4: Validación de Índices ### 4.1 orchestration/tareas/_INDEX.yml **Estado:** ⚠️ INCOMPLETO - **Tareas en filesystem:** 25 - **Tareas indexadas:** 22 - **Tareas sin indexar:** 3 **Tareas faltantes en índice:** 1. TASK-2026-01-XX-XXXXX 2. TASK-2026-02-01-YYYYY 3. TASK-2026-02-06-ANALISIS-INTEGRAL-DOCUMENTACION (esta misma tarea) ### 4.2 orchestration/_MAP.md **Estado:** ⚠️ PARCIAL - **Última actualización:** 2026-01-30 (7 días atrás) - **Secciones principales:** ✅ Presentes - **Links funcionan:** ⚠️ 3 links rotos detectados - **Documentos de análisis clasificados:** ⚠️ Falta sección (pendiente SA-12) --- ## PARTE 5: Validación Flujo Tarea → Traza → Inventario ### Caso 1: TASK-2026-02-05-ANALISIS-VALIDACION-MODELADO-BD **Flujo:** 1. ✅ METADATA.yml: status=completed 2. ✅ INFORME-FINAL.md: Presente (13 deliverables) 3. ✅ TRAZA-TAREAS-DATABASE: Entry TRAZA-DB-006 4. ✅ TRAZA-TAREAS-BACKEND: Entry TRAZA-BE-008, TRAZA-BE-009 5. ✅ DATABASE_INVENTORY: v3.0.0 (2026-02-05) - Post-tarea 6. ✅ MASTER_INVENTORY: v3.1.0 (2026-02-05) - Consolidado 7. ✅ _INDEX.yml: Tarea indexada **Estado:** ✅ FLUJO COMPLETO ### Caso 2: TASK-002-INITIAL-SETUP **Flujo:** 1. ✅ METADATA.yml: status=completed 2. ✅ INFORME-FINAL.md: Presente 3. ✅ TRAZA-EJECUCION-GENERAL: Entry TRAZA-GEN-002 4. ⚠️ Deliverables: Algunos NO integrados en ubicaciones finales 5. ❌ _INDEX.yml: Metadata incompleto (falta fecha_fin) **Estado:** ⚠️ FLUJO PARCIAL [Repetir para 3-5 tareas] ### Resumen de Flujos Validados | Tarea | Metadata | Informe | Traza | Inventario | Índice | Estado | |-------|----------|---------|-------|------------|--------|--------| | TASK-2026-02-05 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ COMPLETO | | TASK-002 | ✅ | ✅ | ✅ | ⚠️ | ⚠️ | ⚠️ PARCIAL | | [otros] | | | | | | | **Flujos completos:** 3/5 (60%) --- ## PARTE 6: Métricas Consolidadas ### Score de Trazabilidad por Componente | Componente | Score | Estado | |------------|-------|--------| | Inventarios (sincronización) | 75% | ⚠️ MEDIO | | Trazas (completitud) | 88% | ✅ ALTO | | Gobernanza (actualización) | 67% | ⚠️ MEDIO | | Índices (cobertura) | 70% | ⚠️ MEDIO | | Flujo Tarea→Traza→Inv | 60% | ⚠️ MEDIO | **SCORE GLOBAL DE TRAZABILIDAD:** 72% (MEDIO) --- ## PARTE 7: Gaps Consolidados ### P0-CRITICO 1. **API_INVENTORY.yml NO existe** - Sin seguimiento de endpoints 2. **3 tareas sin indexar** en _INDEX.yml 3. **FRONTEND_INVENTORY desactualizado** (components/pages gaps) ### P1-ALTO 1. **PROJECT-STATUS.yml desactualizado** (métricas desfasadas) 2. **_MAP.md con 3 links rotos** 3. **DEPENDENCY-GRAPH.yml falta 2 dependencias** nuevas 4. **3 tareas con trazas incompletas** ### P2-MEDIO 1. **BACKEND_INVENTORY falta checksums** en algunos servicios 2. **TASK-002 deliverables no integrados** completamente 3. **_MAP.md sin sección de análisis** (pendiente SA-12) --- ## PARTE 8: Recomendaciones ### Acciones Inmediatas (P0) 1. Crear `API_INVENTORY.yml` usando datos de SA-17 2. Actualizar `_INDEX.yml` con 3 tareas faltantes 3. Actualizar `FRONTEND_INVENTORY.yml` (corregir components: 48, pages: 92) ### Acciones Importantes (P1) 1. Actualizar `PROJECT-STATUS.yml` con métricas actuales de inventarios 2. Fix 3 links rotos en `_MAP.md` 3. Actualizar `DEPENDENCY-GRAPH.yml` con dependencias faltantes 4. Completar entries de trazas para 3 tareas ### Mejoras (P2) 1. Agregar checksums faltantes en `BACKEND_INVENTORY.yml` 2. Integrar deliverables de TASK-002 3. Ejecutar SA-12 para clasificar análisis en `_MAP.md` --- ## PARTE 9: Plan de Remediación **Sprint corto (2-3 horas):** 1. SA-XX: Crear API_INVENTORY.yml 2. SA-YY: Update FRONTEND_INVENTORY.yml 3. SA-ZZ: Update _INDEX.yml + PROJECT-STATUS.yml + _MAP.md (fixes) **Validación final:** - Re-ejecutar SA-18 después de remediación - Target: Score global 85%+ ``` ## Restricciones - **MODO READ-ONLY:** NO modificar ningún archivo - Leer TODOS los archivos de inventarios, trazas, gobernanza - Cross-reference exhaustivo entre documentos - Generar métricas porcentuales precisas - Reporte markdown muy estructurado y completo ## Output Esperado Un reporte markdown EXHAUSTIVO con: - 9 partes (Inventarios, Trazas, Gobernanza, Índices, Flujos, Métricas, Gaps, Recomendaciones, Plan) - Tablas comparativas detalladas - Score global de trazabilidad - Gaps clasificados por prioridad - Plan de remediación accionable - ~500-800 líneas de reporte **Archivo de salida:** Documento temporal o reporte directo al orquestador. **Compromiso:** Generar auditoría COMPLETA de trazabilidad e inventarios con máximo detalle.