# frozen_string_literal: true # adn/tools/core/constants.rb — Definición centralizada de rutas y constantes del ADN # ============================================================================== # Este módulo centraliza todas las constantes reutilizables del sistema ADN. # Following: Menos es Más (una fuente de verdad) module ADN # === RUTAS DEL PROYECTO === PROJECT_ROOT = File.expand_path('../../..', __dir__) NODOS_DIR = File.join(PROJECT_ROOT, 'nodos') PROYECTOS_DIR = File.join(PROJECT_ROOT, 'docs', 'proyectos') BITACORAS_DIR = File.join(PROJECT_ROOT, 'docs', 'bitacoras') LOGS_DIR = File.join(BITACORAS_DIR, '_hist') TOOLS_DIR = File.join(PROJECT_ROOT, 'adn', 'tools') SEGURIDAD_DIR = File.join(TOOLS_DIR, 'seguridad') CANDADOS_PATH = File.join(SEGURIDAD_DIR, 'ns8-candados.rb') # === ESTADOS DE BITÁCORA === ESTADOS = { pendiente: '⏳', completado: '✅', fallido: '❌', advertencia: '⚠️', pausado: '⏸️', en_proceso: '📍' }.freeze # === MODOS DE TRABAJO === MODOS = { presencial: 'P', remoto: 'R' }.freeze # === CONFIGURACIÓN DE BASE DE DATOS === DB_CONFIG = { host: 'localhost', puerto: 5433, nombre: 'dtic_bitacoras', schema: 'bitacoras' }.freeze # === EXCEPCIONES PERSONALIZADAS === class Error < StandardError; end class ConfigError < Error; end class DBError < Error; end class ValidationError < Error; end class NetworkError < Error; end # === VERSIÓN === VERSION = '1.0.0'.freeze end