feat(0131): data_table_cpp_viz migration + botones acción + 7 nuevos tests e2e

Issue 0131 (agents v0.2) — frontend agents_dashboard:

* Migra tabla Agents de ImGui::BeginTable a render_grid_stage0 (data_table_cpp_viz).
  11 columnas: Status(Badge), ID, Name, Uptime, Msg/24h,
  Start/Stop/Restart/Clear Memory/Del Cache/Logs (Button renderers).
* Lee campos reales uptime_seconds + messages_24h del backend (antes leía
  'instances' como proxy para msg_24h; ahora lee el campo correcto).
* Confirmation modal (ImGui::BeginPopupModal) para acciones destructivas
  clear_memory y delete_cache.
* Link fn_module_data_table en CMakeLists (HAS_DATA_TABLE activado).
* Actualiza app.md: data_table_cpp_viz en uses_functions, version 0.2.0.
* Añade 7 tests pytest nuevos (total 24):
  test_uptime_field_present, test_msg_24h_field_present,
  test_clear_memory_requires_apikey, test_delete_cache_requires_apikey,
  test_control_roundtrip, test_unified_stop_does_not_kill_launcher,
  test_clear_memory_response_shape.
  SEGURIDAD: solo test-bot se para/arranca en e2e, nunca agentes reales.

Build verificado: Linux + Windows cross-compile (cmake --build cpp/build/windows).

Co-Authored-By: fn-orquestador (issue 0131) <noreply@fn-registry>
This commit is contained in:
2026-05-22 23:07:01 +02:00
parent af83e571c6
commit c8b7adf81d
4 changed files with 433 additions and 64 deletions
+5 -2
View File
@@ -7,13 +7,14 @@ icon:
phosphor: "robot"
accent: "#8b5cf6"
tags: [agents, dashboard, sse, http-client, imgui]
version: 0.1.0
version: 0.2.0
uses_functions:
- http_request_cpp_core
- http_get_json_cpp_core
- sse_client_cpp_core
- secret_store_cpp_infra
- logger_cpp_core
- data_table_cpp_viz
uses_types: []
framework: "imgui"
entry_point: "main.cpp"
@@ -38,7 +39,7 @@ Frontend C++ ImGui para gestionar agentes Matrix de agents_and_robots via HTTPS
## Panels
- **Connection** — base_url + apikey input (masked), Test button, LED status SSE. Save credentials cifradas en `local_files/agents_dashboard.db`.
- **Agents** — tabla con id, status (icon colored), uptime, msg_24h, botones Start/Stop/Restart/Logs por fila.
- **Agents** — tabla data_table_cpp_viz (render_grid_stage0) con 11 columnas: Status(Badge), ID, Name, Uptime, Msg/24h, Start/Stop/Restart/Clear Memory/Del Cache/Logs (Buttons). Modals de confirmacion para acciones destructivas.
- **Logs** — selector agente + tail buffer SSE (5000 lineas), autoscroll, pause.
- **Status Feed** — panel colapsable con eventos del `/sse/status` en tiempo real.
@@ -73,7 +74,9 @@ cmake --build cpp/build/windows --target agents_dashboard -j
- `sse_client_cpp_core` — /sse/agents/{id}/logs + /sse/status
- `secret_store_cpp_infra` — DPAPI Windows / XOR Linux para apikey en SQLite
- `logger_cpp_core` — logging en memoria + archivo
- `data_table_cpp_viz` — render_grid_stage0 para tabla Agents con Badge/Button renderers
## Capability growth log
v0.1.0 (2026-05-22) — Paneles Connection + Agents + Logs + Status Feed. HTTPS+apikey, SSE reconnect, DPAPI credentials.
v0.2.0 (2026-05-22) — Migrado tabla Agents a data_table_cpp_viz (issue 0131). Botones Start/Stop/Restart/Clear Memory/Del Cache/Logs por fila. Endpoints clear_memory + delete_cache. Campos uptime_seconds + messages_24h reales.