8.8 KiB
🚀 TEAM KICKOFF - mockupAWS Fase 1
📢 Comunicazione Ufficiale
Data: 2026-04-07
Fase: 1 - Database & Backend Core
Status: ✅ Architettura Completa - Pronti per Sviluppo
✅ Cosa è stato completato
L'agente @spec-architect ha completato l'analisi e le specifiche tecniche:
Documentazione Pronta
- ✅ PRD v0.2.0 - Requisiti completi
- ✅ architecture.md - Architettura dettagliata con:
- Schema database completo (DDL SQL pronto)
- API specifications (OpenAPI)
- Diagrammi flusso dati
- Piano sicurezza
- ✅ kanban.md - 32 task breakdown, stimate, priorizzate
- ✅ progress.md - Tracking inizializzato
Team Configurato
- ✅ 6 agenti specializzati configurati in
.opencode/agents/ - ✅ Ogni agente ha ruoli, responsabilità e constraints definiti
🎯 OBIETTIVO FASE 1
Deadline: End of Week 1
Goal: Database PostgreSQL funzionante + API CRUD base
Deliverables:
- Database schema completo (5 tabelle)
- Alembic migrations funzionanti
- SQLAlchemy models + Pydantic schemas
- Repository layer
- Scenario CRUD API
- Test coverage > 60%
👥 ASSEGNAZIONI TASK
@db-engineer - DATABASE (Priorità P1)
Task immediate:
-
DB-001 - Alembic Setup (Stima: S)
- Installare alembic e asyncpg
- Configurare per SQLAlchemy 2.0 async
- Testare connessione
-
DB-002 - Migration Scenarios Table (Stima: M)
- Creare tabella scenarios con tutti i campi
- Aggiungere indexes e constraints
- Testare migrazione
-
DB-003 - Migration Logs Table (Stima: M)
- Creare tabella scenario_logs
- Foreign key a scenarios
-
DB-004 - Migration Metrics Table (Stima: M)
- Creare tabella scenario_metrics
-
DB-005 - Migration Pricing Table (Stima: M)
- Creare tabella aws_pricing
-
DB-006 - Migration Reports Table (Stima: S)
- Creare tabella reports
-
DB-007 - Seed AWS Pricing Data (Stima: M)
- Popolare con prezzi reali AWS
- SQS, Lambda, Bedrock per us-east-1
📖 Riferimenti:
- Schema SQL:
export/architecture.mdsezione 3.2 - Prezzi:
export/prd.mdsezione 4.3 (tabella prezzi) - Config agente:
.opencode/agents/db-engineer.md
⚠️ IMPORTANTE:
- Usare UUID come primary keys
- Includere created_at/updated_at su tutte le tabelle
- Creare indexes su colonne di query frequenti
- Testare ogni migrazione con
alembic upgrade +1
@backend-dev - BACKEND CORE (Priorità P1)
Task immediate:
-
BE-001 - Database Connection (Stima: M)
- Creare
backend/src/core/database.py - Configurare async SQLAlchemy engine
- Creare dependency
get_db()per FastAPI
- Creare
-
BE-002 - SQLAlchemy Models (Stima: L)
- Creare tutti i modelli in
backend/src/models/ - Base model, Scenario, ScenarioLog, ScenarioMetric, AwsPricing, Report
- Definire relationships
- Creare tutti i modelli in
-
BE-003 - Pydantic Schemas (Stima: M)
- Creare schemas in
backend/src/schemas/ - ScenarioCreate, ScenarioUpdate, ScenarioResponse, etc.
- Creare schemas in
-
BE-004 - Base Repository (Stima: M)
- Creare
backend/src/repositories/base.py - Implementare Generic Repository pattern
- Metodi: get(), list(), create(), update(), delete()
- Creare
-
BE-005 - Scenario Repository (Stima: M)
- Creare
backend/src/repositories/scenario_repo.py - Metodi specifici per scenario
- Creare
-
BE-015 - API Dependencies (Stima: M)
- Creare
backend/src/api/deps.py - Configurare exception handlers
- Definire custom exceptions
- Creare
-
BE-016 - Scenarios API (Stima: L)
- Implementare CRUD endpoints
- POST/GET/PUT/DELETE /api/v1/scenarios
- Lifecycle endpoints (start, stop, archive)
📖 Riferimenti:
- Architettura:
export/architecture.mdsezioni 4, 5, 7, 8 - API Specs:
export/architecture.mdsezione 4 - Codice esistente:
src/main.py,src/profiler.py - Config agente:
.opencode/agents/backend-dev.md
⚠️ IMPORTANTE:
- Usare type hints ovunque
- TDD: scrivere test prima o insieme al codice
- Async/await per tutte le operazioni I/O
- Repository pattern obbligatorio
@frontend-dev - PREPARAZIONE (Priorità P2)
Task preparazione:
-
Setup ambiente React:
mkdir -p /home/google/Sources/LucaSacchiNet/mockupAWS/frontend cd /home/google/Sources/LucaSacchiNet/mockupAWS/frontend npm create vite@latest . -- --template react-ts npm install npm install tailwindcss postcss autoprefixer npx tailwindcss init -p npm install @tanstack/react-query axios recharts lucide-react clsx tailwind-merge npm install -D @types/node -
Installare shadcn/ui:
npx shadcn-ui@latest init -
Preparare mock data per sviluppo UI
📖 Riferimenti:
- Stack:
export/architecture.mdsezione 7.2 - Config agente:
.opencode/agents/frontend-dev.md
⚠️ NOTA: Il frontend verrà sviluppato in Fase 2. Per ora preparare solo l'ambiente.
@devops-engineer - DOCKER BASE (Priorità P2)
Task preparazione:
-
Creare
docker-compose.ymlbase:- Servizio PostgreSQL
- Volume per persistenza
- Health check
-
Preparare
backend/Dockerfile:- Multi-stage build
- Python 3.11-slim
- Uvicorn entrypoint
-
Preparare
frontend/Dockerfile:- Node 20-alpine
- Nginx per serving
📖 Riferimenti:
- Config agente:
.opencode/agents/devops-engineer.md
@qa-engineer - TEST PLAN (Priorità P2)
Task preparazione:
-
Creare
docs/test_plan.mdcon:- Unit test strategy
- Integration test plan
- E2E test scenarios
-
Preparare fixtures per pytest:
- Database fixture con rollback
- Mock data fixtures
📖 Riferimenti:
- Config agente:
.opencode/agents/qa-engineer.md
🔄 WORKFLOW GIORNALIERO
Daily Routine
- Mattina: Leggere
export/progress.mdper stato attuale - Durante il giorno: Aggiornare progresso su task assegnate
- Fine giornata: Aggiornare
export/progress.mdcon:- Task completate
- Blocchi riscontrati
- Decisioni prese
Comunicazione
- Domande tecniche: Riferirsi a
export/architecture.md - Task details: Riferirsi a
export/kanban.md - Blocchi: Aggiungere a
export/kanban.mdsezione BLOCKED - Decisioni: Documentare in
export/progress.md
Git Workflow
- Branch:
feature/DB-001-alembic-setup - Commits: Conventional commits
feat: add alembic configurationfeat: create scenarios table migrationtest: add scenario repository tests
- PR: Una feature = una PR
📊 CRITERI DI SUCCESSO FASE 1
La Fase 1 è completata quando TUTTI questi criteri sono soddisfatti:
Database ✅
- Alembic configurato e funzionante
- 5 tabelle create con migrazioni
- Indexes creati
- Seed dati pricing popolati
alembic upgrade headesegue senza errori
Backend ✅
- SQLAlchemy models completi
- Pydantic schemas validati
- Repository layer funzionante
- API CRUD scenari testate
- Gestione stati (draft→running→completed) funzionante
Testing ✅
- Unit tests per repositories
- Integration tests per API
- Test coverage > 60%
- Tutti i test passanti
Documentazione ✅
- API documentate (OpenAPI visibile su /docs)
- README aggiornato con istruzioni setup
🚨 COMANDI UTILI
Database
# Setup database locale
docker run -d --name mockupaws-postgres \
-e POSTGRES_DB=mockupaws \
-e POSTGRES_USER=app \
-e POSTGRES_PASSWORD=changeme \
-p 5432:5432 postgres:15-alpine
# Alembic commands
cd /home/google/Sources/LucaSacchiNet/mockupAWS/backend
uv run alembic revision --autogenerate -m "create scenarios table"
uv run alembic upgrade head
uv run alembic downgrade -1
Backend
# Setup
cd /home/google/Sources/LucaSacchiNet/mockupAWS
uv add sqlalchemy alembic asyncpg pydantic-settings
# Test
uv run pytest -v
uv run pytest --cov=src --cov-report=html
# Run
uv run uvicorn src.main:app --reload
Frontend
cd /home/google/Sources/LucaSacchiNet/mockupAWS/frontend
npm install
npm run dev
📞 SUPPORTO
Domande?
- Leggere prima
export/architecture.md - Controllare
export/kanban.mdper dettagli task - Riferirsi al proprio file config in
.opencode/agents/
Blocchi?
- Aggiungere task a sezione BLOCKED in
kanban.md - Documentare in
progress.md - Chiedere supporto al team
🎬 AZIONE IMMEDIATA
@db-engineer: Inizia con DB-001 - Alembic Setup
@backend-dev: Prepara ambiente, inizia con BE-001 quando DB-001 è pronto
@frontend-dev: Setup ambiente React
@devops-engineer: Crea docker-compose.yml base
@qa-engineer: Crea test plan iniziale
@spec-architect: Monitoraggio progresso, supporto architetturale
🚀 TEAM: SIATE PRONTI, SI PARTE!
Iniziate con le task assegnate. Aggiornate export/progress.md frequentemente.
Commit often, test always, communicate always!
Prompt creato da @spec-architect
Data: 2026-04-07
Versione: 1.0