erp-mecanicas-diesel/docs/90-transversal/ANALISIS-INDEPENDENCIA-PROYECTO.md

9.6 KiB

Analisis de Independencia del Proyecto - Mecanicas Diesel

Fecha: 2025-12-12 Objetivo: Identificar y planificar eliminacion de referencias a proyectos base Estado: PENDIENTE DE LIMPIEZA


Resumen Ejecutivo

El proyecto mecanicas-diesel debe ser un proyecto completamente independiente que no requiera ni dependa de:

  1. Odoo - Sistema ERP de referencia usado para patrones
  2. erp-core - Proyecto base del cual se derivaron patrones
  3. gamilit - Otro proyecto de referencia (no encontrado)

Estadisticas de Referencias Encontradas

Referencia Cantidad Archivos Afectados Accion
odoo 21 7 Eliminar
erp-core 65+ 24 Eliminar
MGN-* 62 15 Eliminar
gamilit 0 0 N/A
Rutas absolutas /home/isem/... 16 10 Corregir/Eliminar

Total: ~164 referencias a limpiar en ~30 archivos unicos


Analisis del Perfil TECH-LEADER

Caracteristicas del Perfil

El perfil PERFIL-TECH-LEADER.md es adecuado para iniciar desarrollo. Puntos clave:

Rol: Lider tecnico de equipo de agentes
Responsabilidades:
  - Recibir tareas de alto nivel y descomponer
  - Delegar a agentes especializados
  - Coordinar flujo de trabajo
  - Tomar decisiones tecnicas
  - Asegurar calidad y coherencia

Agentes que coordina:
  analisis:
    - REQUIREMENTS-ANALYST
    - ARCHITECTURE-ANALYST
  implementacion:
    - DATABASE
    - BACKEND / BACKEND-EXPRESS
    - FRONTEND
    - MOBILE-AGENT
  calidad:
    - CODE-REVIEWER
    - BUG-FIXER
    - DOCUMENTATION-VALIDATOR
  infraestructura:
    - DEVENV              # IMPORTANTE: Gestiona puertos
    - WORKSPACE-MANAGER

Integracion con DEVENV para Puertos

El perfil TECH-LEADER tiene protocolo especifico para consulta de puertos:

PROTOCOLO_DE_CONSULTA_DE_PUERTOS:
  ANTES_DE_ASIGNAR_PUERTOS:
    1. Verificar: "Este servicio necesita puerto nuevo?"
    2. Si SI:
       - Delegar a DEVENV
       - Proporcionar: proyecto, tipo_servicio, descripcion
       - Esperar: puerto asignado, configuracion .env
    3. Si NO:
       - Usar puerto existente del inventario
       - Verificar en: @DEVENV_PORTS

  NUNCA:
    - Asignar puertos arbitrariamente
    - Copiar puertos de otro proyecto sin verificar
    - Usar puertos "comunes" (3000, 8080) sin consultar

Alias relevante: @DEVENV_PORTS: "core/orchestration/inventarios/DEVENV-PORTS-INVENTORY.yml"

Flujo de Desarrollo con TECH-LEADER

1. RECIBIR TAREA
   ↓
2. ANALISIS INICIAL (Tech-Leader)
   - Entender alcance
   - Identificar capas afectadas
   ↓
3. DELEGAR A REQUIREMENTS-ANALYST (si hay ambiguedad)
   ↓
4. DELEGAR A ARCHITECTURE-ANALYST (diseño)
   ↓
5. DELEGAR A DEVENV (si necesita puertos)
   ↓
6. DELEGAR A DATABASE → BACKEND → FRONTEND
   ↓
7. DELEGAR A CODE-REVIEWER
   ↓
8. VALIDACION FINAL

Archivos con Referencias a Eliminar

Categoria 1: Referencias a ODOO (21 referencias)

Archivo Lineas Tipo de Referencia
PROJECT-STATUS.md 19, 206, 264 Metricas de alineacion
database/init/07-notifications-schema.sql 5 Comentario patron
orchestration/00-guidelines/HERENCIA-DIRECTIVAS.md 36 Directiva referencia
docs/90-transversal/PLAN-RESOLUCION-GAPS.md 36 Solucion referencia
docs/90-transversal/ANALISIS-ARQUITECTONICO-IMPLEMENTACION.md Multiples (25+) Analisis completo

Categoria 2: Referencias a ERP-CORE (65+ referencias)

Archivos criticos (mayor cantidad):

Archivo Lineas Aprox Acciones
database/HERENCIA-ERP-CORE.md 20+ Reescribir completo
orchestration/00-guidelines/HERENCIA-ERP-CORE.md 15+ Reescribir completo
orchestration/00-guidelines/HERENCIA-SPECS-ERP-CORE.md 10+ Reescribir completo
orchestration/00-guidelines/CONTEXTO-PROYECTO.md 5 Editar referencias
orchestration/inventarios/MASTER_INVENTORY.yml 8 Editar referencias
orchestration/inventarios/DATABASE_INVENTORY.yml 8 Editar referencias
docs/00-vision-general/VISION.md 10+ Editar referencias
docs/90-transversal/ANALISIS-ARQUITECTONICO-IMPLEMENTACION.md 20+ Mover a archivo historico
README.md 3 Editar descripcion

Archivos SQL con comentarios:

Archivo Lineas Accion
database/init/01-create-schemas.sql 7 Eliminar comentario
database/init/03-service-management-tables.sql 5, 14 Eliminar comentarios
database/init/04-parts-management-tables.sql 5 Eliminar comentario
database/init/09-purchasing-schema.sql 6 Eliminar comentario

Categoria 3: Referencias a MGN-* (62 referencias)

Modulos genéricos referenciados que deben eliminarse:

Modulo Descripcion Original Reemplazo MMD
MGN-001 Auth MMD-001 Fundamentos
MGN-002 Users MMD-001 Fundamentos
MGN-003 Roles MMD-001 Fundamentos
MGN-004 Tenants MMD-001 Fundamentos
MGN-005 Catalogs MMD-001 + MMD-004
MGN-006 Purchasing purchasing schema
MGN-007 Sales MMD-006 Cotizaciones
MGN-011 Inventory MMD-004 Inventario
MGN-013 Portal Fase 2

Archivos con mas referencias MGN:

  • docs/00-vision-general/VISION.md (10+ referencias)
  • docs/08-epicas/README.md (7 referencias)
  • orchestration/00-guidelines/HERENCIA-ERP-CORE.md (10+ referencias)
  • docs/90-transversal/ANALISIS-ARQUITECTONICO-IMPLEMENTACION.md (20+ referencias)

Categoria 4: Rutas Absolutas Incorrectas (16 referencias)

Rutas que usan /home/isem/workspace/ en lugar de /home/adrian/Documentos/workspace/:

Archivo Ruta Incorrecta
orchestration/environment/PROJECT-ENV-CONFIG.yml /home/isem/workspace/...
orchestration/00-guidelines/CONTEXTO-PROYECTO.md /home/isem/workspace/...
orchestration/00-guidelines/HERENCIA-DIRECTIVAS.md /home/isem/workspace/...
orchestration/prompts/PROMPT-MMD-BACKEND-AGENT.md /home/isem/workspace/...
orchestration/inventarios/MASTER_INVENTORY.yml /home/isem/workspace/...
orchestration/00-guidelines/HERENCIA-SIMCO.md /home/isem/workspace/...

Plan de Limpieza

Fase 1: Eliminar Archivos de Analisis Historico

Estos archivos fueron utiles para el analisis pero no deben permanecer:

MOVER A: docs/99-historico/ (o eliminar)
- docs/90-transversal/ANALISIS-ARQUITECTONICO-IMPLEMENTACION.md
- docs/90-transversal/PLAN-RESOLUCION-GAPS.md (parcial)

Fase 2: Reescribir Archivos de Herencia

REESCRIBIR COMPLETAMENTE:
- database/HERENCIA-ERP-CORE.md → ARQUITECTURA-DATABASE.md
- orchestration/00-guidelines/HERENCIA-ERP-CORE.md → ELIMINAR
- orchestration/00-guidelines/HERENCIA-SPECS-ERP-CORE.md → ELIMINAR
- orchestration/00-guidelines/HERENCIA-DIRECTIVAS.md → DIRECTIVAS-PROYECTO.md

Fase 3: Editar Referencias en Documentacion

EDITAR:
- README.md: Eliminar "Extiende erp-core"
- PROJECT-STATUS.md: Eliminar metricas Odoo/erp-core
- docs/00-vision-general/VISION.md: Reescribir seccion herencia
- docs/08-epicas/README.md: Eliminar tabla MGN
- docs/02-definicion-modulos/*/README.md: Eliminar "Extiende MGN-*"

Fase 4: Limpiar Comentarios SQL

-- ELIMINAR comentarios como:
-- "NOTA: Los schemas auth, core, inventory se heredan de erp-core"
-- "Referencia a auth.tenants de erp-core"
-- "Implementa patron mail.thread de Odoo adaptado"

Fase 5: Corregir Rutas Absolutas

# CAMBIAR de:
/home/isem/workspace/projects/erp-suite/apps/verticales/mecanicas-diesel

# A (rutas relativas):
./  (o eliminar rutas absolutas)

Fase 6: Actualizar Inventarios

EDITAR:
- orchestration/inventarios/MASTER_INVENTORY.yml
- orchestration/inventarios/DATABASE_INVENTORY.yml
- orchestration/inventarios/BACKEND_INVENTORY.yml
- orchestration/inventarios/FRONTEND_INVENTORY.yml

Configuracion de Puerto Compartido: PostgreSQL

El unico recurso compartido entre proyectos del workspace es PostgreSQL:

PostgreSQL:
  puerto: 5432
  compartido: true
  aislamiento:
    - Cada proyecto tiene su propia BASE DE DATOS
    - Cada proyecto tiene sus propios USUARIOS
    - NO comparten schemas ni datos
    - Multi-tenancy interno por tenant_id

Ejemplo:
  proyecto_1:
    database: mecanicas_diesel_db
    user: mecanicas_user
  proyecto_2:
    database: construccion_db
    user: construccion_user

Protocolo DEVENV:

  • Puerto 5432 es el unico compartido (PostgreSQL server)
  • Todos los demas puertos (backend, frontend, etc.) son UNICOS por proyecto
  • SIEMPRE consultar DEVENV antes de asignar nuevos puertos

Proximos Pasos

  1. [PENDIENTE] Ejecutar limpieza de referencias
  2. [PENDIENTE] Validar que el proyecto sea completamente standalone
  3. [PENDIENTE] Actualizar PROJECT-STATUS.md despues de limpieza
  4. [LISTO] Iniciar desarrollo con TECH-LEADER

Notas Importantes

El Proyecto ES Independiente

Aunque hay muchas referencias a erp-core y Odoo en la documentacion, el codigo DDL y la estructura del proyecto YA SON INDEPENDIENTES:

  • Los schemas son propios (service_management, parts_management, etc.)
  • No hay FKs reales a erp-core
  • Las funciones RLS son propias
  • Los seeds son propios

Las referencias son documentales (para trazabilidad del analisis), no funcionales.

Recomendacion

Antes de limpiar, considerar si vale la pena mantener un archivo docs/99-historico/ORIGEN-PATRONES.md que documente de donde vinieron los patrones sin que sea parte activa del proyecto.


Documento creado por: Architecture-Analyst Fecha: 2025-12-12 Para uso de: TECH-LEADER al iniciar desarrollo