From a5f71df15dca6099d6a0165233f869530520cf0c Mon Sep 17 00:00:00 2001 From: Ricardo Monla Date: Sun, 15 Mar 2026 17:19:14 -0300 Subject: [PATCH] =?UTF-8?q?[P2604-S13]=20Consolidar=20core/=20=E2=80=94=20?= =?UTF-8?q?l=C3=B3gica=20de=20dominio=20a=20subm=C3=B3dulos=20CLI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Arquitectura antes: core/nodos_info.rb → usado por 4 CLIs core/ejecutor_remoto.rb → usado por proceso.rb core/triggers.rb → usado por triggers.rb core/eventos.rb → usado por triggers.rb core/configurador.rb → usado por backup.rb Arquitectura después: cli/nodos/info.rb ← submódulo de nodos cli/ssh/ejecutor.rb ← submódulo de ssh cli/triggers/motor.rb ← submódulo de triggers cli/triggers/eventos.rb ← submódulo de triggers cli/backup/configurador.rb ← submódulo de backup core/ queda limpio con solo infraestructura genuina: colores, constants, error_handler, logger, help_formatter, conciliador (transversal), validador (obsoleto) - 15 tests pasan sin regresiones - Evento 1078 (17:14→17:17) --- adn/tools/cli/backup.rb | 2 +- adn/tools/{core => cli/backup}/configurador.rb | 0 adn/tools/cli/contexto.rb | 2 +- adn/tools/cli/nodos.rb | 2 +- .../{core/nodos_info.rb => cli/nodos/info.rb} | 4 ++-- adn/tools/cli/proceso.rb | 4 ++-- adn/tools/cli/ssh.rb | 2 +- .../ejecutor_remoto.rb => cli/ssh/ejecutor.rb} | 4 ++-- adn/tools/cli/triggers.rb | 4 ++-- adn/tools/{core => cli/triggers}/eventos.rb | 0 .../{core/triggers.rb => cli/triggers/motor.rb} | 0 adn/tools/core/conciliador.rb | 2 +- adn/tools/run | 4 ++-- docs/prompt/260315-1712_Continua.md | 15 +++++++++++++++ docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md | 1 + 15 files changed, 31 insertions(+), 15 deletions(-) rename adn/tools/{core => cli/backup}/configurador.rb (100%) rename adn/tools/{core/nodos_info.rb => cli/nodos/info.rb} (96%) rename adn/tools/{core/ejecutor_remoto.rb => cli/ssh/ejecutor.rb} (94%) rename adn/tools/{core => cli/triggers}/eventos.rb (100%) rename adn/tools/{core/triggers.rb => cli/triggers/motor.rb} (100%) create mode 100644 docs/prompt/260315-1712_Continua.md diff --git a/adn/tools/cli/backup.rb b/adn/tools/cli/backup.rb index 447b44e2..31a40906 100644 --- a/adn/tools/cli/backup.rb +++ b/adn/tools/cli/backup.rb @@ -3,7 +3,7 @@ require 'optparse' require 'fileutils' require 'date' -require_relative '../core/configurador' +require_relative 'backup/configurador' module ADN class SubcomandoBackup diff --git a/adn/tools/core/configurador.rb b/adn/tools/cli/backup/configurador.rb similarity index 100% rename from adn/tools/core/configurador.rb rename to adn/tools/cli/backup/configurador.rb diff --git a/adn/tools/cli/contexto.rb b/adn/tools/cli/contexto.rb index 5313348d..d44605fd 100644 --- a/adn/tools/cli/contexto.rb +++ b/adn/tools/cli/contexto.rb @@ -2,7 +2,7 @@ require 'optparse' require_relative '../core/colores' -require_relative '../core/nodos_info' +require_relative 'nodos/info' class SubcomandoContexto def initialize(args, logger) diff --git a/adn/tools/cli/nodos.rb b/adn/tools/cli/nodos.rb index e83b6eeb..264289eb 100644 --- a/adn/tools/cli/nodos.rb +++ b/adn/tools/cli/nodos.rb @@ -9,7 +9,7 @@ require 'optparse' require_relative '../core/colores' -require_relative '../core/nodos_info' +require_relative 'nodos/info' require_relative '../core/help_formatter' module ADN diff --git a/adn/tools/core/nodos_info.rb b/adn/tools/cli/nodos/info.rb similarity index 96% rename from adn/tools/core/nodos_info.rb rename to adn/tools/cli/nodos/info.rb index fc55dfa0..8b4bb1ca 100644 --- a/adn/tools/core/nodos_info.rb +++ b/adn/tools/cli/nodos/info.rb @@ -1,9 +1,9 @@ # frozen_string_literal: true -# adn/tools/core/nodos_info.rb — Utilidades para extracción de metadatos de fichas de nodos +# adn/tools/cli/nodos/info.rb — Utilidades para extracción de metadatos de fichas de nodos # ====================================================================================== -require_relative 'constants' +require_relative '../../core/constants' module ADN module NodosInfo diff --git a/adn/tools/cli/proceso.rb b/adn/tools/cli/proceso.rb index 8352b66d..333c990d 100644 --- a/adn/tools/cli/proceso.rb +++ b/adn/tools/cli/proceso.rb @@ -8,8 +8,8 @@ require 'open3' require 'date' require_relative '../core/colores' -require_relative '../core/nodos_info' -require_relative '../core/ejecutor_remoto' +require_relative 'nodos/info' +require_relative 'ssh/ejecutor' require_relative '../db/core/bitacora_db' module ADN diff --git a/adn/tools/cli/ssh.rb b/adn/tools/cli/ssh.rb index d9d7e731..5fd7049c 100644 --- a/adn/tools/cli/ssh.rb +++ b/adn/tools/cli/ssh.rb @@ -17,7 +17,7 @@ require 'shellwords' require_relative '../core/colores' require_relative '../core/constants' require_relative '../core/error_handler' -require_relative '../core/nodos_info' +require_relative 'nodos/info' module ADN class SubcomandoSSH diff --git a/adn/tools/core/ejecutor_remoto.rb b/adn/tools/cli/ssh/ejecutor.rb similarity index 94% rename from adn/tools/core/ejecutor_remoto.rb rename to adn/tools/cli/ssh/ejecutor.rb index f858bc75..0a80f4e7 100644 --- a/adn/tools/core/ejecutor_remoto.rb +++ b/adn/tools/cli/ssh/ejecutor.rb @@ -1,10 +1,10 @@ # frozen_string_literal: true -# adn/tools/core/ejecutor_remoto.rb — Abstracción para ejecución segura via SSH y Candados +# adn/tools/cli/ssh/ejecutor.rb — Abstracción para ejecución segura via SSH y Candados # ====================================================================================== require 'open3' -require_relative 'constants' +require_relative '../../core/constants' module ADN class EjecutorRemoto diff --git a/adn/tools/cli/triggers.rb b/adn/tools/cli/triggers.rb index 46226b2a..a8d89698 100644 --- a/adn/tools/cli/triggers.rb +++ b/adn/tools/cli/triggers.rb @@ -12,8 +12,8 @@ # 📚 Referencia: docs/plan/260307-1400_Plan_Mejoras_ADN.md require 'optparse' -require_relative '../core/triggers' -require_relative '../core/eventos' +require_relative 'triggers/motor' +require_relative 'triggers/eventos' module ADN class SubcomandoTriggers diff --git a/adn/tools/core/eventos.rb b/adn/tools/cli/triggers/eventos.rb similarity index 100% rename from adn/tools/core/eventos.rb rename to adn/tools/cli/triggers/eventos.rb diff --git a/adn/tools/core/triggers.rb b/adn/tools/cli/triggers/motor.rb similarity index 100% rename from adn/tools/core/triggers.rb rename to adn/tools/cli/triggers/motor.rb diff --git a/adn/tools/core/conciliador.rb b/adn/tools/core/conciliador.rb index 946fc345..e8121242 100644 --- a/adn/tools/core/conciliador.rb +++ b/adn/tools/core/conciliador.rb @@ -3,7 +3,7 @@ require 'date' require 'time' require 'json' -require_relative 'configurador' +require_relative '../cli/backup/configurador' module ADN class Conciliador diff --git a/adn/tools/run b/adn/tools/run index 232a3408..07be1d21 100755 --- a/adn/tools/run +++ b/adn/tools/run @@ -42,8 +42,8 @@ module ADN end require_relative 'core/logger' -require_relative 'core/eventos' -require_relative 'core/triggers' +require_relative 'cli/triggers/eventos' +require_relative 'cli/triggers/motor' require_relative 'cli/db' require_relative 'cli/plan' require_relative 'cli/backup' diff --git a/docs/prompt/260315-1712_Continua.md b/docs/prompt/260315-1712_Continua.md new file mode 100644 index 00000000..012c7355 --- /dev/null +++ b/docs/prompt/260315-1712_Continua.md @@ -0,0 +1,15 @@ +Vamos a seguir agregando mejoras al ecosistema ADN a gregando nuevas herramientas y mejorando las existentes segun el plan docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md. +Puedes buscar como mejorar y sanear las herramientas existentes. + + +Continúa el trabajo priorizando siempre el uso y la optimización de las herramientas definidas en el ecosistema ADN, con el objetivo de mejorarlas y hacerlas reutilizables en el futuro. Si es necesario crear nuevas herramientas, asegúrate de que sigan los mismos principios de sostenibilidad y evita soluciones temporales o de un solo uso. + +Para más contexto, consulta los lineamientos en `adn/README.md`, así como el índice actualizado de herramientas disponibles en ADN. + +Recuerda seguir el flujo de trabajo establecido: +1. Actualizar el plan. +2. Documentar el progreso en la bitácora web. +3. Ejecutar las tareas correspondientes. + +**Menos es mas, mejora continua y armonía integral** + diff --git a/docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md b/docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md index eaa5cd7e..0c8fc5a2 100644 --- a/docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md +++ b/docs/proy/p2604_mejoras_ADN/P2604_mejoras_ADN.md @@ -155,6 +155,7 @@ Mejoras atómicas, incrementales y reutilizables. Una herramienta por vez. | S10 | Migrar `SubcomandoSalud` al namespace `ADN::` | Refactor | ⏳ | | S11 | Crear CLI `ssh` — ejecución remota reutilizable via `candados` + `EjecutorRemoto` | Herramienta | ✅ | | S12 | Refactorizar `ssh.rb` — leer datos de fichas via `NodosInfo`, eliminar hash hardcodeado | Refactor | ✅ | +| S13 | Consolidar `core/` — mover lógica de dominio a submódulos CLI (`nodos_info`→`nodos/`, etc.) | Arquitectura | ✅ | ---