"""Application configuration loaded from environment variables""" from pydantic_settings import BaseSettings from functools import lru_cache class Settings(BaseSettings): """Application settings""" # Database DATABASE_URL: str # Security FERNET_KEY: str # AD API AD_API_URL: str # Session Settings SESSION_INACTIVITY_DAYS: int = 3 TOKEN_REFRESH_THRESHOLD_MINUTES: int = 5 MAX_REFRESH_ATTEMPTS: int = 3 # Server HOST: str = "0.0.0.0" PORT: int = 8000 DEBUG: bool = True # MinIO Object Storage MINIO_ENDPOINT: str = "localhost:9000" MINIO_ACCESS_KEY: str = "minioadmin" MINIO_SECRET_KEY: str = "minioadmin" MINIO_BUCKET: str = "task-reporter-files" MINIO_SECURE: bool = False # Use HTTPS class Config: env_file = ".env" case_sensitive = True @lru_cache() def get_settings() -> Settings: """Get cached settings instance""" return Settings()