Backend (@backend-dev): - ReportService with PDF/CSV generation (reportlab, pandas) - Report API endpoints (POST, GET, DELETE, download with rate limiting) - Professional PDF templates with branding and tables - Storage management with auto-cleanup Frontend (@frontend-dev): - Recharts integration: CostBreakdown, TimeSeries, ComparisonBar - Scenario comparison: multi-select, compare page with side-by-side layout - Reports UI: generation form, list with status badges, download - Dark/Light mode: ThemeProvider, toggle, CSS variables - Responsive design for all components QA (@qa-engineer): - E2E testing setup with Playwright - 100 test cases across 7 spec files - Visual regression baselines - CI/CD workflow configuration - ES modules fixes Documentation: - Add todo.md with testing checklist and future roadmap - Update kickoff prompt for v0.4.0 27 tasks completed, 100% v0.4.0 delivery Closes: v0.4.0 milestone
7.6 KiB
7.6 KiB
TODO - Prossimi Passi mockupAWS
Data: 2026-04-07
Versione: v0.4.0 completata
Stato: Pronta per testing e validazione
✅ Cosa è stato completato oggi
v0.3.0 (Base)
- Database PostgreSQL con 5 tabelle
- Backend FastAPI completo (CRUD, Ingest, Metrics)
- Frontend React (Dashboard, Scenario Detail/Edit)
- Docker Compose per PostgreSQL
- Documentazione (README, Architecture, Kanban)
v0.4.0 (Nuove Feature)
- Backend Reports - PDF/CSV generation (5 task)
- Frontend Charts - Recharts integration (6 task)
- Frontend Comparison - Multi-scenario compare (4 task)
- Frontend Reports UI - Report management (4 task)
- Frontend Theme - Dark/Light mode (4 task)
- QA E2E Testing - Playwright setup (4 task)
Totale: 27/27 task v0.4.0 completati ✅
🧪 TESTING IMMEDIATO (Oggi)
1. Verifica Installazione Dipendenze
# Backend
cd /home/google/Sources/LucaSacchiNet/mockupAWS
pip install reportlab pandas slowapi
# Frontend
cd frontend
npm install # Verifica tutti i pacchetti
npx playwright install chromium # Se non già fatto
2. Avvio Applicazione
# Terminale 1 - Backend
cd /home/google/Sources/LucaSacchiNet/mockupAWS
uv run uvicorn src.main:app --reload
# Attendi: "Application startup complete"
# Terminale 2 - Frontend
cd /home/google/Sources/LucaSacchiNet/mockupAWS/frontend
npm run dev
# Attendi: "Local: http://localhost:5173/"
3. Test Manuale Feature v0.4.0
Test Charts
- Apri http://localhost:5173
- Verifica CostBreakdown chart in Dashboard
- Crea/Apri uno scenario
- Verifica TimeSeries chart nel tab Metrics
Test Dark Mode
- Clicca toggle tema in Header
- Verifica switch Light/Dark/System
- Controlla che tutti i componenti cambino tema
- Verifica charts si adattino al tema
Test Comparison
- Vai a Dashboard (lista scenari)
- Seleziona 2-4 scenari con checkbox
- Clicca "Compare Selected"
- Verifica pagina Compare con:
- Side-by-side layout
- Summary cards per scenario
- Comparison table con delta
- Bar chart comparativo
Test Reports
- Apri uno scenario
- Clicca tab "Reports"
- Compila form:
- Seleziona formato PDF
- Check "include_logs"
- Seleziona sezioni
- Clicca "Generate"
- Attendi status cambi in "Completed"
- Clicca Download e verifica file
- Ripeti per formato CSV
Test E2E
cd /home/google/Sources/LucaSacchiNet/mockupAWS/frontend
# Test base (senza backend)
npm run test:e2e -- setup-verification.spec.ts
# Test completi (con backend running)
npm run test:e2e
# Con UI per debug
npm run test:e2e:ui
🔧 VERIFICHE TECNICHE
Backend API Test
# 1. Health check
curl http://localhost:8000/health
# 2. Lista scenari
curl http://localhost:8000/api/v1/scenarios
# 3. Generazione report (sostituisci {scenario-id})
curl -X POST http://localhost:8000/api/v1/scenarios/{id}/reports \
-H "Content-Type: application/json" \
-d '{
"format": "pdf",
"include_logs": true,
"sections": ["summary", "costs", "metrics"]
}'
# 4. Check status report (sostituisci {report-id})
curl http://localhost:8000/api/v1/reports/{id}/status
# 5. Download report
curl http://localhost:8000/api/v1/reports/{id}/download \
--output report.pdf
Verifica File System
- Directory
storage/reports/creata automaticamente - File PDF generati in
storage/reports/{scenario-id}/ - File CSV generati correttamente
- Cleanup automatico funziona (testa con file vecchi)
Performance Check
- Report PDF generato in <3 secondi
- Charts render senza lag
- Comparison page carica <2 secondi
- Dark mode switch istantaneo
🐛 DEBUGGING COMUNE
Problema: Backend non parte
# Verifica database
docker ps | grep postgres
# Se non running: docker-compose up -d postgres
# Verifica migrazioni
uv run alembic upgrade head
# Verifica dipendenze
pip install reportlab pandas slowapi
Problema: Frontend build error
cd frontend
rm -rf node_modules package-lock.json
npm install
npm run build
Problema: E2E tests falliscono
# Verifica backend sia su port 8000
curl http://localhost:8000/api/v1/scenarios
# Installa browsers
npx playwright install chromium
# Aggiorna snapshots
UPDATE_BASELINE=true npx playwright test visual-regression.spec.ts
Problema: PDF/CSV non generati
- Verifica directory
storage/reports/esista - Controlla permessi scrittura
- Verifica in logs:
tail -f storage/logs/app.log
📋 DOCUMENTAZIONE DA AGGIORNARE
README.md
- Aggiornare sezione "Caratteristiche Principali" con v0.4.0
- Aggiungere screenshots dei nuovi charts
- Documentare Report Generation
- Aggiungere sezione Dark Mode
- Aggiornare Roadmap (v0.4.0 completata)
Architecture.md
- Aggiornare sezione "7.2 Frontend" con Charts e Theme
- Aggiungere sezione Report Generation
- Aggiornare Project Structure
Kanban
- Spostare task v0.4.0 da "In Progress" a "Completed"
- Aggiungere note data completamento
Changelog
- Creare CHANGELOG.md se non esiste
- Aggiungere v0.4.0 entry con lista feature
🚀 RILASCIO v0.4.0
Pre-Release Checklist
- Tutti i test passano (backend + frontend + e2e)
- Code review completata
- Documentazione aggiornata
- Performance test OK
- Nessun errore console browser
- Nessun errore server logs
Tag e Release
# 1. Commit finale
git add -A
git commit -m "release: v0.4.0 - Reports, Charts, Comparison, Dark Mode"
# 2. Tag
git tag -a v0.4.0 -m "Release v0.4.0 - Reports, Charts & Comparison"
git push origin v0.4.0
# 3. Push main
git push origin main
Annuncio Team
Comunicare al team:
- v0.4.0 completata e rilasciata
- Link alla release
- Prossimi passi (v0.5.0 o v1.0.0)
🎯 PIANIFICAZIONE v0.5.0 / v1.0.0
Candidati per prossima release:
v0.5.0 (Feature Enhancement)
- Autenticazione JWT completa
- API Keys management
- Report scheduling (cron jobs)
- Email notifications
- Advanced filters in scenario list
- Export comparison as PDF
v1.0.0 (Production Ready)
- Autenticazione e autorizzazione completa
- Multi-utente support
- Database migrations automatiche
- Backup/restore system
- Production deployment guide
- Comprehensive documentation
- Performance optimization
- Security audit
💡 MIGLIORAMENTI FUTURI (Backlog)
Performance
- Caching Redis per metriche
- Lazy loading charts
- Virtual scrolling per lista scenari
- Optimistic UI updates
UX/UI
- Onboarding tutorial
- Keyboard shortcuts
- Advanced search/filter
- Bulk operations
- Drag & drop scenario reordering
Analytics
- Usage analytics dashboard
- Cost trend predictions
- Anomaly detection in logs
- Automated insights
Integrazioni
- AWS CloudWatch integration
- Slack notifications
- Webhook support
- REST API versioning
📞 SUPPORTO
Risorse
- Documentation:
/home/google/Sources/LucaSacchiNet/mockupAWS/export/ - API Docs: http://localhost:8000/docs (quando backend running)
- Kanban:
export/kanban-v0.4.0.md - Prompts:
/home/google/Sources/LucaSacchiNet/mockupAWS/prompt/
Team
- @backend-dev - Report generation questions
- @frontend-dev - UI/UX questions
- @qa-engineer - Testing questions
- @spec-architect - Architecture decisions
Ultimo aggiornamento: 2026-04-07
Versione corrente: v0.4.0
Prossima milestone: v1.0.0 (Production)