"""MongoDB client singleton. Lazy-initialised so tests without a real URI never fail on import.""" import logging from pymongo import MongoClient from app import config logger = logging.getLogger("saarthi.db") _client = None def get_client() -> MongoClient: global _client if _client is None: uri = config.mongodb_uri() if not uri: raise RuntimeError("MONGODB_URI is not set — add it to .env") _client = MongoClient(uri, serverSelectionTimeoutMS=5000) return _client def get_db(): return get_client()["saarthi"]