T01: core infrastructure + auth + multi-tenant + RLS
- 10 models: tenants, users, user_tenants, roles, sessions, audit_log, deletion_log, notifications, password_reset_tokens, api_tokens - Session-based auth (Redis + PostgreSQL audit trail) - Multi-tenant with ORM-level filtering + PostgreSQL RLS (set_config) - RBAC with roles/permissions + field-level permissions - CSRF protection via Origin header validation - Auth rate limiting (Redis counters with TTL) - CORS with explicit origins (no wildcard) - Health endpoint (no auth required) - Notification service + audit log middleware - 29 tests, 26 ACs, all passing - Coverage: 62% (infrastructure modules pending coverage in later tasks)
This commit is contained in:
+9
-7
@@ -1,14 +1,13 @@
|
||||
# CRM System v1.0 - Production Dependencies
|
||||
# Pinned per 02-architecture.md Section 13.6
|
||||
# LeoCRM v1.0 - Production Dependencies
|
||||
|
||||
# Web framework
|
||||
fastapi>=0.111.0,<0.116
|
||||
uvicorn[standard]>=0.29.0
|
||||
python-multipart>=0.0.7
|
||||
|
||||
# Database / ORM
|
||||
sqlalchemy==2.0.35
|
||||
alembic>=1.13
|
||||
aiosqlite>=0.19
|
||||
asyncpg>=0.29
|
||||
|
||||
# Validation / Settings
|
||||
@@ -16,13 +15,16 @@ pydantic>=2.5
|
||||
pydantic-settings>=2.1
|
||||
|
||||
# Auth
|
||||
python-jose[cryptography]==3.3.0
|
||||
passlib[bcrypt]==1.7.4
|
||||
bcrypt==4.0.1
|
||||
python-multipart>=0.0.7
|
||||
|
||||
# File I/O (for static files in phase 4c)
|
||||
# Redis / Job Queue
|
||||
redis>=5.0
|
||||
arq>=0.25
|
||||
|
||||
# File I/O
|
||||
aiofiles>=23.2
|
||||
|
||||
# Templates (optional, for error pages)
|
||||
# Templates (optional)
|
||||
jinja2>=3.1
|
||||
greenlet>=3.0
|
||||
|
||||
Reference in New Issue
Block a user