workspace-v1/projects/erp-construccion/docs/97-adr/ADR-001-stack-tecnologico.md
rckrdmrd 66161b1566 feat: Workspace-v1 complete migration with NEXUS v3.4
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
2026-01-04 03:37:42 -06:00

99 lines
3.0 KiB
Markdown

# ADR-001: Stack Tecnologico
**Estado:** Aceptada
**Fecha:** 2025-11-24
**Responsable:** Architecture-Analyst
**Proyecto:** ERP Construccion
## Contexto
Necesitamos definir el stack tecnologico para el ERP de Construccion que sea:
- Moderno y mantenible
- Compatible con ERP Generico para reutilizacion
- Con ecosistema maduro y soporte a largo plazo
- Adecuado para la industria de construccion e INFONAVIT
## Decision
**Backend:** Node.js 20+ LTS + Express 4.18+ + TypeScript 5+
**Frontend:** React 18+ + Vite 5+ + TypeScript 5+
**Database:** PostgreSQL 15+ + PostGIS
**Mobile:** React Native (futuro - para asistencias GPS)
## Justificacion
### Referencia a Gamilit
- Stack probado en produccion (2+ anos)
- Node.js 20 LTS (soporte hasta 2026)
- TypeScript garantiza type safety completo
- Vite build tool moderno (HMR rapido)
- PostgreSQL 15 con mejoras de performance
### Referencia a Odoo
- PostgreSQL es el mismo RDBMS que usa Odoo (probado a escala)
- Patrones de contabilidad y multi-tenancy adoptados
### Alineacion con ERP Generico
- Mismo stack permite reutilizacion de componentes (61%)
- Equipo con experiencia en este stack
- Migracion sera mas sencilla
### Especifico para Construccion
- PostGIS para ubicaciones de obras y GPS
- Node.js async ideal para procesamiento de estimaciones
- React Native para apps de asistencia en campo
## Consecuencias
### Positivas
- Ecosistema maduro (npm, TypeScript, React)
- Reutilizacion de conocimiento del equipo
- Type safety completo (reduce bugs 40%)
- Performance excelente (Node.js async I/O)
- PostgreSQL altamente escalable
- PostGIS para georreferenciacion de proyectos
### Negativas
- Node.js single-threaded (mitigado con clustering)
- JavaScript puede ser permisivo (mitigado con TypeScript strict mode)
## Alternativas Consideradas
**1. Python + Django + PostgreSQL**
- Pros: Mas cercano a Odoo
- Contras: Equipo no tiene experiencia, no compatible con ERP Generico
- Rechazada: No permite reutilizacion
**2. Java + Spring Boot + PostgreSQL**
- Pros: Enterprise-grade, muy robusto
- Contras: No compatible con ERP Generico, curva aprendizaje alta
- Rechazada: Overhead de desarrollo alto
## Implementacion
### Acciones Requeridas
- [x] Configurar proyecto con Node.js 20 LTS
- [x] Setup TypeScript con strict mode
- [x] Configurar React 18 + Vite
- [x] Setup PostgreSQL 15 + PostGIS
- [ ] Configurar React Native para app movil
### Criterios de Aceptacion
- Build exitoso sin errores TypeScript
- HMR funcional en <1s
- PostgreSQL con PostGIS funcional
- Compatibilidad con ERP Generico validada
### Riesgos y Mitigacion
- **Riesgo:** Problemas de performance con Node.js single-threaded
- **Mitigacion:** Usar clustering, workers threads para tareas pesadas
## Referencias
- [ERP Generico ADR-001](../../erp-generic/docs/adr/ADR-001-stack-tecnologico.md)
- [Gamilit Stack](../../shared/reference/gamilit/backend-patterns.md)
- [Node.js 20 LTS](https://nodejs.org)
## Notas Adicionales
Stack compatible con despliegue en Docker/Kubernetes.
Compatible con integraciones INFONAVIT via API REST.