erp-core/docs/LANZAR-FASE-0.md

15 KiB

INSTRUCCIONES PARA LANZAR FASE 0 - ANÁLISIS DE REFERENCIAS

Proyecto: ERP Genérico Fase: Fase 0 - Análisis de Referencias Duración estimada: 2 semanas Responsable: Architecture-Analyst (trabajo directo) Versión: 1.0.0 Fecha: 2025-11-23


🎯 OBJETIVO DE LA FASE 0

Analizar profundamente los proyectos de referencia (Odoo + Gamilit) para fundamentar todas las decisiones arquitectónicas del ERP Genérico.


📋 PRE-REQUISITOS

Antes de lanzar el agente, verificar:

1. Referencias Disponibles

  • /shared/reference/ODOO-MODULES-ANALYSIS.md existe
  • /shared/reference/gamilit/ existe con README.md y _MAP.md
  • /projects/erp-construccion/docs/ existe con documentación

2. Estructura de Carpetas

  • /projects/erp-generic/docs/00-analisis-referencias/ creada
  • /projects/erp-generic/docs/adr/ creada

3. Prompt Extendido

  • /shared/orchestration/prompts/PROMPT-ARCHITECTURE-ANALYST-EXTENDED.md existe

4. Plan Maestro

  • /projects/erp-generic/docs/PLAN-MAESTRO-MIGRACION-CONSOLIDACION.md existe

🚀 COMANDO PARA LANZAR EL AGENTE

Usa el Task tool con los siguientes parámetros:

subagent_type: "general-purpose"

description: "Ejecutar Fase 0 del Plan Maestro ERP Genérico"

model: "sonnet"

prompt: "
Eres el **Architecture-Analyst con capacidades de orquestación** trabajando en el ERP Genérico.

---

## 📋 CONTEXTO COMPLETO

### Proyecto
- **Workspace:** [RUTA-LEGACY-ELIMINADA]
- **Proyecto:** projects/erp-generic/
- **Plan Maestro:** projects/erp-generic/docs/PLAN-MAESTRO-MIGRACION-CONSOLIDACION.md
- **Prompt Extendido:** shared/orchestration/prompts/PROMPT-ARCHITECTURE-ANALYST-EXTENDED.md

### Referencias Disponibles
1. **Odoo (Lógica de Negocio)**
   - Análisis: shared/reference/ODOO-MODULES-ANALYSIS.md
   - 12 módulos core relevantes para ERP Genérico

2. **Gamilit (Arquitectura Moderna)**
   - Ubicación: shared/reference/gamilit/
   - README: shared/reference/gamilit/README.md
   - Mapa: shared/reference/gamilit/_MAP.md

3. **ERP Construcción (Documentación Existente)**
   - Ubicación: projects/erp-construccion/docs/
   - 18 módulos documentados (35% progreso)
   - Estructura: projects/erp-construccion/docs/ESTRUCTURA-COMPLETA.md

---

## 🎯 TAREA: EJECUTAR FASE 0 DEL PLAN MAESTRO

Lee el plan maestro completo y ejecuta **FASE 0: ANÁLISIS DE REFERENCIAS (2 semanas)**.

### ENTREGABLES ESPERADOS (38 archivos)

#### 1. Análisis Comparativo Odoo (14 archivos)

**Ubicación:** projects/erp-generic/docs/00-analisis-referencias/odoo/

**Módulos a analizar:**
- base - Sistema base, modelos fundamentales
- auth_signup - Autenticación y registro
- account - Módulo financiero
- stock - Inventario
- purchase - Compras
- sale - Ventas
- analytic - Contabilidad analítica
- mail - Mensajería y notificaciones
- crm - CRM básico
- hr - Recursos humanos
- project - Proyectos genéricos
- portal - Portal de usuarios

**Para cada módulo crear:** odoo-{modulo}-analysis.md

**Incluir en cada análisis:**
- Descripción del módulo Odoo
- Modelos de datos principales (tablas, campos clave, relaciones)
- Lógica de negocio destacable (workflows, reglas, validaciones)
- Patrones arquitectónicos observados
- APIs y endpoints estándar
- Integraciones con otros módulos
- Funcionalidades relevantes para ERP Genérico
- Mapeo a módulos MGN (MGN-001 a MGN-014)
- Recomendaciones de implementación

**Archivos a crear:**
1. README.md - Resumen ejecutivo del análisis Odoo
2. odoo-base-analysis.md
3. odoo-auth-analysis.md
4. odoo-account-analysis.md
5. odoo-stock-analysis.md
6. odoo-purchase-analysis.md
7. odoo-sale-analysis.md
8. odoo-analytic-analysis.md
9. odoo-mail-analysis.md
10. odoo-crm-analysis.md
11. odoo-hr-analysis.md
12. odoo-project-analysis.md
13. odoo-portal-analysis.md
14. MAPEO-ODOO-TO-MGN.md - Tabla de mapeo completa Odoo → MGN

---

#### 2. Análisis Comparativo Gamilit (7 archivos)

**Ubicación:** projects/erp-generic/docs/00-analisis-referencias/gamilit/

**Aspectos a analizar:**
- Arquitectura multi-schema de PostgreSQL (9 schemas)
- Sistema de constantes SSOT (backend → frontend sync)
- Path aliases y estructura de imports
- Estructura modular del backend (11 módulos funcionales)
- Feature-Sliced Design del frontend
- Scripts de validación automática (sync-enums, validate-constants)
- Sistema de _MAP.md para documentación
- Testing patterns
- DevOps automation

**Para cada aspecto, identificar:**
- ✅ **ADOPTAR:** Patrones a copiar directamente
- 🔧 **ADAPTAR:** Patrones a ajustar para nuestro contexto
- ❌ **EVITAR:** Anti-patrones o aspectos a no replicar

**Archivos a crear:**
1. README.md - Resumen ejecutivo del análisis Gamilit
2. database-architecture.md - Análisis multi-schema, RLS, organización
3. backend-patterns.md - Estructura modular, servicios, APIs
4. frontend-patterns.md - FSD, componentes, stores
5. ssot-system.md - Sistema de constantes SSOT, sync-enums
6. devops-automation.md - Scripts, validaciones, testing
7. ADOPTAR-ADAPTAR-EVITAR.md - Matriz de decisiones

---

#### 3. Validación Cruzada con ERP Construcción (5 archivos)

**Ubicación:** projects/erp-generic/docs/00-analisis-referencias/construccion/

**Tareas:**
1. Leer toda la documentación de erp-construccion/docs/
2. Para cada módulo MAI-XXX, determinar:
   - ¿Es componente GENÉRICO? → Candidato a migrar a ERP Genérico
   - ¿Es componente ESPECÍFICO? → Queda en ERP Construcción

3. Comparar con Odoo/Gamilit:
   - ¿Qué funcionalidades faltan en construcción?
   - ¿Qué mejoras arquitectónicas son aplicables?
   - ¿Qué oportunidades de refactorización existen?

**Archivos a crear:**
1. COMPONENTES-GENERICOS.md - Lista detallada de componentes a migrar
   - Por área: Database, Backend, Frontend
   - Con justificación de por qué es genérico

2. COMPONENTES-ESPECIFICOS.md - Lista de componentes que quedan en construcción
   - Con justificación de por qué es específico de construcción

3. MEJORAS-ARQUITECTONICAS.md - Mejoras sugeridas para construcción
   - Basadas en Odoo y Gamilit
   - Priorizadas (P0/P1/P2)

4. GAP-ANALYSIS.md - Funcionalidades faltantes en construcción
   - Identificadas en Odoo pero no implementadas
   - Con impacto y recomendación

5. RETROALIMENTACION.md - Retroalimentación integral a construcción
   - Consolidación de mejoras, gaps, refactorizaciones
   - Plan de acción propuesto

---

#### 4. Creación de ADRs - Architecture Decision Records (10 archivos)

**Ubicación:** projects/erp-generic/docs/adr/

**ADRs a crear (basándose en análisis de Odoo, Gamilit y Construcción):**

**Formato estándar de cada ADR:**
```markdown
# ADR-XXX: [Título]

**Estado:** Aceptada / Propuesta / Rechazada
**Fecha:** 2025-11-23
**Responsable:** Architecture-Analyst
**Contexto:** [Descripción del problema o decisión a tomar]

## Decisión
[Qué se decidió]

## Justificación
[Por qué se tomó esta decisión]
- Referencia a Odoo: [hallazgos]
- Referencia a Gamilit: [hallazgos]
- Referencia a Construcción: [hallazgos]

## Consecuencias
### Positivas
- [Beneficio 1]
- [Beneficio 2]

### Negativas
- [Costo/limitación 1]
- [Costo/limitación 2]

## Alternativas Consideradas
1. **Alternativa 1:** [Descripción] - Rechazada porque [razón]
2. **Alternativa 2:** [Descripción] - Rechazada porque [razón]

## Implementación
- [Acción 1 para implementar esta decisión]
- [Acción 2]

## Referencias
- [Link a análisis Odoo]
- [Link a análisis Gamilit]
- [Link a código de referencia]

ADRs específicos a crear:

  1. ADR-001-stack-tecnologico.md

    • Decisión: Node.js 20+ + Express + TypeScript / React 18 + Vite / PostgreSQL 15+
    • Justificación: Alineación con Gamilit, madurez del ecosistema, compatibilidad
  2. ADR-002-arquitectura-modular.md

    • Decisión: Monorepo con apps/ (database, backend, frontend, mobile)
    • Justificación: Patrón Gamilit, simplifica desarrollo, reutilización
  3. ADR-003-multi-tenancy.md

    • Decisión: Schema-level isolation (cada tenant un schema PostgreSQL)
    • Justificación: Seguridad, performance, Gamilit pattern, Odoo approach similar
  4. ADR-004-sistema-constantes-ssot.md

    • Decisión: Backend como SSOT, sincronización automática a Frontend
    • Justificación: Patrón Gamilit muy efectivo, elimina duplicación
  5. ADR-005-path-aliases.md

    • Decisión: Uso de @shared, @modules, @components, @services
    • Justificación: Imports limpios, refactoring fácil, Gamilit pattern
  6. ADR-006-rbac-sistema-permisos.md

    • Decisión: Role-Based Access Control granular
    • Justificación: Requerimiento multi-tenant, Odoo res.users/res.groups pattern
  7. ADR-007-database-design.md

    • Decisión: Multi-schema (auth, core, financial, inventory, etc.) + RLS
    • Justificación: Organización lógica, Gamilit pattern, seguridad
  8. ADR-008-api-design.md

    • Decisión: RESTful APIs + OpenAPI 3.0 + versionado (/api/v1/)
    • Justificación: Estándar industria, documentación auto-generada
  9. ADR-009-frontend-architecture.md

    • Decisión: Feature-Sliced Design (shared, features, pages, app)
    • Justificación: Escalabilidad, Gamilit pattern, organización clara
  10. ADR-010-testing-strategy.md

    • Decisión: Coverage objetivo 80% backend / 70% frontend, Unit+Integration+E2E
    • Justificación: Evitar deuda técnica de Gamilit (14% coverage)

5. Mapeo de Componentes Genéricos (1 archivo)

Ubicación: projects/erp-generic/docs/00-analisis-referencias/MAPA-COMPONENTES-GENERICOS.md

Contenido:

  • Lista exhaustiva de componentes genéricos vs específicos
  • Por categoría: Database (schemas, tablas), Backend (módulos, servicios), Frontend (componentes, páginas)
  • Para cada componente: nombre, tipo, ubicación, usado por qué proyectos
  • Resumen cuantitativo: % de reutilización calculado

Objetivo: Determinar qué va en ERP Genérico (genérico) vs qué queda en ERP Construcción/Vidrio/Mecánicas (específico)


6. Resumen Ejecutivo Fase 0 (1 archivo)

Ubicación: projects/erp-generic/docs/00-analisis-referencias/RESUMEN-FASE-0.md

Contenido:

# RESUMEN EJECUTIVO - FASE 0

## Hallazgos Principales

### De Odoo
- [3-5 hallazgos clave]

### De Gamilit
- [3-5 hallazgos clave]

### De ERP Construcción
- [3-5 hallazgos clave]

## Decisiones Arquitectónicas (10 ADRs)
- ADR-001: Stack tecnológico
- ADR-002: Arquitectura modular
- ...

## Componentes Genéricos Identificados
- Database: X schemas, Y tablas (Z% reutilización)
- Backend: X módulos (Y% reutilización)
- Frontend: X componentes (Y% reutilización)

## Retroalimentación a ERP Construcción
- Mejora 1: [...]
- Mejora 2: [...]

## Próximos Pasos (Fase 1)
- [...]

CRITERIOS DE COMPLETITUD

Marca la tarea como completa SOLO cuando:

  • 14 archivos de análisis Odoo creados (README + 12 módulos + mapeo)
  • 7 archivos de análisis Gamilit creados (README + 6 aspectos)
  • 5 archivos de validación construcción creados
  • 10 ADRs creados con formato estándar
  • 1 archivo de mapeo de componentes genéricos completo
  • 1 archivo de resumen ejecutivo consolidado
  • TOTAL: 38 archivos creados en las ubicaciones correctas
  • Todos los análisis son profundos y completos (no superficiales)
  • Todos los ADRs tienen justificación basada en referencias
  • Mapeo de componentes tiene % de reutilización calculado
  • Resumen ejecutivo consolida hallazgos principales

📊 FORMATO Y CALIDAD

Formato de Documentos

  • Usar Markdown con sintaxis GitHub-flavored
  • Incluir tablas donde sea apropiado
  • Usar listas para enumerar puntos
  • Usar emojis moderadamente (solo en encabezados)
  • Incluir referencias a archivos fuente

Profundidad de Análisis

  • NO superficial: Ir más allá de "Odoo tiene módulo X"
  • SÍ profundo: Explicar cómo funciona, por qué es relevante, cómo se mapea a MGN
  • Incluir ejemplos: Citar tablas específicas, campos, relaciones
  • Justificar decisiones: Cada ADR debe tener justificación sólida

Coherencia

  • Mantener nomenclatura consistente (MGN-XXX, RF-XXX, ET-XXX)
  • Referencias cruzadas entre documentos
  • Vincular hallazgos → ADRs → componentes → módulos MGN

🎯 RESULTADO ESPERADO

Al completar esta Fase 0, tendremos:

  1. Fundamento sólido para todas las decisiones arquitectónicas
  2. 10 ADRs aprobados que guiarán el desarrollo
  3. Mapeo claro de qué es genérico vs específico
  4. Retroalimentación valiosa al ERP Construcción
  5. Base de conocimiento consolidada de Odoo y Gamilit
  6. Confianza para ejecutar Fase 1-3 con claridad

📝 NOTA IMPORTANTE

Esta es la fase MÁS CRÍTICA del proceso. La calidad de tu análisis en Fase 0 determinará el éxito de todo el proyecto ERP Genérico.

Tómate el tiempo necesario para:

  • Leer completamente las referencias
  • Analizar profundamente los patrones
  • Documentar detalladamente los hallazgos
  • Justificar sólidamente las decisiones
  • Crear ADRs bien fundamentados

No avances a Fase 1 hasta que Fase 0 esté completa y validada.


🚀 AL FINALIZAR

Cuando completes todos los 38 archivos:

  1. Reporta un resumen ejecutivo con:

    • Total de archivos creados
    • Ubicaciones de entregables
    • Principales hallazgos (top 5)
    • Decisiones arquitectónicas clave (ADRs)
    • % de reutilización identificado
    • Retroalimentación principal a construcción
  2. Propón si estamos listos para Fase 1 o si hay gaps que abordar


¡ADELANTE CON FASE 0! "


---

## 📊 VERIFICACIÓN POST-EJECUCIÓN

Después de que el agente termine, ejecutar:

```bash
# Verificar análisis Odoo
ls -la projects/erp-generic/docs/00-analisis-referencias/odoo/
# Debe mostrar: README.md + 12 archivos odoo-*-analysis.md + MAPEO-ODOO-TO-MGN.md = 14 archivos

# Verificar análisis Gamilit
ls -la projects/erp-generic/docs/00-analisis-referencias/gamilit/
# Debe mostrar: 7 archivos

# Verificar validación construcción
ls -la projects/erp-generic/docs/00-analisis-referencias/construccion/
# Debe mostrar: 5 archivos

# Verificar ADRs
ls -la projects/erp-generic/docs/adr/
# Debe mostrar: 10 archivos ADR-001.md a ADR-010.md

# Verificar mapeo
cat projects/erp-generic/docs/00-analisis-referencias/MAPA-COMPONENTES-GENERICOS.md

# Verificar resumen
cat projects/erp-generic/docs/00-analisis-referencias/RESUMEN-FASE-0.md

# TOTAL esperado
find projects/erp-generic/docs -type f -name "*.md" -o -name "*.yml" | wc -l
# Debe ser: 38 archivos (aprox, puede variar ligeramente)

APROBACIÓN

Una vez verificado:

  • Revisar calidad de 2-3 análisis Odoo (muestra)
  • Revisar todos los ADRs (críticos)
  • Revisar mapeo de componentes
  • Revisar resumen ejecutivo
  • Aprobar Fase 0 antes de continuar a Fase 1

Creado: 2025-11-23 Versión: 1.0.0 Estado: Listo para uso