STATUS BACKEND TPI_evoluto (POWER)
STATO
- Backend FastAPI + SQLAlchemy + Alembic avviabile in dev.
- Schema DB v1 definito (docs + migrazione iniziale).
- Auth JWT abbozzata, router CSV/NFC/OPS presenti come base.
- Script
scripts/run_tpi_dev.ps1avvia server + Alembic.
PROBLEMI / RISCHI
- Migrazione Alembic iniziale fragile (BOM/header, metadata).
- Nessuna session factory centralizzata € €™ rischio leak/non thread-safe.
- Enums e modelli non ancora pienamente allineati.
- Gestione JWT/SECRET e hashing password da completare.
- Zero test/CI € €™ regressioni non intercettate.
PRIORIT¬ PROSSIMI COMMIT
- Sistemare definitivamente migrazione Alembic +
env.py(metadata, DATABASE_URL). - Introdurre
app/db/base.pyconnaming_convention+app/db/session.pyconSessionLocal/get_db. - Stabilizzare router (
app.routers.*assoluti) e centralizzare enums. - Rafforzare auth:
JWT_SECRET_KEYda env, hashing con passlib, ruoli/tenant nei token. - Aggiungere test Pytest minimi (import app,
/health, Alembic upgrade) e pipeline CI semplice.
NOTE SICUREZZA (FOCUS)
- JWT: nessun secret hardcoded in prod; exp breve, rotazione programmata.
- Password: solo hash (bcrypt/argon2), mai testo in chiaro nei log.
- Multi-tenant: uso sistematico di
azienda_idnei filtri. - CORS & rate limit: origini limitate in prod, protezione login da brute-force.
- Principio minimo privilegio: utente DB applicativo senza permessi amministrativi.
Sintesi: base solida, ma da stabilizzare subito Alembic + sessioni + auth. Poi test/CI.