Files
mockupAWS/pyproject.toml
Luca Sacchi Ricciardi cc60ba17ea
Some checks failed
E2E Tests / Run E2E Tests (push) Has been cancelled
E2E Tests / Visual Regression Tests (push) Has been cancelled
E2E Tests / Smoke Tests (push) Has been cancelled
release: v0.5.0 - Authentication, API Keys & Advanced Features
Complete v0.5.0 implementation:

Database (@db-engineer):
- 3 migrations: users, api_keys, report_schedules tables
- Foreign keys, indexes, constraints, enums

Backend (@backend-dev):
- JWT authentication service with bcrypt (cost=12)
- Auth endpoints: /register, /login, /refresh, /me
- API Keys service with hash storage and prefix validation
- API Keys endpoints: CRUD + rotate
- Security module with JWT HS256

Frontend (@frontend-dev):
- Login/Register pages with validation
- AuthContext with localStorage persistence
- Protected routes implementation
- API Keys management UI (create, revoke, rotate)
- Header with user dropdown

DevOps (@devops-engineer):
- .env.example and .env.production.example
- docker-compose.scheduler.yml
- scripts/setup-secrets.sh
- INFRASTRUCTURE_SETUP.md

QA (@qa-engineer):
- 85 E2E tests: auth.spec.ts, apikeys.spec.ts, scenarios.spec.ts, regression-v050.spec.ts
- auth-helpers.ts with 20+ utility functions
- Test plans and documentation

Architecture (@spec-architect):
- SECURITY.md with best practices
- SECURITY-CHECKLIST.md pre-deployment
- Updated architecture.md with auth flows
- Updated README.md with v0.5.0 features

Documentation:
- Updated todo.md with v0.5.0 status
- Added docs/README.md index
- Complete setup instructions

Dependencies added:
- bcrypt, python-jose, passlib, email-validator

Tested: JWT auth flow, API keys CRUD, protected routes, 85 E2E tests ready

Closes: v0.5.0 milestone
2026-04-07 19:22:47 +02:00

34 lines
687 B
TOML

[project]
name = "mockup-aws"
version = "0.1.0"
description = "Simulatore locale del backend AWS per LogWhispererAI."
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"alembic>=1.18.4",
"asyncpg>=0.31.0",
"fastapi>=0.110.0",
"pydantic>=2.7.0",
"pydantic-settings>=2.13.1",
"tiktoken>=0.6.0",
"uvicorn>=0.29.0",
"reportlab>=4.0.0",
"pandas>=2.0.0",
"slowapi>=0.1.9",
"bcrypt>=4.0.0",
"python-jose[cryptography]>=3.3.0",
"passlib[bcrypt]>=1.7.4",
"email-validator>=2.0.0",
]
[dependency-groups]
dev = [
"httpx>=0.27.0",
"pytest>=8.1.1",
]
[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["."]