docs(reports): chiudi item 10.3 port dashboard a NiceGUI

Aggiorna stato-progetto-e-roadmap riflettendo le modifiche del 14 maggio:
- diagramma architettura (sec 9): dashboard/ ora elenca solo nicegui_app.py
  + data.py; rimosso Streamlit legacy e aquarium.py
- item 10.3 "Port completo dashboard a NiceGUI": marcato [x] con
  riferimenti ai commit 03f723f (cleanup) e 8e5efde (deploy Docker
  via Traefik su swarm.tielogic.xyz). Annotata la scelta esplicita di
  non riportare l'Aquarium su NiceGUI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Adriano Dal Pastro
2026-05-14 13:30:35 +00:00
parent 073200313c
commit a66f97fb0e
@@ -207,9 +207,8 @@ src/multi_swarm/
│ └── persistence.py │ └── persistence.py
├── orchestrator/run.py ├── orchestrator/run.py
└── dashboard/ └── dashboard/
├── streamlit_app.py + pages/ ← legacy 8501 ├── nicegui_app.py ← unica GUI, porta parametrica via SWARM_DASHBOARD_PORT
── nicegui_app.py (880 LOC) ← port progressivo 8080 ── data.py
├── aquarium.py + data.py
``` ```
CLI knobs accumulati per ablation: CLI knobs accumulati per ablation:
@@ -240,7 +239,7 @@ CLI knobs accumulati per ablation:
### 10.3 Hardening tecnico ### 10.3 Hardening tecnico
- [ ] **Cleanup zombie runs**: `phase2-6-flat-wfa-001` è ancora `failed` nel DB. Verificare che il flush di stato sia idempotente per tutti i path di crash. - [ ] **Cleanup zombie runs**: `phase2-6-flat-wfa-001` è ancora `failed` nel DB. Verificare che il flush di stato sia idempotente per tutti i path di crash.
- [ ] **Port completo dashboard a NiceGUI**: oggi convivono Streamlit (8501) e NiceGUI (8080). Manca su NiceGUI la pagina **Aquarium** (canvas HTML5 con pesci animati per agente). Una volta portata, deprecare Streamlit. - [x] **Port completo dashboard a NiceGUI** *(chiuso 14 maggio 2026, commit `03f723f`)*: Streamlit deprecata e rimossa insieme ai file legacy (`streamlit_app.py`, `aquarium.py`, `pages/0[1-4]_*.py`); dep `streamlit>=1.40` cancellata da `pyproject.toml` con 10 transitive (pydeck, watchdog, jsonschema, pillow, …). NiceGUI espone 3 pagine (`/`, `/convergence`, `/genomes`) su porta parametrica `SWARM_DASHBOARD_PORT` (default 8080). **Aquarium non riportata per scelta** (decisione utente: non più ritenuta utile). Deploy in produzione via Docker + Traefik su `https://swarm.tielogic.xyz` (compose `docker-compose.yml`, commit `8e5efde`).
- [ ] **Pruning DB**: dopo 30+ run la SQLite cresce. Aggiungere uno script di archiviazione/compressione delle run completate più vecchie di N giorni. - [ ] **Pruning DB**: dopo 30+ run la SQLite cresce. Aggiungere uno script di archiviazione/compressione delle run completate più vecchie di N giorni.
- [ ] **CI/test coverage**: i 180+ test girano localmente; non c'è ancora CI esterna (Gitea Actions o equivalente). - [ ] **CI/test coverage**: i 180+ test girano localmente; non c'è ancora CI esterna (Gitea Actions o equivalente).