# Contexto del Proyecto: ERP Construccion ## Metadatos | Campo | Valor | |-------|-------| | **Nombre** | ERP Construccion - Vertical INFONAVIT | | **Tipo** | STANDALONE (Proyecto Independiente) | | **Nivel** | Vertical que extiende erp-core | | **Estado** | En desarrollo | | **Progreso** | 35% | | **Version** | 1.0.0 | | **Base** | Extiende projects/erp-core (60-70%) | | **Extension** | Modulos especificos (+30-40%) | | **Path** | `/home/isem/workspace-v1/projects/erp-construccion/` | | **Fecha Migracion** | 2025-12-27 | --- ## VARIABLES PARA DIRECTIVAS GLOBALES ```yaml # Identificacion del Proyecto PROJECT: erp-construccion PROJECT_NAME: ERP Construccion PROJECT_LEVEL: STANDALONE # Paths Principales (WORKSPACE-V1) WORKSPACE_ROOT: ~/workspace-v1 PROJECT_ROOT: ~/workspace-v1/projects/erp-construccion APPS_ROOT: ~/workspace-v1/projects/erp-construccion DOCS_ROOT: ~/workspace-v1/projects/erp-construccion/docs ORCHESTRATION: ~/workspace-v1/projects/erp-construccion/orchestration # Herencia de ERP-Core ERP_CORE_ROOT: ~/workspace-v1/projects/erp-core HERENCIA_DOC: orchestration/00-guidelines/HERENCIA-ERP-CORE.md # Base Orchestration (Directivas y Perfiles) DIRECTIVAS_PATH: ~/workspace-v1/orchestration/directivas PERFILES_PATH: ~/workspace-v1/orchestration/agents/perfiles CATALOG_PATH: ~/workspace-v1/shared/catalog # Base de Datos DB_NAME: erp_construccion DB_DDL_PATH: ~/workspace-v1/projects/erp-construccion/database/ddl DB_SCRIPTS_PATH: ~/workspace-v1/projects/erp-construccion/database # Backend BACKEND_ROOT: ~/workspace-v1/projects/erp-construccion/backend BACKEND_SRC: ~/workspace-v1/projects/erp-construccion/backend/src # Frontend FRONTEND_ROOT: ~/workspace-v1/projects/erp-construccion/frontend FRONTEND_SRC: ~/workspace-v1/projects/erp-construccion/frontend/src ``` --- ## Descripción Vertical especializada para empresas constructoras con integración INFONAVIT. Extiende el erp-core con módulos específicos para: - Gestión de proyectos de construcción (horizontal, vertical, mixto) - Presupuestos y control de costos por partida - Estimaciones y avances de obra - Integración con programas INFONAVIT - Control de calidad y postventa - CRM para derechohabientes ## Arquitectura de Herencia ``` ┌────────────────────────────────────────────────────────────────┐ │ Global Workspace (core/) │ │ Directivas globales, templates, prompts base │ └──────────────────────────┬─────────────────────────────────────┘ │ hereda ┌──────────────────────────▼─────────────────────────────────────┐ │ ERP-Suite (erp-core) │ │ Módulos base: auth, users, roles, tenants, catalogs │ │ 60-70% de funcionalidad compartida │ └──────────────────────────┬─────────────────────────────────────┘ │ extiende ┌──────────────────────────▼─────────────────────────────────────┐ │ Vertical Construcción │ │ +30-40% funcionalidad específica │ │ Proyectos, presupuestos, estimaciones, INFONAVIT │ └────────────────────────────────────────────────────────────────┘ ``` ## Stack Tecnológico ### Backend | Componente | Tecnología | Versión | |------------|------------|---------| | Runtime | Node.js | 20+ | | Framework | Express.js | 4.x | | Lenguaje | TypeScript | 5.3+ | | ORM | TypeORM | 0.3.17 | | Database | PostgreSQL | 15+ | | Auth | JWT + bcryptjs | - | | Validación | class-validator + Zod | - | | Logs | Winston | - | ### Frontend Web | Componente | Tecnología | Versión | |------------|------------|---------| | Framework | React | 18 | | Build | Vite | 5.x | | Lenguaje | TypeScript | 5.3+ | | State | Zustand | - | | Styling | Tailwind CSS | 4.x | | Forms | React Hook Form + Zod | - | | Tables | TanStack Table | - | | Charts | Recharts | - | ### Frontend Mobile | Componente | Tecnología | Versión | |------------|------------|---------| | Framework | React Native | 0.73+ | | Build | Expo | 50+ | | Navigation | React Navigation | 6.x | | Offline | WatermelonDB | - | ## Paths del Proyecto ```yaml raiz: /home/isem/workspace-v1/projects/erp-suite/apps/verticales/construccion/ estructura: backend/: Extensiones backend src/: modules/: Módulos específicos shared/: Código compartido config/: Configuraciones frontend/: web/: Aplicación web src/: components/: Componentes React pages/: Páginas/Vistas stores/: Estado Zustand services/: API clients hooks/: Custom hooks types/: TypeScript types mobile/: App móvil para campo src/: screens/: Pantallas components/: Componentes services/: API + offline database/: ddl/: Scripts DDL por schema migrations/: Migraciones seeds/: Datos semilla docs/: Documentación completa (403+ archivos) 00-overview/: Visión general, glosario 00-analisis-referencias/: Análisis de otros ERPs 01-fase-alcance-inicial/: 15 módulos MAI-* 02-fase-enterprise/: 3 épicas MAE-* 02-modelado/: Schemas SQL 03-fase-avanzada/: Épicas MAA-* orchestration/: Sistema de agentes 00-guidelines/: Este archivo, herencia 01-analisis/: Análisis de tareas 02-planeacion/: Planes de trabajo 03-tareas/: Tareas por agente 04-ejecucion-logs/: Logs de ejecución 05-validaciones/: Checklists directivas/: Directivas específicas prompts/: Prompts especializados trazas/: Historial por agente estados/: Estado de agentes inventarios/: Inventarios YAML ``` ## Módulos del Sistema ### Fase 1: Alcance Inicial (15 módulos - 210 SP) | Código | Módulo | Descripción | SP | Estado | |--------|--------|-------------|-----|--------| | MAI-001 | Fundamentos | Auth, usuarios, roles (extiende core) | 15 | Planificado | | MAI-002 | Proyectos | Gestión de proyectos y estructura | 20 | Planificado | | MAI-003 | Presupuestos | Presupuestos y control de costos | 25 | Planificado | | MAI-004 | Compras | Compras e inventarios de obra | 20 | Planificado | | MAI-005 | Control Obra | Avances y recursos | 15 | Planificado | | MAI-006 | Reportes | Analytics y reportería | 10 | Planificado | | MAI-007 | RRHH | Recursos humanos y asistencias | 15 | Planificado | | MAI-008 | Estimaciones | Estimaciones y facturación | 20 | Planificado | | MAI-009 | Calidad | Calidad y postventa | 15 | Planificado | | MAI-010 | CRM | CRM Derechohabientes | 15 | Planificado | | MAI-011 | INFONAVIT | Integración INFONAVIT | 15 | Planificado | | MAI-012 | Contratos | Contratos y subcontratos | 10 | Planificado | | MAI-013 | Administración | Seguridad y administración | 10 | Planificado | | MAI-018 | Preconstrucción | Licitaciones y propuestas | 5 | Planificado | ### Fase 2: Enterprise (3 épicas - 210 SP) | Código | Épica | Descripción | SP | Estado | |--------|-------|-------------|-----|--------| | MAE-014 | Finanzas | Finanzas y Controlling | 80 | Planificado | | MAE-015 | Activos | Activos y Maquinaria | 70 | Planificado | | MAE-016 | Documental | Gestión Documental | 60 | Planificado | ### Fase 3: Avanzada (1 épica) | Código | Épica | Descripción | Estado | |--------|-------|-------------|--------| | MAA-017 | HSE | Seguridad, Higiene y Ambiente | Planificado | ## Schemas de Base de Datos ### Schemas Específicos de Construcción | Schema | Descripción | Tablas Estimadas | |--------|-------------|------------------| | `project_management` | Proyectos, fases, unidades | 8 | | `financial_management` | Presupuestos, estimaciones | 10 | | `purchasing_management` | Compras, proveedores | 8 | | `construction_management` | Avances, recursos | 6 | | `quality_management` | Inspecciones, calidad | 5 | | `infonavit_management` | Cumplimiento INFONAVIT | 6 | | `contracts_management` | Contratos, subcontratos | 5 | | `crm_management` | CRM derechohabientes | 6 | | `hr_management` | RRHH específico | 4 | ### Extensión de Core | Schema Core | Extensión | |-------------|-----------| | `core_auth` → | `auth_management` (campos adicionales) | | `core_catalogs` → | `catalog_management` (catálogos construcción) | ## Convenciones de Nomenclatura ### Códigos de Entidades ```yaml proyectos: formato: "PROJ-{YYYY}-{NNN}" ejemplo: "PROJ-2025-001" fases: formato: "{PROJ_CODE}-E{NN}" ejemplo: "PROJ-2025-001-E03" unidades: horizontal: "M{MZ}-L{LT}" # Manzana-Lote vertical: "T{TW}-P{PO}-D{DP}" # Torre-Piso-Depto ejemplo: "M15-L07" / "T01-P05-D02" presupuesto: partida: "{NN}" # 01 subpartida: "{NN}.{NN}" # 01.03 concepto: "{NN}.{NN}.{NNN}" # 01.03.015 estimaciones: formato: "EST-{PROJ}-{NNN}" ejemplo: "EST-PROJ-2025-001-015" contratos: formato: "CTR-{YYYY}-{NNN}" ejemplo: "CTR-2025-042" ``` ### Nomenclatura de Código ```yaml archivos: typescript: kebab-case.tipo.ts componentes: PascalCase.tsx tests: nombre.spec.ts / nombre.test.ts clases: entidades: {Nombre}Entity servicios: {Nombre}Service controllers: {Nombre}Controller dtos: Create{Nombre}Dto, Update{Nombre}Dto métodos: CRUD: findAll, findById, create, update, delete específicos: camelCase + verbo descriptivo schemas_bd: formato: {dominio}_management tablas: snake_case_plural columnas: snake_case ``` ## Directivas Específicas ### Directivas Heredadas (de Core) 1. **Multi-Tenant**: `tenant_id` obligatorio en toda query 2. **RLS Policies**: Aislamiento por tenant 3. **Auditoría**: Columnas de tracking obligatorias 4. **Extensión**: No modificar core, solo extender ### Directivas Propias | Archivo | Alcance | Descripción | |---------|---------|-------------| | `DIRECTIVA-INTEGRACION-INFONAVIT.md` | MAI-011 | Reglas para integración INFONAVIT | | `DIRECTIVA-CONTROL-OBRA.md` | MAI-002,005,012 | Jerarquía de proyectos, avances | | `DIRECTIVA-ESTIMACIONES.md` | MAI-008 | Estimaciones, retenciones, anticipos | ## Flujo de Trabajo de Agentes ### Análisis 1. Leer `/docs/01-fase-alcance-inicial/MAI-{XXX}/` del módulo 2. Revisar especificaciones en `/especificaciones/` 3. Verificar directivas aplicables ### Planeación 1. Documentar en `/orchestration/02-planeacion/` 2. Crear tareas en `/orchestration/03-tareas/` ### Ejecución 1. Seguir prompts específicos 2. Aplicar directivas de construcción 3. Registrar logs en `/04-ejecucion-logs/` ### Validación 1. Ejecutar checklists en `/05-validaciones/` 2. Verificar multi-tenant, RLS, tests ### Trazabilidad 1. Registrar en `/orchestration/trazas/TRAZA-TAREAS-{AGENTE}.md` 2. Actualizar `/orchestration/estados/ESTADO-AGENTES.json` ## Prompts Disponibles | Prompt | Uso | |--------|-----| | `PROMPT-CONSTRUCCION-BACKEND-AGENT.md` | Desarrollo backend específico | | `PROMPT-CONSTRUCCION-DATABASE-AGENT.md` | DDL, schemas, RLS | | `PROMPT-CONSTRUCCION-FRONTEND-AGENT.md` | UI/UX específica | ## Referencias Clave ### Documentación - **Especificaciones técnicas:** `/docs/01-fase-alcance-inicial/MAI-*/especificaciones/` - **Schemas SQL:** `/docs/02-modelado/database-design/schemas/` - **RLS Policies:** `/docs/01-fase-alcance-inicial/*/implementacion/*-rls-policies.sql` - **Historias de usuario:** `/docs/01-fase-alcance-inicial/MAI-*/historias-usuario/` ### Código de Referencia - **Core base:** `/home/isem/workspace-v1/projects/erp-suite/apps/erp-core/` - **Catálogo core:** `/home/isem/workspace-v1/shared/catalog/` ### Herencia de Directivas - **Globales:** `/home/isem/workspace-v1/core/orchestration/directivas/` - **ERP Core:** `/home/isem/workspace-v1/projects/erp-suite/apps/erp-core/orchestration/directivas/` - **Construcción:** `./directivas/` --- *Última actualización: Diciembre 2025* *Sistema NEXUS - ERP Construcción Vertical*