butler/tools/audit_persist_ops.py
Rama main · réplica de lectura del repositorio original.
"""Tool audit JSONL path resolution best-effort helpers (P0-A)."""
from __future__ import annotations
from pathlib import Path
from butler.core.best_effort import safe_best_effort
def resolve_butler_home_safe() -> Path:
def _run() -> Path:
from butler.configuration.settings import get_settings
return Path(get_settings().butler_home).expanduser()
result = safe_best_effort(
_run,
label="audit_persist.butler_home",
default=None,
)
if isinstance(result, Path):
return result
return Path.home() / ".butler"