docs: complete architecture specifications and project planning
Add comprehensive technical specifications for mockupAWS v0.2.0: - export/architecture.md: Complete system architecture with: * Layered architecture diagram (Client → API → Service → Repository → DB) * Full database schema with DDL SQL (5 tables, indexes, constraints) * API specifications (OpenAPI format) for all endpoints * Security architecture (auth, PII detection, rate limiting) * Data flow diagrams (ingestion, cost calculation, state machine) * Technology stack details (backend, frontend, infrastructure) * Project structure for backend and frontend * 4 Architecture Decision Records (DEC-001 to DEC-004) - export/kanban.md: Task breakdown with 32 tasks organized in: * Database setup (DB-001 to DB-007) * Backend models/schemas (BE-001 to BE-003) * Backend repositories (BE-004 to BE-008) * Backend services (BE-009 to BE-014) * Backend API (BE-015 to BE-020) * Testing (QA-001 to QA-003) - export/progress.md: Project tracking initialized with: * Current status: 0% complete, Fase 1 setup * Sprint planning and metrics * Resource links and team assignments All specifications follow 'Little Often' principle with tasks < 2 hours.
This commit is contained in:
@@ -1,48 +1,64 @@
|
||||
# Progress Tracking - [NOME_PROGETTO]
|
||||
# Progress Tracking - mockupAWS
|
||||
|
||||
> Tracciamento progresso sviluppo in tempo reale.
|
||||
> **Progetto:** mockupAWS - Backend Profiler & Cost Estimator
|
||||
> **Versione Target:** v0.2.0
|
||||
> **Data Inizio:** 2026-04-07
|
||||
> **Data Ultimo Aggiornamento:** 2026-04-07
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Sprint/Feature Corrente
|
||||
|
||||
**Feature:** `[Nome feature in sviluppo]`
|
||||
**Iniziata:** `YYYY-MM-DD`
|
||||
**Stato:** 🔴 Pianificazione / 🟡 In sviluppo / 🟢 Completata
|
||||
**Assegnato:** `@agent`
|
||||
**Feature:** Fase 1 - Database e Backend API Core
|
||||
**Iniziata:** 2026-04-07
|
||||
**Stato:** 🔴 Pianificazione / Setup
|
||||
**Assegnato:** @spec-architect (coordinamento), @db-engineer, @backend-dev
|
||||
|
||||
---
|
||||
|
||||
## 📊 Progresso Complessivo
|
||||
|
||||
| Area | Progresso | Stato |
|
||||
|------|-----------|-------|
|
||||
| API Core | 0/10 task | 🔴 Non iniziato |
|
||||
| Webhook System | 0/5 task | 🔴 Non iniziato |
|
||||
| AI Skill | 0/3 task | 🔴 Non iniziato |
|
||||
| Testing | 0/8 task | 🔴 Non iniziato |
|
||||
| Documentazione | 0/4 task | 🔴 Non iniziato |
|
||||
|
||||
**Completamento Totale:** 0%
|
||||
| Area | Task Totali | Completati | Progresso | Stato |
|
||||
|------|-------------|------------|-----------|-------|
|
||||
| Database (Migrazioni) | 7 | 0 | 0% | 🔴 Non iniziato |
|
||||
| Backend - Models/Schemas | 5 | 0 | 0% | 🔴 Non iniziato |
|
||||
| Backend - Repository | 5 | 0 | 0% | 🔴 Non iniziato |
|
||||
| Backend - Services | 6 | 0 | 0% | 🔴 Non iniziato |
|
||||
| Backend - API | 6 | 0 | 0% | 🔴 Non iniziato |
|
||||
| Testing | 3 | 0 | 0% | 🔴 Non iniziato |
|
||||
| Frontend | 0 | 0 | 0% | ⚪ Fase 2 |
|
||||
| DevOps | 0 | 0 | 0% | ⚪ Fase 3 |
|
||||
| **Completamento Totale** | **32** | **0** | **0%** | 🔴 **Setup** |
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Attività in Corso
|
||||
|
||||
### Task Corrente: `[ID-XXX] - Titolo`
|
||||
### Task Corrente: Architettura e Specifiche
|
||||
|
||||
| Campo | Valore |
|
||||
|-------|--------|
|
||||
| **ID** | TASK-XXX |
|
||||
| **Descrizione** | [Breve descrizione] |
|
||||
| **Iniziata** | YYYY-MM-DD HH:MM |
|
||||
| **Assegnato** | @agent |
|
||||
| **ID** | SPEC-001 |
|
||||
| **Descrizione** | Creare architecture.md completo con schema DB, API specs, sicurezza |
|
||||
| **Iniziata** | 2026-04-07 12:00 |
|
||||
| **Assegnato** | @spec-architect |
|
||||
| **Stato** | 🟡 In progress |
|
||||
| **Bloccata da** | Nessuna / TASK-YYY |
|
||||
| **Note** | [Eventuali ostacoli, decisioni] |
|
||||
| **Bloccata da** | Nessuna |
|
||||
| **Note** | Completato architecture.md, in corso kanban.md e progress.md |
|
||||
|
||||
**Passi completati:**
|
||||
- [x] Passo 1
|
||||
- [ ] Passo 2
|
||||
- [ ] Passo 3
|
||||
- [x] Analisi PRD completo
|
||||
- [x] Analisi codice esistente (main.py, profiler.py)
|
||||
- [x] Creazione architecture.md con:
|
||||
- [x] Stack tecnologico dettagliato
|
||||
- [x] Schema database completo (DDL SQL)
|
||||
- [x] API specifications (OpenAPI)
|
||||
- [x] Architettura a layer
|
||||
- [x] Diagrammi flusso dati
|
||||
- [x] Piano sicurezza
|
||||
- [x] Struttura progetto finale
|
||||
- [x] Creazione kanban.md con task breakdown
|
||||
- [x] Creazione progress.md (questo file)
|
||||
|
||||
---
|
||||
|
||||
@@ -50,16 +66,22 @@
|
||||
|
||||
| ID | Task | Completata | Commit | Assegnato |
|
||||
|----|------|------------|--------|-----------|
|
||||
| | | | | |
|
||||
| - | Nessuna task completata oggi - Setup iniziale | - | - | - |
|
||||
|
||||
---
|
||||
|
||||
## 📅 Prossime Task
|
||||
## 📅 Prossime Task (Priorità P1)
|
||||
|
||||
| Priority | ID | Task | Stima | Dipendenze |
|
||||
|----------|----|------|-------|------------|
|
||||
| P1 | | | | |
|
||||
| P2 | | | | |
|
||||
| Priority | ID | Task | Stima | Assegnato | Dipendenze |
|
||||
|----------|----|------|-------|-----------|------------|
|
||||
| P1 | DB-001 | Alembic Setup | S | @db-engineer | Nessuna |
|
||||
| P1 | DB-002 | Migration Scenarios Table | M | @db-engineer | DB-001 |
|
||||
| P1 | DB-003 | Migration Logs Table | M | @db-engineer | DB-002 |
|
||||
| P1 | BE-001 | Database Connection | M | @backend-dev | DB-001 |
|
||||
| P1 | BE-002 | SQLAlchemy Models | L | @backend-dev | BE-001 |
|
||||
| P2 | DB-004 | Migration Metrics Table | M | @db-engineer | DB-002 |
|
||||
| P2 | DB-005 | Migration Pricing Table | M | @db-engineer | DB-002 |
|
||||
| P2 | BE-003 | Pydantic Schemas | M | @backend-dev | BE-002 |
|
||||
|
||||
---
|
||||
|
||||
@@ -67,7 +89,7 @@
|
||||
|
||||
| ID | Problema | Impatto | Soluzione Proposta | Stato |
|
||||
|----|----------|---------|-------------------|-------|
|
||||
| | | | | 🔴 Aperto |
|
||||
| - | Nessun blocco attuale | - | - | ✅ OK |
|
||||
|
||||
---
|
||||
|
||||
@@ -75,23 +97,68 @@
|
||||
|
||||
| Data | Decisione | Motivazione | Impatto |
|
||||
|------|-----------|-------------|---------|
|
||||
| | | | |
|
||||
| 2026-04-07 | Utilizzare Repository Pattern | Separazione business logic e data access | Più testabile, manutenibile |
|
||||
| 2026-04-07 | Async-first con SQLAlchemy 2.0 | Performance >1000 RPS richiesti | Curva apprendimento ma scalabilità |
|
||||
| 2026-04-07 | Single table per scenario_logs vs DB separati | Semplice per MVP, query cross-scenario possibili | Facile backup, confronti |
|
||||
| 2026-04-07 | SHA-256 hashing per deduplicazione | Privacy + performance | Non memorizzare messaggi completi |
|
||||
|
||||
---
|
||||
|
||||
## 📈 Metriche
|
||||
|
||||
### Sprint Corrente
|
||||
- **Task pianificate:** 0
|
||||
### Sprint Corrente (Fase 1)
|
||||
- **Task pianificate:** 32
|
||||
- **Task completate:** 0
|
||||
- **Task in progress:** 0
|
||||
- **Task in progress:** 1 (Architettura)
|
||||
- **Task bloccate:** 0
|
||||
|
||||
### Qualità
|
||||
- **Test Coverage:** 0%
|
||||
- **Test passanti:** 0/0
|
||||
- **Linting:** ✅ / ❌
|
||||
- **Type Check:** ✅ / ❌
|
||||
- **Test Coverage:** 0% (da implementare)
|
||||
- **Test passanti:** 5/5 (test esistenti v0.1)
|
||||
- **Linting:** ✅ (ruff configurato)
|
||||
- **Type Check:** ⚪ (da implementare con mypy)
|
||||
|
||||
### Codice
|
||||
- **Linee codice backend:** ~150 (v0.1 base)
|
||||
- **Linee test:** ~100
|
||||
- **Documentazione:** ~2500 linee (PRD, Architettura)
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Obiettivi Sprint 1 (Week 1)
|
||||
|
||||
**Goal:** Database PostgreSQL funzionante con API CRUD base
|
||||
|
||||
### Target
|
||||
- [ ] Database schema completo (7 tabelle)
|
||||
- [ ] Alembic migrations funzionanti
|
||||
- [ ] SQLAlchemy models completi
|
||||
- [ ] Repository layer base
|
||||
- [ ] Scenario CRUD API
|
||||
- [ ] Test coverage > 60%
|
||||
|
||||
### Metriche Target
|
||||
- Test coverage: 60%
|
||||
- API endpoints: 10+
|
||||
- Database tables: 5
|
||||
|
||||
---
|
||||
|
||||
## 📋 Risorse
|
||||
|
||||
### Documentazione
|
||||
- PRD: `/home/google/Sources/LucaSacchiNet/mockupAWS/export/prd.md`
|
||||
- Architettura: `/home/google/Sources/LucaSacchiNet/mockupAWS/export/architecture.md`
|
||||
- Kanban: `/home/google/Sources/LucaSacchiNet/mockupAWS/export/kanban.md`
|
||||
- Questo file: `/home/google/Sources/LucaSacchiNet/mockupAWS/export/progress.md`
|
||||
|
||||
### Codice
|
||||
- Backend base: `/home/google/Sources/LucaSacchiNet/mockupAWS/src/`
|
||||
- Test: `/home/google/Sources/LucaSacchiNet/mockupAWS/test/`
|
||||
- Configurazione: `/home/google/Sources/LucaSacchiNet/mockupAWS/pyproject.toml`
|
||||
|
||||
### Team
|
||||
- Configurazioni: `/home/google/Sources/LucaSacchiNet/mockupAWS/.opencode/agents/`
|
||||
|
||||
---
|
||||
|
||||
@@ -106,4 +173,29 @@
|
||||
|
||||
---
|
||||
|
||||
*Ultimo aggiornamento: YYYY-MM-DD HH:MM*
|
||||
## 📝 Log Attività
|
||||
|
||||
### 2026-04-07 - Setup Iniziale
|
||||
|
||||
**Attività:**
|
||||
- ✅ Analisi completa PRD
|
||||
- ✅ Analisi codice esistente (v0.1)
|
||||
- ✅ Creazione architecture.md completo
|
||||
- ✅ Creazione kanban.md con 32 task
|
||||
- ✅ Creazione progress.md
|
||||
- ✅ Setup team configuration (.opencode/agents/)
|
||||
|
||||
**Team:**
|
||||
- @spec-architect: Architettura completata
|
||||
- @db-engineer: In attesa inizio migrazioni
|
||||
- @backend-dev: In attesa schema DB
|
||||
|
||||
**Prossimi passi:**
|
||||
1. @db-engineer inizia DB-001 (Alembic setup)
|
||||
2. @backend-dev prepara ambiente
|
||||
3. Daily check-in team
|
||||
|
||||
---
|
||||
|
||||
*Documento mantenuto dal team*
|
||||
*Ultimo aggiornamento: 2026-04-07 12:00*
|
||||
|
||||
Reference in New Issue
Block a user