# 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 - [x] `/shared/reference/ODOO-MODULES-ANALYSIS.md` existe - [x] `/shared/reference/gamilit/` existe con README.md y _MAP.md - [x] `/projects/erp-construccion/docs/` existe con documentación ### 2. Estructura de Carpetas - [x] `/projects/erp-generic/docs/00-analisis-referencias/` creada - [x] `/projects/erp-generic/docs/adr/` creada ### 3. Prompt Extendido - [x] `/shared/orchestration/prompts/PROMPT-ARCHITECTURE-ANALYST-EXTENDED.md` existe ### 4. Plan Maestro - [x] `/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:** ```markdown # 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