pub fn lock_path(project_root: &Path) -> PathBuf
Where the registry lives for a given project root — exposed so callers reporting a write failure can name the actual file, not just the root.