Some checks failed
ERP Core CI / Backend Lint (push) Has been cancelled
ERP Core CI / Backend Unit Tests (push) Has been cancelled
ERP Core CI / Backend Integration Tests (push) Has been cancelled
ERP Core CI / Frontend Lint (push) Has been cancelled
ERP Core CI / Frontend Unit Tests (push) Has been cancelled
ERP Core CI / Frontend E2E Tests (push) Has been cancelled
ERP Core CI / Database DDL Validation (push) Has been cancelled
ERP Core CI / Backend Build (push) Has been cancelled
ERP Core CI / Frontend Build (push) Has been cancelled
ERP Core CI / CI Success (push) Has been cancelled
Performance Tests / Lighthouse CI (push) Has been cancelled
Performance Tests / Bundle Size Analysis (push) Has been cancelled
Performance Tests / k6 Load Tests (push) Has been cancelled
Performance Tests / Performance Summary (push) Has been cancelled
- HERENCIA-SIMCO.md actualizado con directivas v3.7 y v3.8 - Actualizaciones en modulos CRM y OpenAPI Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
449 lines
12 KiB
Markdown
449 lines
12 KiB
Markdown
# FASE 5: ANALISIS DE DEPENDENCIAS
|
|
# Mapeo de Dependencias entre Archivos a Modificar
|
|
|
|
---
|
|
|
|
## METADATOS
|
|
|
|
| Campo | Valor |
|
|
|-------|-------|
|
|
| **Fase** | 5 - Analisis de Dependencias |
|
|
| **Proyecto** | ERP Core |
|
|
| **Fecha** | 2026-01-10 |
|
|
| **Metodologia** | CAPVED + SIMCO v3.8 |
|
|
| **Estado** | COMPLETADO |
|
|
|
|
---
|
|
|
|
## 1. GRAFO DE DEPENDENCIAS
|
|
|
|
### 1.1 Dependencias Entre Inventarios
|
|
|
|
```
|
|
MASTER_INVENTORY.yml
|
|
├── depende_de: (ninguno - es raiz)
|
|
└── referenciado_por:
|
|
├── DEPENDENCY_GRAPH.yml (lista modulos)
|
|
├── TRACEABILITY_MATRIX.yml (conteos)
|
|
├── BACKEND_INVENTORY.yml (modulos)
|
|
└── FRONTEND_INVENTORY.yml (modulos)
|
|
|
|
DATABASE_INVENTORY.yml
|
|
├── depende_de: (ninguno)
|
|
└── referenciado_por:
|
|
├── BACKEND_INVENTORY.yml (tablas → entidades)
|
|
└── ET-*-backend.md (DDL specs)
|
|
|
|
BACKEND_INVENTORY.yml
|
|
├── depende_de:
|
|
│ ├── MASTER_INVENTORY.yml (definicion modulos)
|
|
│ └── DATABASE_INVENTORY.yml (tablas)
|
|
└── referenciado_por:
|
|
├── TRACEABILITY_MATRIX.yml (servicios)
|
|
└── ET-*-backend.md (servicios)
|
|
|
|
FRONTEND_INVENTORY.yml
|
|
├── depende_de:
|
|
│ ├── MASTER_INVENTORY.yml (definicion modulos)
|
|
│ └── BACKEND_INVENTORY.yml (endpoints)
|
|
└── referenciado_por:
|
|
├── TRACEABILITY_MATRIX.yml (pages)
|
|
└── ET-*-frontend.md (componentes)
|
|
|
|
DEPENDENCY_GRAPH.yml
|
|
├── depende_de:
|
|
│ └── MASTER_INVENTORY.yml (lista modulos)
|
|
└── referenciado_por:
|
|
└── (ninguno - es hoja)
|
|
|
|
TRACEABILITY_MATRIX.yml
|
|
├── depende_de:
|
|
│ ├── MASTER_INVENTORY.yml (modulos)
|
|
│ ├── BACKEND_INVENTORY.yml (servicios)
|
|
│ └── FRONTEND_INVENTORY.yml (pages)
|
|
└── referenciado_por:
|
|
└── (ninguno - es hoja)
|
|
```
|
|
|
|
### 1.2 Dependencias Entre ET
|
|
|
|
```
|
|
ET-auth-backend.md
|
|
├── depende_de:
|
|
│ ├── RF-AUTH-*.md (requerimientos)
|
|
│ ├── DDL-SPEC-core_auth.md (DDL)
|
|
│ └── US-MGN001-*.md (user stories)
|
|
└── referenciado_por:
|
|
├── BACKEND_INVENTORY.yml
|
|
├── TRACEABILITY_MATRIX.yml
|
|
└── _MAP.md (docs/)
|
|
|
|
ET-FIN-backend.md
|
|
├── depende_de:
|
|
│ ├── RF-FIN-*.md (requerimientos)
|
|
│ ├── DDL-SPEC-financial.md (DDL)
|
|
│ └── US-MGN010-*.md (user stories)
|
|
└── referenciado_por:
|
|
├── BACKEND_INVENTORY.yml
|
|
├── TRACEABILITY_MATRIX.yml
|
|
└── _MAP.md (docs/)
|
|
|
|
ET-SALES-backend.md (a crear)
|
|
├── depende_de:
|
|
│ ├── RF-SALES-*.md (a crear)
|
|
│ ├── DDL-SPEC-sales.md (existente)
|
|
│ └── US-MGN011-*.md (a crear)
|
|
└── referenciado_por:
|
|
├── BACKEND_INVENTORY.yml
|
|
├── TRACEABILITY_MATRIX.yml
|
|
└── _MAP.md (docs/)
|
|
```
|
|
|
|
### 1.3 Dependencias de Nomenclatura
|
|
|
|
```
|
|
Archivos a Renombrar:
|
|
ET-auth-backend.md → ET-AUTH-BACKEND.md
|
|
└── actualizar_referencias_en:
|
|
├── docs/_MAP.md
|
|
├── docs/01-fase-foundation/MGN-001-auth/_MAP.md
|
|
├── BACKEND_INVENTORY.yml
|
|
└── TRACEABILITY_MATRIX.yml
|
|
|
|
FASE-1-PLAN-COMPARACION-ODOO.md → PLAN-COMPARACION-ODOO-2025-12-XX.md
|
|
└── actualizar_referencias_en:
|
|
├── orchestration/01-analisis/_MAP.md
|
|
└── docs/_MAP.md (si existe referencia)
|
|
|
|
Directorios a Renumerar:
|
|
orchestration/agentes/ → orchestration/06-agentes/
|
|
└── actualizar_referencias_en:
|
|
├── orchestration/_MAP.md
|
|
├── INDICE-DIRECTIVAS-WORKSPACE.yml
|
|
└── Archivos dentro del directorio (rutas relativas)
|
|
```
|
|
|
|
---
|
|
|
|
## 2. MATRIZ DE IMPACTO
|
|
|
|
### 2.1 Archivos de Alto Impacto
|
|
|
|
| Archivo | Referencias | Impacto | Precaucion |
|
|
|---------|-------------|---------|------------|
|
|
| MASTER_INVENTORY.yml | 4 archivos | ALTO | Corregir primero, validar dependientes |
|
|
| _MAP.md (docs/) | ~50+ referencias | ALTO | Actualizar despues de renombrados |
|
|
| INDICE-DIRECTIVAS-WORKSPACE.yml | Workspace completo | ALTO | Actualizar rutas de perfiles |
|
|
| ET-auth-backend.md | 4+ referencias | MEDIO | Actualizar inventarios |
|
|
| docs/README.md | Enlaces internos | MEDIO | Validar enlaces post-cambio |
|
|
|
|
### 2.2 Archivos de Bajo Impacto
|
|
|
|
| Archivo | Referencias | Impacto | Notas |
|
|
|---------|-------------|---------|-------|
|
|
| FASE-X-*.md | 0-1 referencia | BAJO | Renombrar sin problema |
|
|
| DDL-SPEC-*.md | 1-2 referencias | BAJO | Solo en ET correspondiente |
|
|
| SESSION-*.md | 0 referencias | BAJO | Archivos historicos |
|
|
|
|
---
|
|
|
|
## 3. ORDEN DE EJECUCION POR DEPENDENCIA
|
|
|
|
### 3.1 Bloque A (Inventarios)
|
|
|
|
```
|
|
ORDEN OBLIGATORIO:
|
|
1. A1: MASTER_INVENTORY.yml (corregir YAML)
|
|
└── Razon: Es la raiz, todos dependen de el
|
|
|
|
2. A4: DEPENDENCY_GRAPH.yml (actualizar)
|
|
└── Razon: Depende solo de MASTER
|
|
|
|
3. A5: TRACEABILITY_MATRIX.yml (actualizar)
|
|
└── Razon: Depende de MASTER y DEPENDENCY
|
|
|
|
4. A2: BACKEND_INVENTORY.yml (completar)
|
|
└── Razon: Depende de MASTER y DATABASE
|
|
|
|
5. A3: FRONTEND_INVENTORY.yml (completar)
|
|
└── Razon: Depende de MASTER y BACKEND
|
|
```
|
|
|
|
### 3.2 Bloque B-C (ET)
|
|
|
|
```
|
|
ORDEN FLEXIBLE (pueden ser paralelas):
|
|
B1: ET-auth-backend.md
|
|
B2: ET-FIN-backend.md
|
|
C1-C8: ET verticales nuevas
|
|
|
|
Razon: Cada ET es independiente de las otras
|
|
Nota: Actualizar inventarios DESPUES de crear ETs
|
|
```
|
|
|
|
### 3.3 Bloque D (Nomenclatura)
|
|
|
|
```
|
|
ORDEN RECOMENDADO:
|
|
1. D2: ET mixed-case (8 archivos)
|
|
└── Razon: Pocos archivos, referencias claras
|
|
|
|
2. D1: FASE-X (30 archivos)
|
|
└── Razon: Sin referencias externas
|
|
|
|
3. D3: DDL-SPEC (25 archivos)
|
|
└── Razon: Referencias en ET (ya actualizadas)
|
|
|
|
4. D4: Directorios (59 dirs)
|
|
└── Razon: Requiere actualizar rutas internas
|
|
|
|
5. D5: Prefijos restantes (96 archivos)
|
|
└── Razon: Ultimos, pueden tener mas referencias
|
|
```
|
|
|
|
### 3.4 Bloque E (Estructura)
|
|
|
|
```
|
|
ORDEN RECOMENDADO:
|
|
1. E3: Estructura modulos verticales
|
|
└── Razon: Necesario para organizar ETs creadas
|
|
|
|
2. E1: Mover archivos huerfanos
|
|
└── Razon: Crear directorios destino primero
|
|
|
|
3. E2: Crear _MAP.md por fase
|
|
└── Razon: Despues de tener estructura final
|
|
|
|
4. E4: Sincronizar conteos
|
|
└── Razon: Ultimo, despues de todos los cambios
|
|
```
|
|
|
|
---
|
|
|
|
## 4. ARCHIVOS DEPENDIENTES A ACTUALIZAR
|
|
|
|
### 4.1 Post-Renombrado ET
|
|
|
|
Despues de renombrar `ET-auth-backend.md → ET-AUTH-BACKEND.md`:
|
|
|
|
```yaml
|
|
archivos_a_actualizar:
|
|
- ruta: docs/_MAP.md
|
|
buscar: "ET-auth-backend.md"
|
|
reemplazar: "ET-AUTH-BACKEND.md"
|
|
|
|
- ruta: docs/01-fase-foundation/MGN-001-auth/_MAP.md
|
|
buscar: "ET-auth-backend.md"
|
|
reemplazar: "ET-AUTH-BACKEND.md"
|
|
|
|
- ruta: orchestration/inventarios/BACKEND_INVENTORY.yml
|
|
buscar: "ET-auth-backend.md"
|
|
reemplazar: "ET-AUTH-BACKEND.md"
|
|
|
|
- ruta: orchestration/inventarios/TRACEABILITY_MATRIX.yml
|
|
buscar: "ET-auth-backend.md"
|
|
reemplazar: "ET-AUTH-BACKEND.md"
|
|
```
|
|
|
|
### 4.2 Post-Renumeracion Directorios
|
|
|
|
Despues de renumerar `orchestration/agentes/ → orchestration/06-agentes/`:
|
|
|
|
```yaml
|
|
archivos_a_actualizar:
|
|
- ruta: orchestration/_MAP.md
|
|
buscar: "agentes/"
|
|
reemplazar: "06-agentes/"
|
|
|
|
- ruta: orchestration/README.md
|
|
buscar: "agentes/"
|
|
reemplazar: "06-agentes/"
|
|
|
|
- ruta: orchestration/INDICE-DIRECTIVAS-WORKSPACE.yml
|
|
buscar: "agents/perfiles/"
|
|
reemplazar: "06-agentes/perfiles/"
|
|
nota: "Verificar si aplica"
|
|
|
|
archivos_internos:
|
|
- todos los archivos dentro de 06-agentes/
|
|
actualizar: rutas relativas si existen
|
|
```
|
|
|
|
### 4.3 Post-Creacion Estructura Vertical
|
|
|
|
Despues de crear estructura para MGN-011 a MGN-018:
|
|
|
|
```yaml
|
|
archivos_a_actualizar:
|
|
- ruta: docs/_MAP.md
|
|
accion: agregar enlaces a nuevos modulos
|
|
|
|
- ruta: docs/03-fase-vertical/_MAP.md
|
|
accion: crear con lista de modulos
|
|
|
|
- ruta: MASTER_INVENTORY.yml
|
|
accion: actualizar estado modulos (planificado → rf_documentado)
|
|
|
|
- ruta: BACKEND_INVENTORY.yml
|
|
accion: agregar seccion para cada modulo
|
|
|
|
- ruta: FRONTEND_INVENTORY.yml
|
|
accion: agregar seccion para cada modulo
|
|
```
|
|
|
|
---
|
|
|
|
## 5. VALIDACION DE DEPENDENCIAS
|
|
|
|
### 5.1 Checklist Pre-Ejecucion
|
|
|
|
```markdown
|
|
## Antes de Bloque A:
|
|
- [ ] Backup de inventarios actuales
|
|
- [ ] Verificar que MASTER_INVENTORY es parseble (excepto error conocido)
|
|
|
|
## Antes de Bloque D:
|
|
- [ ] Lista completa de referencias por archivo a renombrar
|
|
- [ ] Script de busqueda de referencias preparado
|
|
|
|
## Antes de Bloque E:
|
|
- [ ] Directorios destino identificados
|
|
- [ ] Permisos de escritura verificados
|
|
```
|
|
|
|
### 5.2 Checklist Post-Ejecucion
|
|
|
|
```markdown
|
|
## Despues de Bloque A:
|
|
- [ ] Todos inventarios parsean correctamente
|
|
- [ ] Conteos son consistentes entre inventarios
|
|
|
|
## Despues de Bloque D:
|
|
- [ ] Grep de nombres antiguos retorna 0 resultados
|
|
- [ ] Enlaces en _MAP.md funcionan
|
|
|
|
## Despues de Bloque E:
|
|
- [ ] Estructura de directorios es consistente
|
|
- [ ] No hay archivos huerfanos
|
|
```
|
|
|
|
---
|
|
|
|
## 6. RIESGOS DE DEPENDENCIA
|
|
|
|
### 6.1 Riesgos Identificados
|
|
|
|
| Riesgo | Probabilidad | Impacto | Mitigacion |
|
|
|--------|--------------|---------|------------|
|
|
| Referencias huerfanas post-rename | Media | Alto | Grep exhaustivo antes/despues |
|
|
| Inventarios con rutas invalidas | Media | Alto | Validacion YAML post-cambio |
|
|
| _MAP.md con enlaces rotos | Alta | Medio | Regenerar _MAP.md al final |
|
|
| Git history confuso | Baja | Bajo | Commits atomicos por tarea |
|
|
|
|
### 6.2 Plan de Rollback
|
|
|
|
```yaml
|
|
rollback_por_bloque:
|
|
A:
|
|
accion: git checkout -- orchestration/inventarios/
|
|
tiempo: 1 minuto
|
|
|
|
B-C:
|
|
accion: git checkout -- docs/*/especificaciones/
|
|
tiempo: 1 minuto
|
|
|
|
D:
|
|
accion: git checkout -- (archivos renombrados)
|
|
tiempo: 5 minutos (requiere lista)
|
|
|
|
E:
|
|
accion: git checkout -- docs/ orchestration/
|
|
tiempo: 2 minutos
|
|
```
|
|
|
|
---
|
|
|
|
## 7. SCRIPTS DE SOPORTE
|
|
|
|
### 7.1 Script para Buscar Referencias
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
# buscar-referencias.sh
|
|
# Uso: ./buscar-referencias.sh "nombre-archivo.md"
|
|
|
|
ARCHIVO=$1
|
|
echo "Buscando referencias a: $ARCHIVO"
|
|
grep -r "$ARCHIVO" \
|
|
--include="*.md" \
|
|
--include="*.yml" \
|
|
--include="*.yaml" \
|
|
/home/isem/workspace-v1/projects/erp-core/
|
|
```
|
|
|
|
### 7.2 Script para Validar Inventarios
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
# validar-inventarios.sh
|
|
|
|
echo "Validando inventarios YAML..."
|
|
for f in /home/isem/workspace-v1/projects/erp-core/orchestration/inventarios/*.yml; do
|
|
if python3 -c "import yaml; yaml.safe_load(open('$f'))" 2>/dev/null; then
|
|
echo "OK: $f"
|
|
else
|
|
echo "ERROR: $f"
|
|
fi
|
|
done
|
|
```
|
|
|
|
---
|
|
|
|
## 8. CONCLUSION
|
|
|
|
### 8.1 Resumen de Dependencias
|
|
|
|
```
|
|
ARCHIVOS CON DEPENDENCIAS CRITICAS: 6
|
|
├── MASTER_INVENTORY.yml
|
|
├── BACKEND_INVENTORY.yml
|
|
├── FRONTEND_INVENTORY.yml
|
|
├── DEPENDENCY_GRAPH.yml
|
|
├── TRACEABILITY_MATRIX.yml
|
|
└── docs/_MAP.md
|
|
|
|
ARCHIVOS SIN DEPENDENCIAS: ~195+
|
|
└── Pueden modificarse en paralelo
|
|
|
|
ORDEN DE EJECUCION:
|
|
1. Inventarios (A1 → A4 → A5 → A2 → A3)
|
|
2. ET existentes y nuevas (B, C - paralelo)
|
|
3. Nomenclatura (D2 → D1 → D3 → D4 → D5)
|
|
4. Estructura (E3 → E1 → E2 → E4)
|
|
5. Tests y mejoras (F, G - paralelo)
|
|
```
|
|
|
|
### 8.2 Dependencias Validadas
|
|
|
|
| Aspecto | Estado |
|
|
|---------|--------|
|
|
| Grafo de dependencias | Mapeado |
|
|
| Orden de ejecucion | Definido |
|
|
| Archivos a actualizar | Listados |
|
|
| Riesgos identificados | Mitigados |
|
|
| Scripts de soporte | Preparados |
|
|
|
|
---
|
|
|
|
## 9. APROBACION
|
|
|
|
| Rol | Estado | Fecha |
|
|
|-----|--------|-------|
|
|
| Analista | COMPLETADO | 2026-01-10 |
|
|
| Usuario | PENDIENTE | - |
|
|
|
|
---
|
|
|
|
*Analisis de dependencias completado siguiendo CAPVED + SIMCO v3.8*
|
|
*Proximo paso: FASE 6 - Refinamiento del Plan*
|