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>
186 lines
7.7 KiB
Markdown
186 lines
7.7 KiB
Markdown
# A01 - Ámbito dtic-ADN
|
|
|
|
> Manifiesto de Ámbito | Referencia: [`adn/01_ontologia.md`](../../../adn/01_ontologia.md)
|
|
|
|
## Identificación
|
|
|
|
| Campo | Valor |
|
|
| :--- | :--- |
|
|
| **Código** | A01 |
|
|
| **Nombre** | Ecosistema ADN — Marco de Trabajo y Automatización |
|
|
| **Estado** | ⏳ En Ejecución |
|
|
| **Inicio** | 14/03/2026 |
|
|
| **Fin Estimado** | Continuo (mejora continua) |
|
|
|
|
## Objetivo
|
|
|
|
El ámbito **dtic-ADN** (Arquitectura de Datos y Normas) es el marco de trabajo transversal que define los principios, herramientas y procesos para la gestión de infraestructura y documentación del dtic-DIIAA.
|
|
|
|
Este ámbito cubre:
|
|
|
|
1. **Principios rectores** — Menos es Más, Armonía Integral, Mejora Continua.
|
|
2. **Herramientas CLI** — Ecosistema Ruby para gestión de bitácoras, nodos, proyectos y ámbitos.
|
|
3. **Base de datos PostgreSQL** — Fuente de verdad única (DB-First) para bitácoras y metadata.
|
|
4. **Automatización** — Drones (tareas autónomas), sondas remotas (W-ZOMBI), triggers.
|
|
5. **Documentación viva** — Hebras normativas (`01_ontologia.md` a `08_procesos.md`).
|
|
|
|
## Herramientas
|
|
|
|
| Herramienta | Uso |
|
|
| :--- | :--- |
|
|
| **Ruby 3.x** | Lenguaje del ecosistema ADN |
|
|
| **PostgreSQL** | Base de datos (puerto 5433, schema `bitacoras`) |
|
|
| **ADN CLI** | `./adn/tools/run <subcomando>` — herramientas unificadas |
|
|
| **RSpec** | Framework de tests |
|
|
| **RuboCop** | Lint automatizado |
|
|
| **GitHub Actions** | CI/CD (tests + lint) |
|
|
| **W-ZOMBI v2.0** | Sonda remota modular (telemetría y comandos) |
|
|
| **Dron** | `./adn/tools/run dron` — vigía de tareas largas con auto-bitácora |
|
|
|
|
## Nodos Involucrados
|
|
|
|
### Nodo Core (Desarrollo y Ejecución)
|
|
|
|
| Nodo | IP | Rol en el Ámbito |
|
|
| :--- | :--- | :--- |
|
|
| [**srv-ns8**](../../../nodos/srv-ns8.md) | `10.0.10.8` | Workstation de desarrollo, CI/CD, Docker Host |
|
|
|
|
### Nodos de Infraestructura (Bitácoras Web)
|
|
|
|
| Nodo | IP | Rol en el Ámbito |
|
|
| :--- | :--- | :--- |
|
|
| **dtic-BITACORAS** | `localhost:5174` (frontend), `localhost:3002` (API) | Sistema web de bitácoras (Docker Compose) |
|
|
|
|
## Tareas Configuradas
|
|
|
|
| ID | Descripción | Tipo |
|
|
| :--- | :--- | :--- |
|
|
| `db_evento_crear` | Crear evento en bitácora | db |
|
|
| `db_evento_listar` | Listar eventos con filtros | db |
|
|
| `db_nodo_crear` | Crear nodo en DB | db |
|
|
| `db_ambito_listar` | Listar ámbitos | db |
|
|
| `wzombi_start` | Iniciar sonda remota | wzombi |
|
|
| `wzombi_cmd` | Enviar comando a agentes | wzombi |
|
|
| `dron_lanzar` | Lanzar tarea en background | dron |
|
|
|
|
## Comandos Compuestos
|
|
|
|
| ID | Descripción | Tareas |
|
|
| :--- | :--- | :--- |
|
|
| `jornada_completa` | Registro completo de jornada | jornada iniciar → db evento:crear → jornada cerrar |
|
|
| `salud_completa` | Verificación integral del sistema | salud --dashboard --mejoras |
|
|
| `dron_test` | Test de dron con auto-bitácora | dron lanzar --evento AUTO --nota "Test" -- sleep 3 |
|
|
|
|
## Flujo de Trabajo Típico
|
|
|
|
```
|
|
1. Iniciar jornada: ./adn/tools/run jornada iniciar presencial 08:00
|
|
2. Registrar evento: ./adn/tools/run db evento:crear --nodo srv-ns8 --descripcion "..."
|
|
3. Ejecutar tarea: ./adn/tools/run <subcomando>
|
|
4. Para tareas largas: ./adn/tools/run dron lanzar --evento AUTO --nota "X" -- <cmd>
|
|
5. Actualizar evento: ./adn/tools/run db evento:actualizar <ID> --fin HH:MM
|
|
6. Verificar en web: http://localhost:5174
|
|
```
|
|
|
|
### Subcomandos ADN disponibles
|
|
|
|
```bash
|
|
# Gestión de bitácoras
|
|
./adn/tools/run db evento:crear --nodo <nodo> --descripcion "..."
|
|
./adn/tools/run db evento:listar [--ambito <ambito>] [--detalle]
|
|
./adn/tools/run db evento:actualizar <ID> --fin HH:MM
|
|
|
|
# Gestión de ámbitos y nodos
|
|
./adn/tools/run db ambito:listar
|
|
./adn/tools/run db nodo:listar [--ambito <ambito>]
|
|
./adn/tools/run nodos info <nodo>
|
|
|
|
# Drones (tareas autónomas)
|
|
./adn/tools/run dron lanzar --evento AUTO --nota "X" -- <cmd>
|
|
./adn/tools/run dron flota
|
|
./adn/tools/run dron salud
|
|
|
|
# Sonda remota W-ZOMBI
|
|
./adn/tools/run wzombi start
|
|
./adn/tools/run wzombi cmd "hostname"
|
|
./adn/tools/run wzombi ayuda
|
|
|
|
# Salud del sistema
|
|
./adn/tools/run salud --dashboard --mejoras
|
|
```
|
|
|
|
## Planes Asociados
|
|
|
|
| Código | Nombre | Estado |
|
|
| :--- | :--- | :--- |
|
|
| [A01.P001](A01.P001_Estandarizacion-Ayudas-ADN.md) | Estandarización de Ayudas en Pantalla | 📍 En Ejecución (85%) |
|
|
| [A01.P002](A01.P002_Generacion-Proyectos-ADN.md) | Herramienta de Generación de Proyectos | ✅ Completado |
|
|
| [A01.P003](A01.P003_W-ZOMBI-v2.0.md) | Implementación W-ZOMBI v2.0 | ✅ Completado |
|
|
| [A01.P004](A01.P004_Estandarizacion-Barras-Progreso.md) | Estandarización de Barras de Progreso | ✅ Completado |
|
|
| [A01.P005](A01.P005_Estudio-Friccion-IA.md) | Estudio de Fricción IA (Antigravity) | ✅ Completado |
|
|
| [A01.P006](A01.P006_Sensor-de-Mejora-Continua.md) | Sensor de Mejora Continua | ✅ Completado |
|
|
| [A01.P007](A01.P007_Plantillas-Escritura-Eventos.md) | Plantillas de Escritura para Eventos | ✅ Completado |
|
|
| [A01.P008](A01.P008_Modelo-Ambito-Nodo.md) | Modelo Ámbito/Nodo | ✅ Completado |
|
|
| [A01.P009](A01.P009_Evolucion-Dron-ADN.md) | Evolución a AtomicDrones (Colmena) | ⏳ En Planificación |
|
|
|
|
## 🛸 Sistema de Drones (Operación Autónoma)
|
|
|
|
**Herramienta:** `./adn/tools/run dron <subcomando>`
|
|
|
|
| Subcomando | Función |
|
|
| :--- | :--- |
|
|
| `dron lanzar --evento ID/AUTO --nota "X" -- <cmd>` | Lanzar tarea en background con auto-bitácora |
|
|
| `dron flota` | Dashboard compacto de la flota |
|
|
| `dron salud` | Health check activo (detecta zombies/estancados) |
|
|
| `dron estado` | Estado detallado de cada dron |
|
|
| `dron limpiar` | Limpiar tareas completadas/fallidas |
|
|
|
|
**Evento AUTO:** Crea evento de bitácora automáticamente y lo cierra al finalizar. El `tarea_id` del dron se incluye en la descripción del evento con formato `🛸 dron_HHMMSS_PID: <nota>`.
|
|
|
|
**Ejemplo:**
|
|
```bash
|
|
./adn/tools/run dron lanzar --evento AUTO --nota "Backup nocturno" -- ./adn/tools/run db bitacora:crear
|
|
```
|
|
|
|
## 📊 Sensor de Mejora Continua
|
|
|
|
**Herramienta:** `./adn/tools/run salud --mejoras`
|
|
|
|
El sensor detecta automáticamente patrones de fricción en el uso del ecosistema:
|
|
|
|
| Patrón | Umbral | Acción |
|
|
| :--- | :--- | :--- |
|
|
| Conexiones DB excesivas | >5 por minuto | Sugiere connection pooling |
|
|
| Comandos repetitivos | >5 en 5 min | Sugiere automatización |
|
|
| Inconsistencias documento-DB | Detectada | Sugiere armonía integral |
|
|
|
|
**Activación:** Variable de entorno `ADN_MEJORAS=1` (activada por defecto en BitacoraDB).
|
|
|
|
## 🔄 Armonía Integral
|
|
|
|
**Última actualización:** 2026-04-07 (migración a estándar de ámbito completada)
|
|
|
|
| Documento | Estado | Notas |
|
|
| :--- | :--- | :--- |
|
|
| `docs/contexto/IA.md` | ✅ Actualizado | Referencia a A01 agregada |
|
|
| `A01_dtic-ADN.md` | ✅ Creado | Manifiesto nuevo siguiendo estándar A03/A04 |
|
|
| `A01.P001_Estandarizacion-Ayudas-ADN.md` | ✅ Migrado | Desde P2604.01.01 |
|
|
| `A01.P002_Generacion-Proyectos-ADN.md` | ✅ Migrado | Desde P2604.02.01 |
|
|
| `A01.P003_W-ZOMBI-v2.0.md` | ✅ Migrado | Desde P2604.03.01 |
|
|
| `A01.P004_Estandarizacion-Barras-Progreso.md` | ✅ Migrado | Desde P2604.04.01 |
|
|
| `A01.P005_Estudio-Friccion-IA.md` | ✅ Migrado | Desde P2604.05.01 |
|
|
| `A01.P006_Sensor-de-Mejora-Continua.md` | ✅ Migrado | Desde P2604.06 |
|
|
| `A01.P007_Plantillas-Escritura-Eventos.md` | ✅ Migrado | Desde P2604.07 |
|
|
| `A01.P008_Modelo-Ambito-Nodo.md` | ✅ Migrado | Desde P2604.08 |
|
|
| `_hist/P2604_Mejoras-ADN.md` | ✅ Archivado | Manifiesto legacy preservado |
|
|
|
|
---
|
|
|
|
## Referencias
|
|
|
|
- **CLI ADN**: `./adn/tools/run ayuda`
|
|
- **Código fuente**: [`adn/tools/`](../../../adn/tools/)
|
|
- **Hebras normativas**: [`adn/01_ontologia.md`](../../../adn/01_ontologia.md) a [`adn/08_procesos.md`](../../../adn/08_procesos.md)
|
|
- **Bitácoras**: `./adn/tools/run db evento:listar --ambito dtic-ADN`
|
|
- **Legacy (archivado)**: [`_hist/P2604_Mejoras-ADN.md`](_hist/P2604_Mejoras-ADN.md) — manifiesto anterior del proyecto
|