michangarrito/orchestration/_archive/analisis/F5-F6-DEPENDENCIAS-REFINAMIENTO-2026-01-10.md
Adrian Flores Cortes 2fb9f3f6b5
Some checks are pending
CI/CD Pipeline / Backend CI (push) Waiting to run
CI/CD Pipeline / Frontend CI (push) Waiting to run
CI/CD Pipeline / WhatsApp Service CI (push) Waiting to run
CI/CD Pipeline / Mobile CI (push) Waiting to run
CI/CD Pipeline / Docker Build (./apps/backend, ./apps/backend/Dockerfile, backend) (push) Blocked by required conditions
CI/CD Pipeline / Docker Build (./apps/frontend, ./apps/frontend/Dockerfile, frontend) (push) Blocked by required conditions
CI/CD Pipeline / Docker Build (./apps/whatsapp-service, ./apps/whatsapp-service/Dockerfile, whatsapp-service) (push) Blocked by required conditions
CI/CD Pipeline / Deploy to Production (push) Blocked by required conditions
[ESTANDAR-ORCHESTRATION] refactor: Consolidate to standard structure
- Move 7 non-standard folders to _archive/
- Archive 3 extra root files
- Update _MAP.md with standardized structure

Standard: SIMCO-ESTANDAR-ORCHESTRATION v1.0.0
Level: CONSUMER (L2)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 14:38:04 -06:00

400 lines
15 KiB
Markdown

# FASE 5-6: ANÁLISIS DE DEPENDENCIAS Y REFINAMIENTO DEL PLAN
## Documentación MiChangarrito
**Versión:** 1.0.0
**Fecha:** 2026-01-10
**Ejecutado por:** Agente Orquestador (PERFIL-ORQUESTADOR)
**Sistema:** SIMCO v3.8.0 + CAPVED
---
## PARTE 1: FASE 5 - ANÁLISIS DE DEPENDENCIAS
### 1.1 Matriz de Dependencias Entre Archivos
#### Dependencias de Inventarios
```
DATABASE_INVENTORY.yml
├── DEPENDE DE:
│ └── database/schemas/*.sql (17 archivos)
└── IMPACTA A:
├── MASTER_INVENTORY.yml
├── CONTEXT-MAP.yml
├── PROJECT-STATUS.md
└── docs/02-especificaciones/ARQUITECTURA-DATABASE.md
BACKEND_INVENTORY.yml
├── DEPENDE DE:
│ └── apps/backend/src/modules/ (18 carpetas)
└── IMPACTA A:
├── MASTER_INVENTORY.yml
├── CONTEXT-MAP.yml
├── PROJECT-STATUS.md
└── docs/02-especificaciones/ESPECIFICACION-COMPONENTES.md
FRONTEND_INVENTORY.yml
├── DEPENDE DE:
│ └── apps/frontend/src/pages/ (12+ archivos)
└── IMPACTA A:
├── MASTER_INVENTORY.yml
├── CONTEXT-MAP.yml
└── docs/02-especificaciones/ESPECIFICACION-COMPONENTES.md
MASTER_INVENTORY.yml
├── DEPENDE DE:
│ ├── DATABASE_INVENTORY.yml
│ ├── BACKEND_INVENTORY.yml
│ └── FRONTEND_INVENTORY.yml
└── IMPACTA A:
├── PROJECT-STATUS.md
├── PROXIMA-ACCION.md
└── docs/README.md
```
#### Dependencias de Documentación
```
docs/_MAP.md
├── DEPENDE DE:
│ ├── 00-vision-general/_MAP.md
│ ├── 01-epicas/_MAP.md
│ ├── 02-especificaciones/_MAP.md
│ ├── 02-integraciones/_MAP.md
│ ├── 90-transversal/_MAP.md (FALTA)
│ └── 97-adr/_MAP.md
└── IMPACTA A:
└── docs/README.md
01-epicas/_MAP.md
├── DEPENDE DE:
│ └── MCH-001 a MCH-028 (28 archivos)
└── IMPACTA A:
└── docs/_MAP.md
02-integraciones/_MAP.md
├── DEPENDE DE:
│ └── INT-001 a INT-009 (actualmente 4, serán 9)
└── IMPACTA A:
└── docs/_MAP.md
```
### 1.2 Grafo de Dependencias
```
┌─────────────────────────────────────────────────────────────┐
│ NIVEL 0: CÓDIGO FUENTE │
├─────────────────────────────────────────────────────────────┤
│ database/schemas/ │ apps/backend/ │ apps/frontend/ │
│ (17 DDL) │ (18 modules) │ (12+ pages) │
└──────────┬──────────┴───────┬─────────┴────────┬────────────┘
│ │ │
▼ ▼ ▼
┌──────────────────┬──────────────────┬──────────────────────┐
│ DATABASE_INV.yml │ BACKEND_INV.yml │ FRONTEND_INV.yml │
│ (T-A1) │ (T-A2) │ (T-A3) │
└────────┬─────────┴────────┬─────────┴──────────┬───────────┘
│ │ │
└──────────────────┼────────────────────┘
┌──────────────────────┐
│ MASTER_INVENTORY │
│ (T-A4) │
└──────────┬───────────┘
┌──────────────────┼──────────────────┐
▼ ▼ ▼
┌────────────────┐ ┌────────────────┐ ┌────────────────┐
│ PROJECT-STATUS │ │ CONTEXT-MAP │ │ PROXIMA-ACCION │
└────────────────┘ └────────────────┘ └────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ DOCUMENTACIÓN │
├─────────────────────────────────────────────────────────────┤
│ Épicas (T-B) │ Especificaciones (T-C) │ Otros (T-D) │
│ 28 archivos │ 6 archivos │ 11 archivos │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ INTEGRACIONES NUEVAS (T-E) │
│ 5 archivos │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ CONSOLIDACIÓN Y LIMPIEZA (T-F) │
└─────────────────────────────────────────────────────────────┘
```
### 1.3 Identificación de Riesgos por Dependencias
| Dependencia | Riesgo | Probabilidad | Impacto | Mitigación |
|-------------|--------|--------------|---------|------------|
| Inventarios → MASTER | Inconsistencia si no se sincroniza | Media | Alto | Ejecutar T-A4 después de T-A1,A2,A3 |
| Épicas → _MAP.md | Referencias rotas | Baja | Medio | Actualizar _MAP después de frontmatter |
| Integraciones → _MAP.md | _MAP desactualizado | Media | Bajo | Actualizar al crear INT-005-009 |
| Código → Inventarios | Datos incorrectos | Baja | Alto | Verificar contra código antes de actualizar |
### 1.4 Orden de Ejecución Óptimo
```
SECUENCIA RECOMENDADA:
PASO 1: Archivos sin dependencias
├── T-D4: Crear 90-transversal/_MAP.md
└── T-A5: Actualizar DEPENDENCIAS.yml
PASO 2: Inventarios de capa
├── T-A1: DATABASE_INVENTORY.yml
├── T-A2: BACKEND_INVENTORY.yml (puede paralelo con T-A1)
└── T-A3: FRONTEND_INVENTORY.yml (puede paralelo con T-A1,A2)
PASO 3: Inventario maestro
└── T-A4: MASTER_INVENTORY.yml (DESPUÉS de T-A1,A2,A3)
PASO 4: Documentación con frontmatter (pueden ser paralelos)
├── T-B1: Épicas MCH-001 a MCH-010
├── T-B2: Épicas MCH-011 a MCH-020
├── T-B3: Épicas MCH-021 a MCH-028
├── T-C1-C6: Especificaciones
├── T-D1: ADRs
├── T-D2: Integraciones existentes
└── T-D3: Transversal
PASO 5: Integraciones nuevas
├── T-E1: INT-005-clip.md
├── T-E2: INT-006-codi-banxico.md
├── T-E3: INT-007-firebase-fcm.md
├── T-E4: INT-008-google-vision.md
└── T-E5: INT-009-whisper.md
PASO 6: Consolidación final
├── T-F1: Archivar redundantes
├── T-F2: Crear historico/
└── T-F3: Verificar integridad
```
---
## PARTE 2: FASE 6 - REFINAMIENTO DEL PLAN
### 2.1 Ajustes al Plan Original
Basado en el análisis de dependencias, se realizan los siguientes ajustes:
#### Cambio 1: Reordenamiento de BLOQUE A
**Original:**
```
T-A1 → T-A2 → T-A3 → T-A4 → T-A5
```
**Refinado:**
```
T-A5 (sin deps) → [T-A1, T-A2, T-A3] (paralelo) → T-A4 (secuencial)
```
**Razón:** T-A5 no tiene dependencias, puede ir primero. T-A1,A2,A3 pueden ejecutarse en paralelo.
#### Cambio 2: Paralelización de BLOQUE B, C, D
**Original:**
```
T-B1 → T-B2 → T-B3 → T-C1 → ... → T-D4
```
**Refinado:**
```
[T-B1, T-B2, T-B3, T-C1-C6, T-D1-D4] (todos paralelos después de PASO 3)
```
**Razón:** No hay dependencias entre documentos de frontmatter. Pueden ejecutarse simultáneamente.
#### Cambio 3: Checkpoint de Validación
**Agregado:**
```
CHECKPOINT después de PASO 4:
- Verificar que todos los frontmatter se insertaron correctamente
- Verificar que YAML es válido
- Verificar que no hay links rotos
```
### 2.2 Plan Refinado Final
```
═══════════════════════════════════════════════════════════════
PLAN REFINADO v1.1.0
═══════════════════════════════════════════════════════════════
PASO 1: Preparación (30 min)
├── T-D4: Crear 90-transversal/_MAP.md
├── T-A5: Actualizar DEPENDENCIAS.yml a v2.1.0
└── T-F2: Crear historico/ si no existe
PASO 2: Inventarios de Capa (1.5 horas, paralelo)
├── T-A1: DATABASE_INVENTORY.yml (+4 DDLs nuevos)
├── T-A2: BACKEND_INVENTORY.yml (+6 módulos nuevos)
└── T-A3: FRONTEND_INVENTORY.yml (+3 páginas nuevas)
PASO 3: Sincronización (30 min)
└── T-A4: MASTER_INVENTORY.yml (sincronizar con T-A1,A2,A3)
─── CHECKPOINT 1: Verificar inventarios ───
PASO 4: Frontmatter Masivo (3-4 horas, paralelo)
├── SUBGRUPO ÉPICAS:
│ ├── T-B1: MCH-001 a MCH-010 (10 archivos)
│ ├── T-B2: MCH-011 a MCH-020 (10 archivos)
│ └── T-B3: MCH-021 a MCH-028 (8 archivos)
├── SUBGRUPO ESPECIFICACIONES:
│ └── T-C1-C6: 6 especificaciones
├── SUBGRUPO OTROS:
│ ├── T-D1: 4 ADRs
│ ├── T-D2: 4 integraciones existentes
│ └── T-D3: 2 transversal
─── CHECKPOINT 2: Verificar frontmatter ───
PASO 5: Creación de Nuevos Documentos (2-3 horas)
├── T-E1: INT-005-clip.md
├── T-E2: INT-006-codi-banxico.md
├── T-E3: INT-007-firebase-fcm.md
├── T-E4: INT-008-google-vision.md
└── T-E5: INT-009-whisper.md
─── CHECKPOINT 3: Verificar nuevos docs ───
PASO 6: Consolidación y Cierre (1 hora)
├── T-F1: Mover redundantes a historico/
├── T-F3: Actualizar referencias cruzadas
└── VALIDACIÓN FINAL
═══════════════════════════════════════════════════════════════
TIEMPO TOTAL REFINADO: ~8-10 horas (vs 15 original)
═══════════════════════════════════════════════════════════════
```
### 2.3 Checkpoints de Validación
#### CHECKPOINT 1: Post-Inventarios
```yaml
checklist:
- [ ] DATABASE_INVENTORY.yml contiene 17 archivos DDL
- [ ] DATABASE_INVENTORY.yml versión 2.2.0
- [ ] BACKEND_INVENTORY.yml contiene 18 módulos
- [ ] BACKEND_INVENTORY.yml versión 2.2.0
- [ ] FRONTEND_INVENTORY.yml contiene 12+ páginas
- [ ] FRONTEND_INVENTORY.yml versión 2.2.0
- [ ] MASTER_INVENTORY.yml sincronizado
- [ ] MASTER_INVENTORY.yml versión 2.2.0
- [ ] DEPENDENCIAS.yml versión 2.1.0
```
#### CHECKPOINT 2: Post-Frontmatter
```yaml
checklist:
- [ ] 28 épicas tienen frontmatter YAML válido
- [ ] 6 especificaciones tienen frontmatter YAML válido
- [ ] 4 ADRs tienen frontmatter YAML válido
- [ ] 4 integraciones tienen frontmatter YAML válido
- [ ] 2 transversal tienen frontmatter YAML válido
- [ ] 90-transversal/_MAP.md existe
- [ ] Todos los YAML son parseables (sin errores de sintaxis)
```
#### CHECKPOINT 3: Post-Nuevos Docs
```yaml
checklist:
- [ ] INT-005-clip.md creado con plantilla
- [ ] INT-006-codi-banxico.md creado con plantilla
- [ ] INT-007-firebase-fcm.md creado con plantilla
- [ ] INT-008-google-vision.md creado con plantilla
- [ ] INT-009-whisper.md creado con plantilla
- [ ] 02-integraciones/_MAP.md actualizado con 9 integraciones
```
### 2.4 Criterios de Éxito Refinados
| Métrica | Antes | Meta | Cómo Verificar |
|---------|-------|------|----------------|
| Docs con frontmatter | 3 | 53 | Contar archivos con `---` al inicio |
| Inventarios v2.2.0 | 0 | 4 | Verificar campo `version:` |
| DEPENDENCIAS v2.1.0 | No | Sí | Verificar campo `version:` |
| _MAP.md completos | 5 | 6 | Verificar existencia |
| Integraciones docs | 4 | 9 | Contar INT-XXX.md |
| Archivos en historico/ | 0 | 2+ | Listar historico/ |
---
## 3. RESUMEN EJECUTIVO PARA EJECUCIÓN
### 3.1 Tareas Priorizadas para Ejecución
**CRÍTICAS (ejecutar primero):**
1. T-A1, T-A2, T-A3 - Actualizar inventarios de capa
2. T-A4 - Sincronizar MASTER_INVENTORY
**ALTAS (ejecutar segundo):**
3. T-B1, T-B2, T-B3 - Frontmatter en 28 épicas
4. T-C1-C6 - Frontmatter en 6 especificaciones
5. T-D4 - Crear 90-transversal/_MAP.md
**NORMALES (ejecutar tercero):**
6. T-D1, T-D2, T-D3 - Frontmatter en otros docs
7. T-E1-E5 - Crear 5 integraciones nuevas
8. T-A5 - Actualizar DEPENDENCIAS.yml
**FINALES (ejecutar último):**
9. T-F1-F3 - Consolidación y limpieza
### 3.2 Recursos Necesarios
- **Agentes especializados:**
- Documentation-Maintainer: Para frontmatter masivo
- Documentation-Validator: Para verificar cambios
- **Herramientas:**
- Editor de YAML (para validar sintaxis)
- Grep/Glob (para verificar frontmatter)
### 3.3 Riesgos Residuales
| Riesgo | Mitigación Implementada |
|--------|-------------------------|
| YAML inválido | Usar plantillas validadas |
| Referencias rotas | Actualizar _MAP.md después de cambios |
| Pérdida de datos | Crear backups en historico/ |
| Tiempo excedido | Plan optimizado a 8-10 horas |
---
## 4. CONCLUSIÓN
### Estado de Fases 5 y 6
-**FASE 5 COMPLETADA:** Dependencias analizadas y documentadas
-**FASE 6 COMPLETADA:** Plan refinado con optimizaciones
### Próximo Paso
**FASE 7: EJECUCIÓN DEL PLAN**
El plan refinado está listo para ejecución con:
- Orden de ejecución óptimo
- Checkpoints de validación
- Criterios de éxito definidos
- Riesgos mitigados
---
**Documento generado:** 2026-01-10
**Agente:** Orquestador (PERFIL-ORQUESTADOR)
**Sistema:** SIMCO v3.8.0 + CAPVED
**Próxima Fase:** F7 - Ejecución del Plan