""" core — Núcleo de cálculo de CHRONOFLUX (sin dependencias de interfaz). API pública estable. Cualquier interfaz (NiceGUI, FastAPI, scripts, tests) debe importar SOLO desde aquí: from core import auditar_xml, run_simulation, SimulationParams El resto de módulos (engine, models, climate, msproject, orchestrator) son detalles internos que pueden reorganizarse sin romper a los consumidores. """ from .constants import ( PRESETS_MODELOS, COORDENADAS_RD, PRESET_RECOMENDADO, LAT_NEUTRA, LON_NEUTRA, UBIC_NEUTRA, ENFORCE_TR0_RESILIENTES, ) from .climate import ( obtener_feriados_rd, obtener_clima_horario_laboral, es_habil, calcular_pascua, ) from .models import IA_DISPONIBLE, calcular_ic_ia, calcular_tr_y_ic_dinamico from .msproject import AuditResult, auditar_xml, generar_xml_ajustado, extraer_calendario_xml from .engine import ( simular_cronograma, agente_prescriptivo_mitigacion, CicloLogicoError, ) from .orchestrator import ( SimulationParams, SimulationResult, run_simulation, calcular_kpis, resolver_calendario, dias_idx_desde_nombres, NOMBRES_DIAS, ) __all__ = [ "PRESETS_MODELOS", "COORDENADAS_RD", "PRESET_RECOMENDADO", "LAT_NEUTRA", "LON_NEUTRA", "UBIC_NEUTRA", "ENFORCE_TR0_RESILIENTES", "obtener_feriados_rd", "obtener_clima_horario_laboral", "es_habil", "calcular_pascua", "IA_DISPONIBLE", "calcular_ic_ia", "calcular_tr_y_ic_dinamico", "AuditResult", "auditar_xml", "generar_xml_ajustado", "extraer_calendario_xml", "simular_cronograma", "agente_prescriptivo_mitigacion", "CicloLogicoError", "SimulationParams", "SimulationResult", "run_simulation", "calcular_kpis", "resolver_calendario", "dias_idx_desde_nombres", "NOMBRES_DIAS", ]