dotweave doctor
同期リポジトリ、設定、age identity、トラッキング中のローカルパスをまとめて診断します。
使い方
dotweave doctor
push や pull が問題に突き当たる前に、ローカル環境を点検して何が壊れているかを報告します。doctor は引数を取らず、--help 以外のフラグもありません。
チェック項目
doctor は 6 つのチェックを決まった順序で実行します。2 つのチェック id は表示名が異なります。内部の age は identity、内部の local-paths は local として表示されます。以下の名前は出力に現れる側です。
| チェック | 確認内容 | 失敗が意味すること |
|---|---|---|
git | 同期ディレクトリが git のワークツリーかどうかを確認します。 | 同期ディレクトリがない、またはリポジトリではありません。ここで即座に失敗し、実行は止まります。 |
config | manifest.jsonc を読み込んで検証し、項目数と recipient 数を報告します。 | manifest が読めない、または妥当ではありません。ここで即座に失敗し、実行は止まります。 |
profiles | アクティブなプロファイル、または未設定であることを報告します。 | 失敗しないチェックです。現在の選択状態だけを報告します。 |
identity | 解決されたパスに age identity ファイルが存在するかを確認します。 | このマシンではシークレット artifact を復号できません。 |
entries | 項目が 0 件のときに警告します。 | 失敗しないチェックです。警告は、まだ何もトラッキングしていないことを示します。 |
local | ignore 以外の項目でローカルパスが存在しないものについて、その不在が現在の同期状態と整合するかを確認します。 | 失われたローカルパスをリポジトリの状態では説明できません。 |
動作
doctor は ok、警告、失敗の件数を 1 行で要約し、続けて ok でないチェックを最大 3 件まで出力します。それより多い場合は ... N more issues を添えます。
dotweave doctor
· Running checks...
✔ Doctor passed (6 ok · 0 warnings · 0 failures)
いずれかのチェックが失敗すると、終了コード 1 で終わります。警告だけなら失敗として扱いません。doctor は何も書き込みません。manifest を修復したり、ローカルパスを復元したり、リポジトリに触れたりはしません。
エラー
doctor は問題をコマンドのエラーではなくチェック結果として報告します。例外は git と config のチェックで、この 2 つは失敗した時点で実行を止めます。失敗が 1 件以上残ったまま終わった場合は Doctor found issues. を投げます。このエラーにはエラーコードもヒントもありません。失敗したチェックの詳細行が従うメッセージ形式は、エラーメッセージのエラーの読み方の節を参照してください。
関連コマンド
報告された問題の背後にどの変更が控えているかは dotweave status、チェックが出力したメッセージを調べるにはエラーメッセージを参照してください。