Mejora en el sistema de latidos de los drones para mostrar el progreso
acumulado en lugar de solo la última línea.
Cambios realizados:
- ejecutor.rb: Acumulación de output en array accumulated_out[]
- actualizar_heartbeat_web(): Muestra últimas 15 líneas en bloque ```text
- A01.P009: Documentada Fase F1.5b con ejemplo técnico
- A04.P006: Actualizado plan DASUTEN con mejora y lección aprendida
Beneficio: Visibilidad completa del progreso de drones multi-paso
(ej: [1/3], [2/3], [3/3] en pipelines de backup/restore)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cambios:
- Estado: En Planificación → En Implementación (Fase 1 completa)
- Documentar atomisidad como principio de codificación
- Actualizar tabla de herramientas existentes
- Marcar Fase 0 y Fase 1 como ✅ completas
- Actualizar diagrama de flujo con Dron::Base
- Actualizar componentes implementados
- Agregar sección de entregables Fase 1
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Actualización del plan A01.P009 para definir la arquitectura de
registros y comunicación de drones mediante la Bitácora Web.
Arquitectura de registros:
- CAPA 1 (Interna): Tablas dron_logs, dron_avances, dron_metricas
- NO visibles directamente en la web
- Almacenan detalle paso-a-paso de cada dron
- Usadas por dron_vigilante para monitoreo
- CAPA 2 (Visible): Bitácora Web (events consolidados)
- Resumen legible de flujos/orquestaciones
- Estado: ⏳ En ejecución | ✅ Completado | ❌ Fallido
- URL: http://localhost:5174/bitacoras/
Dron Vigilante:
- Escanea flota y detecta zombies (heartbeat > 5min)
- Registra avances en bitacoras.dron_avances
- Consolida resumen en bitacoras.events (visible en web)
- Alerta anomalías (>5 fallos en 1h)
Nueva Fase 0 (Prioritaria):
- F0.T1-T3: Migraciones de tablas internas
- F0.T4: dron_db.rb para acceso a datos
- F0.T5: Hooks DB-First para auto-registro
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Nuevo plan A01.P009 que define la arquitectura de drones como engranajes
especializados que forman una maquinaria integral mediante composición.
Filosofía de diseño:
- AtomicDrones: Cada dron hace UNA cosa y la hace bien
- Inteligencia de Colmena: Soluciones complejas emergen de drones simples
- No FrankenDrones: Rechazar monolitos que intentan hacer todo mal
Tipos de drones definidos:
- 🛠️ Ejecutor: Ejecuta comando y reporta resultado
- 👁️ Vigilante: Monitorea estado de otros drones
- 🩹 Sanador: Repara drones zombies/fallidos
- 📅 Planificador: Lanza drones según cron
- 📨 Mensajero: Notifica resultados
- 🎼 Orquestador: Compone múltiples drones en flujo
Fases de implementación:
- Fase 1: Atomicidad (separación de responsabilidades)
- Fase 2: Composición (orquestación de flujos)
- Fase 3: Planificación (drones programados)
- Fase 4: Inteligencia de Colmena (comunicación por eventos)
- Fase 5: Observabilidad (dashboard y métricas)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>