Some checks failed
CI Pipeline / Lint & Type Check (push) Has been cancelled
CI Pipeline / Validate SSOT Constants (push) Has been cancelled
CI Pipeline / Backend Tests (push) Has been cancelled
CI Pipeline / Frontend Tests (push) Has been cancelled
CI Pipeline / Build (push) Has been cancelled
CI Pipeline / Docker Build (push) Has been cancelled
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
366 lines
12 KiB
Markdown
366 lines
12 KiB
Markdown
# 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*
|