# Plan de Mejoras para el ADN del Proyecto srv-ns8: Hacia la Autonomía Ruby **Fecha:** 07/03/2026 - 14:00 (Actualizado 14:40) **Estado:** 📍 Definido **Relacionado:** P2603 (Sistema de Bitácoras) --- ## 📋 Resumen Ejecutivo El **ADN del proyecto** (conjunto de 7 hebras en `adn/`) constituye la fuente única de verdad que gobierna la operación, documentación y evolución del sistema `srv-ns8`. Este plan propone una **transformación hacia la autonomía completa** mediante: 1. **Arquitectura Ruby unificada**: Sistema integrado en `tools/adn/` con CLI única. 2. **Reducción progresiva de dependencia de IA**: KPIs cuantificables para minimizar intervención de IA. 3. **Automatización end-to-end**: Observadores de archivos, hooks Git, triggers automáticos y cron. 4. **Propagación automática**: Implementación real del Principio de Armonía Integral. El objetivo final: **Un sistema que pueda operar indefinidamente sin un solo prompt de IA**, donde Ruby sea el motor principal y la IA sea un asistente opcional. --- ## 🎯 Objetivos Estratégicos 1. **Autonomía por Diseño**: Cada script Ruby debe ejecutarse sin interpretación previa de IA. 2. **Arquitectura Integrada**: Sistema unificado `tools/adn/` con CLI común y API coherente. 3. **Reducción Medible de Dependencia IA**: Disminuir acciones IA/día de 5-10 a <2 en 8 semanas. 4. **Propagación Automática (Armonía)**: Cambios en una hebra se propaguen automáticamente a dependientes. 5. **Validación Continua en Tiempo Real**: Observadores de archivos y hooks Git que validen cada cambio. 6. **Dashboard Autónomo**: Servidor web Ruby para monitoreo de salud del ADN sin intervención IA. --- ## 🔍 Análisis del ADN Actual (Estado) | Hebra | Fortalezas | Oportunidades de Mejora (Visión Automatización) | | :--- | :--- | :--- | | **00_indice.md** | Visión clara de interconexiones. | Podría incluir mapa visual generado automáticamente por `tools/adn.rb mapa`. | | **01_ontologia.md** | Topología completa y actualizada. | Actualización automática de estados de nodos via `tools/adn.rb ontologia --sync`. | | **02_bitacora.md** | Triggers bien definidos. | Implementación automática via `tools/adn/triggers.rb` con reglas YAML. | | **03_seguridad.md** | Bóveda robusta (`ns8-candados`). | Auditoría automática de uso de secretos y logs estructurados JSON. | | **04_iconografia.md** | Taxonomía visual útil. | Extensión a dashboards automáticos generados por Sinatra. | | **05_ia.md** | Fuente única de verdad clara. | **Reducción progresiva**: De referencia diaria a semanal, luego mensual. | | **06_gobernanza.md** | Principios sólidos (Armonía, Evolución). | Proceso de evolución formal con CLI `tools/adn.rb evolucion`. | | **07_proyectos.md** | Modelo transversal efectivo. | Integración automática con bitácoras via sistema de eventos. | --- ## 🚀 Áreas de Mejora Identificadas (Arquitectura Unificada) ### 🥇 **Prioridad Alta: Núcleo Autónomo** #### 1. **`tools/adn/` - Arquitectura Unificada** - **Problema**: Scripts Ruby dispersos sin interfaz común. - **Solución**: Directorio estructurado con módulos integrados: ``` tools/adn/ ├── adn.rb # CLI principal ├── validador.rb # Validación en tiempo real ├── triggers.rb # Sistema de eventos YAML ├── contexto.rb # Motor de inferencia topológica ├── eventos.rb # Bus de eventos interno ├── dashboard.rb # Servidor web Sinatra ├── backup.rb # Versionado semántico ├── logger.rb # Logging estructurado JSON └── config.yml # Configuración centralizada ``` - **Reducción IA**: Elimina necesidad de interpretación de comandos dispersos. #### 2. **`tools/adn.rb` - CLI Unificada** - **Problema**: Múltiples comandos Ruby con interfaces inconsistentes. - **Solución**: Interfaz única con subcomandos estandarizados: ```bash ruby tools/adn.rb validador [--watch] [--fix] # Validación automática ruby tools/adn.rb triggers [--test] [--force] # Ejecución triggers ruby tools/adn.rb contexto [--cmd] # Contexto automático ruby tools/adn.rb evolucion # Gestión evolución ruby tools/adn.rb salud [--dashboard] [--json] # Salud del ADN ruby tools/adn.rb generar bitacora [fecha] # Generadores ruby tools/adn.rb generar nodo # Plantillas ruby tools/adn.rb generar proyecto # Manifiestos ``` - **Beneficio**: Interfaz coherente, fácil de documentar y usar sin IA. #### 3. **Validación en Tiempo Real con Hooks Git** - **Problema**: Validación manual o por IA de cumplimiento del ADN. - **Solución**: `tools/adn/validador.rb` con: - Observador de sistema de archivos (`listen` gem) para `bitacoras/`. - Hook Git pre-commit que rechace commits con errores de formato. - Notificaciones desktop/libnotify cuando detecte inconsistencias. - **Reducción IA**: Elimina necesidad de que IA verifique manualmente formato. ### 🥈 **Prioridad Media: Automatización Inteligente** #### 4. **Sistema de Triggers Basado en YAML** - **Problema**: Triggers de `02_bitacora.md` implementados manualmente. - **Solución**: `tools/adn/triggers.rb` con reglas en `adn/triggers.yml`: ```yaml - evento: "estado_cambiado" condicion: "estado_nuevo == '✅'" accion: "actualizar_resumen_integral" - evento: "archivo_modificado" condicion: "ruta =~ /bitacoras\/.*\.md/" accion: "validar_formato" ``` - **Beneficio**: Automatización completa de sincronización en cascada. #### 5. **Motor de Contexto Automático** - **Problema**: IA debe "auto-contextualizarse" manualmente antes de operar. - **Solución**: `tools/adn/contexto.rb` que: - Analiza estáticamente `nodos/`, `proyectos/`, `adn/01_ontologia.md`. - Determina topología de red y requisitos de acceso. - Genera comandos SSH con ProxyJump cuando sea necesario. - Cachea resultados en `tmp/contexto-cache.json`. - **Reducción IA**: Elimina "auto-contextualización" manual por IA. #### 6. **Dashboard Autónomo Sinatra** - **Problema**: Dashboard requiere actualización manual o por IA. - **Solución**: `tools/adn/dashboard.rb` - Servidor web Ruby con: - Panel en tiempo real (WebSockets) de validaciones. - Gráficos de métricas extraídas automáticamente de bitácoras. - API JSON para integración con dashboard principal. - **Beneficio**: Monitoreo proactivo sin intervención IA. ### 🥉 **Prioridad Baja: Madurez y Resiliencia** #### 7. **Versionado Semántico del ADN** - **Problema**: Backup del ADN limitado a Git, sin versionado específico. - **Solución**: `tools/adn/backup.rb` con: - Versiones semánticas: `adn-1.2.3.tar.gz` (major.features.fixes). - Diff entre versiones con resumen de cambios. - Integración con `dtic-BKPs` para almacenamiento cifrado. - **Beneficio**: Capacidad de rollback y auditoría histórica. #### 8. **Sistema de Recomendaciones Automáticas** - **Problema**: Evolución del ADN reactiva en lugar de proactiva. - **Solución**: `tools/adn/aprendizaje.rb` con: - Análisis de patrones en bitácoras para sugerir nuevas reglas. - Detección de inconsistencias recurrentes. - Sugerencias de evolución basadas en data histórica. - **Reducción IA**: Sistema proactivo vs. reactivo (IA como asistente). --- ## 📅 Plan de Implementación (8 semanas - 4 Fases) ### **Fase 1: Núcleo Autónomo (Semanas 1-2)** 1. **`tools/adn/`** - Estructura de directorios y `Gemfile` con dependencias. 2. **`tools/adn.rb`** - CLI unificada con subcomandos básicos. 3. **`tools/adn/validador.rb`** - Validador en tiempo real con hooks Git. 4. **`tools/adn/logger.rb`** - Logging estructurado JSON en `logs/adn/`. 5. **`adn/config.yml`** - Configuración centralizada. 6. **Entregable**: Sistema que valida automáticamente cada commit. ### **Fase 2: Automatización Inteligente (Semanas 3-4)** 1. **`tools/adn/triggers.rb`** - Sistema de eventos basado en YAML. 2. **`tools/adn/contexto.rb`** - Motor de inferencia topológica. 3. **`tools/adn/eventos.rb`** - Bus de eventos interno. 4. **Integración con cron** - Tareas periódicas de validación y sync. 5. **Entregable**: Triggers automáticos operativos sin intervención IA. ### **Fase 3: Sistema Integrado (Semanas 5-6)** 1. **`tools/adn/dashboard.rb`** - Servidor web Sinatra (puerto 4567). 2. **API JSON** para integración con dashboard principal. 3. **`tools/adn/backup.rb`** - Sistema de versionado semántico. 4. **Especificaciones** - Pruebas unitarias en `spec/adn_*_spec.rb`. 5. **Entregable**: Dashboard autónomo en tiempo real. ### **Fase 4: Madurez y Evolución (Semanas 7-8)** 1. **`tools/adn/aprendizaje.rb`** - Sistema de recomendaciones. 2. **Documentación completa** - `docs/adn/automatizacion.md`. 3. **Onboarding** - `docs/onboarding/primero-60-minutos.md`. 4. **Revisión y refinamiento** basado en feedback operativo. 5. **Entregable**: Sistema maduro con capacidad de auto-evolución. --- ## 📊 Criterios de Éxito (KPIs con Reducción de IA) ### KPIs de Autonomía Operativa | KPI | Línea Base | Meta (8 semanas) | Cómo Medir | | :--- | :--- | :--- | :--- | | **Tiempo creación bitácora** | 10-15 min | < 2 min | `time ruby tools/adn.rb generar bitacora` | | **Errores formato en bitácoras** | 2-3 por semana | 0 por semana | Reporte `tools/adn.rb validador --stats` | | **Consistencia entre hebras** | Manual | Automatizada 95%+ | Validación cruzada automática | | **Cobertura triggers automáticos** | 0% | 90% | % de triggers en `02_bitacora.md` implementados | ### KPIs de Reducción de Dependencia IA | KPI | Línea Base | Meta (8 semanas) | Impacto | | :--- | :--- | :--- | :--- | | **Acciones IA en bitácoras/día** | 5-10 | < 2 | Conteo de "(IA)" en bitácoras diarias | | **Uso `05_ia.md` como referencia** | Diario | Semanal | Frecuencia de consulta a la hebra | | **Scripts ejecutados sin IA** | 40% | 85% | Comandos ejecutados directamente vs via IA | | **Tiempo auto-contextualización** | 2-3 min | < 30 seg | `time ruby tools/adn.rb contexto ` | | **Errores detectados por humano** | 70% | < 30% | Origen de detección de errores de ADN | --- ## 🔄 Proceso de Transición (Coexistencia → Autonomía) ### **Semanas 1-4: Coexistencia** - IA y scripts Ruby trabajan en paralelo. - IA documenta cada acción que posteriormente será automatizada. - Se establecen métricas de línea base. - **Registro**: Cada script nuevo recibe tag `[AUTOMATIZACION]` en commits. ### **Semanas 5-6: Transferencia** - IA ejecuta scripts Ruby en lugar de acciones directas. - Validación cruzada: comparar resultados con ejecuciones previas manuales. - Ajuste de scripts basado en feedback operativo. - **Checkpoint**: 60% de triggers operando automáticamente. ### **Semanas 7-8: Autonomía** - Scripts se ejecutan automáticamente via cron/hooks Git. - IA solo interviene en casos excepcionales no cubiertos. - Dashboard muestra estado de autonomía en tiempo real. - **Hito**: Sistema opera 48h continuas sin intervención IA. --- ## 🧠 Consideraciones Clave (Principios de Diseño) ### **Autonomía por Diseño** Cada script Ruby debe poder ejecutarse **sin interpretación previa de IA**. Parámetros claros (`--help`), salida parseable, errores autodescriptivos. ### **Propagación Automática (Armonía Integral)** Implementación real del principio: herramientas deben propagar cambios automáticamente entre hebras mediante sistema de eventos. ### **Reducción Progresiva de `05_ia.md`** Cada nueva herramienta debe eliminar una dependencia de la IA. Meta: transformar `05_ia.md` de "directivas operativas" a "histórico de evolución". ### **Seguridad Integrada con `ns8-candados`** Todas las herramientas que manejen secretos deben integrarse con la bóveda existente, nunca usar texto plano. ### **Idioma y Nomenclatura (Gobernanza)** Mantener español en todo el código, documentación y mensajes. Nomenclatura estricta en minúsculas como establece `06_gobernanza.md`. ### **Ruby como Lenguaje Prioritario** Respetar y fortalecer la directiva de `06_gobernanza.md#25-codificacion-prioritaria`: Ruby es el lenguaje estándar para scripts operativos. --- ## 🚦 Próximos Pasos Inmediatos 1. **[ ] Presentar este plan actualizado** en la bitácora `2026-03-07.md`. 2. **[ ] Crear ticket en P2603**: "Automatización Ruby del ADN - Fase 1". 3. **[ ] Iniciar Fase 1**: Crear estructura básica de `tools/adn/`. ```bash mkdir -p tools/adn logs/adn spec ``` 4. **[ ] Configurar hook Git pre-commit** con validación básica. 5. **[ ] Establecer reunión de revisión** en 7 días (14/03/2026). --- ## 🔗 Referencias - [ADN Completo](../adn/00_indice.md) - [Gobernanza (Ruby prioritario)](../adn/06_gobernanza.md#25-codificacion-prioritaria) - [Directivas IA (a reducir)](../adn/05_ia.md) - [Proyecto P2603 (Bitácoras)](../proyectos/P2603_bitacoras.md) - [Herramienta ns8-candados](../tools/ns8-candados/ns8-candados.rb) - Ejemplo diseño Ruby - [Dashboard Principal](../dashboard/index.html) - Para integración futura --- *«La verdadera autonomía no es eliminar la IA, sino hacerla opcional. Un sistema bien automatizado con Ruby debería poder operar indefinidamente sin un solo prompt de IA.»* — Principio de Autonomía por Diseño