docs: pianifica stack fastapi uvicorn con api swagger
This commit is contained in:
+48
-1
@@ -13,6 +13,12 @@ Il progetto ha oggi:
|
||||
- `.env.example` completo;
|
||||
- `Dockerfile` e `docker-compose.yml`.
|
||||
|
||||
Aggiornamento scope post-V1:
|
||||
|
||||
- webapp storico connessione in stile SmokePing da implementare con FastAPI + Uvicorn;
|
||||
- API read-only dedicate allo storico;
|
||||
- documentazione API via Swagger/OpenAPI.
|
||||
|
||||
## Obiettivo di Sviluppo
|
||||
|
||||
Realizzare un servizio Python dockerizzato che mantenga attivo un database Supabase free tier tramite query periodiche di keep-alive, con configurazione via `.env`, processo long-running e documentazione operativa essenziale.
|
||||
@@ -230,6 +236,40 @@ Stato:
|
||||
|
||||
- completata
|
||||
|
||||
### Fase 7. Webapp storico con FastAPI, Uvicorn e Swagger
|
||||
|
||||
Obiettivo:
|
||||
Implementare la componente web/API per visualizzare lo storico connessione (48 ore) in stile SmokePing, usando stack FastAPI + Uvicorn con documentazione Swagger/OpenAPI.
|
||||
|
||||
Attivita':
|
||||
|
||||
- integrare dipendenze FastAPI/Uvicorn nel progetto Python;
|
||||
- progettare endpoint API read-only per stato corrente e storico RRD 48h;
|
||||
- implementare backend FastAPI con validazione input e codici errore chiari;
|
||||
- esporre documentazione automatica Swagger (`/docs`) e schema OpenAPI (`/openapi.json`);
|
||||
- collegare la webapp allo strato API per rendering trend e fallimenti;
|
||||
- aggiornare Dockerfile e compose per runtime Uvicorn e porta HTTP configurabile;
|
||||
- allineare README, PRD, `.env.example` e note operative.
|
||||
|
||||
Deliverable:
|
||||
|
||||
- app FastAPI avviabile con Uvicorn;
|
||||
- endpoint API storico funzionanti;
|
||||
- Swagger UI e OpenAPI accessibili;
|
||||
- dashboard storica collegata ai dati RRD.
|
||||
|
||||
Verifica:
|
||||
|
||||
- avvio container e raggiungibilita' endpoint API;
|
||||
- verifica endpoint `/docs` e `/openapi.json`;
|
||||
- chiamata API con finestra temporale valida e risposta coerente;
|
||||
- riscontro visuale dashboard con nuovi campioni;
|
||||
- controllo che il collector keep-alive continui anche in caso di errore UI.
|
||||
|
||||
Stato:
|
||||
|
||||
- **pianificata**
|
||||
|
||||
## Backlog Post-V1
|
||||
|
||||
- retry con backoff configurabile;
|
||||
@@ -239,6 +279,12 @@ Stato:
|
||||
- metriche esportabili;
|
||||
- supporto a query alternativa di keep-alive con tabella di log.
|
||||
|
||||
## Backlog Post-V1.1
|
||||
|
||||
- autenticazione opzionale per endpoint dashboard/API;
|
||||
- downsampling avanzato per viste storiche aggiuntive oltre 48h;
|
||||
- export CSV/JSON dello storico per analisi esterne.
|
||||
|
||||
## Ordine di Esecuzione Consigliato
|
||||
|
||||
1. Fase 0
|
||||
@@ -248,6 +294,7 @@ Stato:
|
||||
5. Fase 4
|
||||
6. Fase 5
|
||||
7. Fase 6
|
||||
8. Fase 7
|
||||
|
||||
## Definizione di Done per la V1
|
||||
|
||||
@@ -263,6 +310,6 @@ La V1 e' completata quando:
|
||||
|
||||
## Prossima Attivita' Operativa
|
||||
|
||||
Fasi 0-6 completate. V1 chiusa con test operativo end-to-end su pooler Supabase IPv4.
|
||||
Fasi 0-6 completate. Prossimo step: avvio Fase 7 per implementazione FastAPI + Uvicorn + API + Swagger della dashboard storico.
|
||||
|
||||
Nota operativa: usare host pooler (`aws-1-eu-central-1.pooler.supabase.com`) su porta `6543` con utente `postgres.<project-ref>` per ambienti senza connettivita' IPv6.
|
||||
|
||||
Reference in New Issue
Block a user