workspace-v1/projects/erp-suite/apps/verticales/construccion/docs/97-adr/ADR-005-path-aliases.md
Adrian Flores Cortes 967ab360bb Initial commit: Workspace v1 with 3-layer architecture
Structure:
- control-plane/: Registries, SIMCO directives, CI/CD templates
- projects/: Gamilit, ERP-Suite, Trading-Platform, Betting-Analytics
- shared/: Libs catalog, knowledge-base

Key features:
- Centralized port, domain, database, and service registries
- 23 SIMCO directives + 6 fundamental principles
- NEXUS agent profiles with delegation rules
- Validation scripts for workspace integrity
- Dockerfiles for all services
- Path aliases for quick reference

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 00:35:19 -06:00

1.5 KiB

ADR-005: Path Aliases

Estado: Aceptada Fecha: 2025-11-24 Responsable: Architecture-Analyst Proyecto: ERP Construccion

Contexto

Imports relativos profundos dificultan refactoring y legibilidad.

Decision

Path aliases en Backend y Frontend:

// Antes
import { Button } from '../../../shared/ui/Button';

// Despues
import { Button } from '@shared/ui';
import { ProjectStatus } from '@construccion/constants';

Aliases:

  • @shared - Componentes compartidos
  • @modules - Modulos de negocio
  • @construccion - Modulos especificos de construccion
  • @erp-generic - Imports del ERP Generico

Justificacion

Referencia a Gamilit

  • Imports limpios y consistentes
  • Refactoring facil

Especifico para Construccion

  • Separacion clara entre generico y especifico
  • @construccion para modulos de obra, INFONAVIT, etc.

Consecuencias

Positivas

  • Imports limpios
  • Refactoring facil (mover carpetas sin romper imports)
  • Claridad en origen de modulos

Negativas

  • Configuracion inicial en tsconfig
  • Mitigacion: Setup una sola vez

Implementacion

Acciones Requeridas

  • Configurar tsconfig.json con aliases
  • Configurar vite.config.ts con aliases
  • Refactorizar imports existentes

Criterios de Aceptacion

  • Todos los imports usan aliases
  • Build funcional con aliases
  • IDE resuelve aliases correctamente

Referencias