refactor: 保守性改善(コード重複・logger.bind・docstring 乖離・~ 展開ほか)

内容

コードレビューで見つかった軽微な改善点のまとめ。

コード整理

  • config.load_config()ConfigReader._load_file() がほぼ同一実装(load_config は本体コードから未使用)。片方に統合する
  • generator.run() の ConfigKind 二重変換(cli.py:143-144 で変換済みなのに generator.py:281 で再変換)。sys.exit(1)typer.Exit の混在も統一
  • reader.py_print_fetch_tasks / _print_backup_tasks がほぼコピー。kind を引数に取る1関数へ統合

挙動の改善

  • reader._expand_env_varsos.path.expanduser を追加(現状 ~/backup./~/backup 扱い、$HOME は動くという非対称)
  • verify_directory のリモート判定 ":" in path は Windows ドライブレターを誤判定(classifiers は OS Independent)
  • env.py のホスト名正規化衝突(my-server.commy.server.com が同一環境変数名)をドキュメントに明記

その他

  • logger.get_logger()logger.bind(name=...) は extra に入るだけでフォーマットの {name} には効いていない。戻り値型注釈 "logger" も不正確
  • docstring の出力例が実装と乖離(例: fetcher は "Fetching logs from ... to ..." と記載だが実出力は "Fetching logs" のみ)
  • reader.py のテストカバレッジ 59%。_get_default_config_path の探索順・_expand_env_vars のテスト追加