2.9 KiB
2.9 KiB
テスト妥当性レビュー: daemon
- 評価: 混在
確認範囲
crates/daemon/Cargo.tomlcrates/daemon/src/lib.rscrates/daemon/README.md- リポジトリ内の
daemon参照 cargo test -p daemon
daemon は現時点では意図的な placeholder crate です。README.md では、将来の long-lived Pod lifecycle management のために予約されており、現在の Pod socket serving、CLI/TUI startup、registry mechanics をまだ所有してはいけないと説明されています。src/lib.rs は空です。
現在のテストがよくカバーしていること
cargo test -p daemonは成功します。- crate が package target としてビルドできることは確認されています。
- unit test と doc test は正常に実行されますが、どちらも
0tests です。 - 現在の空実装では、この crate 内で直接テストできる振る舞いはありません。
不足・疑わしいテスト
- テストは存在しないため、現在の test suite が証明しているのは placeholder crate がコンパイルできることだけです。
README.mdに書かれた placeholder boundary はテストで強制されていません。たとえば、具体的な設計なしに runtime lifecycle authority が誤ってここへ追加されることを防ぐ自動 guard はありません。Cargo.tomlはmanifest、protocol、tokioへの依存を宣言していますが、crate にはそれらを使うコードがありません。テストからは、これらの依存が意図的な scaffolding なのか、古い placeholder baggage なのかは分かりません。- 実装が存在しないため、テスト妥当性は「空 crate がコンパイルできる」以上にはほとんど評価できません。
追加を提案するテスト
daemonに具体的な責務が生まれるまでは、behavioral test は追加しないでください。- crate をしばらく placeholder のままにするなら、予期しない public API や非空の runtime 実装を検出する軽量な policy/lint-style check を crate 外に置くことは考えられます。ただし任意であり、過剰かもしれません。
- daemon 機能を導入するときは、実装詳細ではなく実際の invariant に対するテストを追加してください。
- long-lived Pod management の lifecycle state transition
- persistence / recovery behavior
- shutdown、cancellation、restart semantics
daemon、pod、pod-registry、yoi、tuiの authority boundary- socket/path handling と failure case
- 該当する場合は manifest/profile-derived configuration との interaction
実行したコマンド
cd /home/hare/Projects/yoi && cargo test -p daemon
結果: 成功。daemon をビルドし、0 unit tests と 0 doc tests を実行しました。