"""Shared runtime paths derived from environment variables.""" import os from pathlib import Path _ROOT_DIR = Path(__file__).resolve().parents[2] def _resolve_env_path(name: str, default: str) -> Path: raw = os.getenv(name, default).strip() or default path = Path(raw) if not path.is_absolute(): path = _ROOT_DIR / path return path def data_dir() -> Path: return _resolve_env_path("DATA_DIR", "data") def log_dir() -> Path: return _resolve_env_path("LOG_DIR", "logs") def data_path(*parts: str) -> Path: return data_dir().joinpath(*parts) def log_path(*parts: str) -> Path: return log_dir().joinpath(*parts) __all__ = ["data_dir", "log_dir", "data_path", "log_path"]