# ========================================
# TriForce Backend - Dependencies
# Python 3.14 | Stand: 2026-07
#
# Regeln:
#  - Nur was der Code auch wirklich importiert (AST-verifiziert).
#  - Optionale Features (torch, transformers, onnxruntime, llama-cpp,
#    sentence-transformers) sind in app/services/compute_backend.py
#    hinter try/except mit Fallback -> bewusst NICHT hier.
#    Bei Bedarf: requirements-ml.txt
# ========================================

# Build
setuptools<85

# Core Framework
fastapi==0.141.1
# [standard] = uvloop + httptools + watchfiles. NICHT auf nacktes "uvicorn" reduzieren --
# google-antigravity fordert uvicorn ohne Extras und wirft uvloop/httptools sonst raus (2026-07-13).
uvicorn[standard]>=0.52.1
pydantic>=2.13.4,<3
pydantic-settings>=2.15.0,<3

# HTTP Clients & Async
httpx[http2]==0.28.1
aiohttp==3.14.3
aiofiles==25.1.0
requests>=2.32,<3

# Rate Limiting & Caching
fastapi-limiter==0.2.0
redis==8.1.0

# AI Provider SDKs
google-genai==2.18.1
anthropic==1.0.0
openai==3.3.1
mistralai==2.9.3

# Data Processing & Validation
python-multipart==0.0.32   # FastAPI Form()/UploadFile
email-validator==2.3.0     # pydantic EmailStr
Pillow==12.3.0
PyYAML>=6.0.3,<7
orjson>=3.12.0

# Crawler / Scraping
playwright>=1.62.0
beautifulsoup4>=4.15.0
python-dateutil==2.9.0.post0
rank-bm25>=0.2.2
jsonlines>=4.0.0

# Security & Auth
PyJWT>=2.13.0
cryptography>=50.0.0        # app/services/api_vault.py
websockets>=12.0

# CLI / TUI
rich>=15.0.0                # app/cli/tristar_tui.py
textual>=8.2.8            # app/cli/tristar_tui.py

# Monitoring
psutil==7.2.2
prometheus-client==0.26.0

# Testing
pytest==9.1.1
pytest-asyncio==1.4.0
pytest-cov==7.1.0
pytest-mock==3.15.1
fakeredis>=2.37.1

# Code Quality
ruff==0.16.5
black==26.5.1
mypy==2.3.1
# Antigravity SDK runs only in the isolated worker venv from requirements-antigravity.txt.
crawlee>=1.9.2
tenacity==9.1.4
passlib[bcrypt]==1.7.4
qrcode==8.2
