Sistema NEXUS v3.4 migrado con: Estructura principal: - core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles) - core/catalog: Catalogo de funcionalidades reutilizables - shared/knowledge-base: Base de conocimiento compartida - devtools/scripts: Herramientas de desarrollo - control-plane/registries: Control de servicios y CI/CD - orchestration/: Configuracion de orquestacion de agentes Proyectos incluidos (11): - gamilit (submodule -> GitHub) - trading-platform (OrbiquanTIA) - erp-suite con 5 verticales: - erp-core, construccion, vidrio-templado - mecanicas-diesel, retail, clinicas - betting-analytics - inmobiliaria-analytics - platform_marketing_content - pos-micro, erp-basico Configuracion: - .gitignore completo para Node.js/Python/Docker - gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git) - Sistema de puertos estandarizado (3005-3199) Generated with NEXUS v3.4 Migration System EPIC-010: Configuracion Git y Repositorios
2.5 KiB
2.5 KiB
ADR-007: Database Design Multi-Schema
Estado: Aceptada Fecha: 2025-11-24 Responsable: Architecture-Analyst Proyecto: ERP Construccion
Contexto
La base de datos debe organizar datos de construccion de manera:
- Escalable y mantenible
- Compatible con ERP Generico
- Optimizada para consultas de proyectos/obras
- Con extension para dominios especificos (INFONAVIT, estimaciones)
Decision
Multi-Schema Design con schemas por dominio funcional:
database/ddl/
+-- 01-auth.sql # Autenticacion (GENERICO)
+-- 02-core.sql # Catalogos maestros (GENERICO)
+-- 03-projects.sql # Proyectos base (GENERICO) + extensiones
+-- 04-financial.sql # Financiero (GENERICO)
+-- 05-inventory.sql # Inventario (GENERICO)
+-- 06-purchase.sql # Compras (GENERICO)
+-- 07-sales.sql # Ventas (GENERICO)
+-- 08-analytics.sql # Analitica (GENERICO)
+-- 09-construction.sql # ESPECIFICO: Obra, avances, APUs
+-- 10-infonavit.sql # ESPECIFICO: INFONAVIT, derechohabientes
+-- 11-estimates.sql # ESPECIFICO: Estimaciones, facturacion obra
Schemas especificos de construccion:
construction_management: Fraccionamientos, manzanas, lotes, prototiposinfonavit_compliance: Derechohabientes, actas, cumplimientoestimates_management: Estimaciones, anticipos, retenciones
Justificacion
Referencia a Gamilit
- Organizacion por dominio funcional
- Permisos por schema
Alineacion con ERP Generico
- Schemas 01-08 reutilizados (61%)
- Schemas 09-11 especificos de construccion
Especifico para Construccion
- Tablas de fraccionamientos con relaciones jerarquicas
- Tablas INFONAVIT separadas para auditorias
- PostGIS para ubicaciones de obras
Consecuencias
Positivas
- Organizacion logica +80%
- Permisos granulares por schema
- Reutilizacion de schemas genericos
- Mantenibilidad +50%
Negativas
- Complejidad en joins cross-schema
- Mitigacion: Vistas materializadas para reportes
Implementacion
Acciones Requeridas
- Crear DDL para schemas 09-11 (construccion)
- Configurar indices para queries de proyectos
- Implementar vistas para reportes INFONAVIT
- PostGIS para georreferenciacion
Criterios de Aceptacion
- Schemas genericos compatibles con ERP Generico
- Schemas especificos aislados
- Performance de queries < 100ms para dashboards