from __future__ import annotations import tempfile from pathlib import Path from loguru import logger _temp_dir: Path | None = None def get_temp_dir() -> Path: global _temp_dir if _temp_dir is None: _temp_dir = Path(tempfile.mkdtemp(prefix="neutts_")) logger.info(f"Created temp directory: {_temp_dir}") _temp_dir.mkdir(parents=True, exist_ok=True) return _temp_dir def cleanup_temp() -> None: global _temp_dir if _temp_dir is not None and _temp_dir.exists(): import shutil shutil.rmtree(_temp_dir, ignore_errors=True) logger.info(f"Cleaned up temp directory: {_temp_dir}") _temp_dir = None