# Voice Service Environment Variables
# Copy this file to .env and adjust values

# Service Configuration
PORT=8091
ENVIRONMENT=development
DEBUG=false

# JWT Authentication (REQUIRED - load from HashiCorp Vault)
# vault kv get -field=secret secret/breakpilot/auth/jwt
JWT_SECRET=
JWT_ALGORITHM=HS256
JWT_EXPIRATION_HOURS=24

# PostgreSQL (REQUIRED - load from HashiCorp Vault)
# vault kv get -field=url secret/breakpilot/database/postgres
DATABASE_URL=

# Valkey (Redis-fork) Session Cache
VALKEY_URL=redis://valkey:6379/2
SESSION_TTL_HOURS=24
TASK_TTL_HOURS=168

# PersonaPlex Configuration (Production GPU)
PERSONAPLEX_ENABLED=false
PERSONAPLEX_WS_URL=ws://host.docker.internal:8998
PERSONAPLEX_MODEL=personaplex-7b
PERSONAPLEX_TIMEOUT=30

# Task Orchestrator
ORCHESTRATOR_ENABLED=true
ORCHESTRATOR_MAX_CONCURRENT_TASKS=10

# Fallback LLM (Ollama for Development)
FALLBACK_LLM_PROVIDER=ollama
OLLAMA_BASE_URL=http://host.docker.internal:11434
OLLAMA_VOICE_MODEL=qwen2.5:32b
OLLAMA_TIMEOUT=120

# Klausur Service Integration
KLAUSUR_SERVICE_URL=http://klausur-service:8086

# Audio Configuration
AUDIO_SAMPLE_RATE=24000
AUDIO_FRAME_SIZE_MS=80
AUDIO_PERSISTENCE=false

# Encryption Configuration
ENCRYPTION_ENABLED=true
NAMESPACE_KEY_ALGORITHM=AES-256-GCM

# TTL Configuration (DSGVO Data Minimization)
TRANSCRIPT_TTL_DAYS=7
TASK_STATE_TTL_DAYS=30
AUDIT_LOG_TTL_DAYS=90

# Rate Limiting
MAX_SESSIONS_PER_USER=5
MAX_REQUESTS_PER_MINUTE=60
