ソース・テスト・スクリプトを追加・移動するときは本ルールに従い,責務ごとのサブパッケージ配置を保つこと.設計の背景は SPEC_01 アーキテクチャ設計を参照する(本ルールは配置規則のみを定める).
src/tias_judge_model/ ├── __init__.py ├── schema.py # pydantic 設定スキーマ ├── data/ # manifest 読み込み・Dataset・患者単位分割・前処理 ├── models/ # timm ラッパ(アーキテクチャ差し替え点) ├── training/ # 学習ループ・損失・スケジューラ ├── evaluation/ # 指標・混同行列・レポート生成 ├── baseline/ # ルールベース比較(TIASjudge 相当) ├── remote/ # リモート実行(転送・ジョブ実行・回収) └── cli/ # CLI エントリポイント tests/ # src のサブパッケージ構造をミラーする scripts/ # 単発の調査・合成データ生成・manifest 生成 configs/ # 実験設定 YAML(コード外の設定)
cli → training / evaluation → data / models の一方向を保つ.data・models から上位(cli・training)を import しないcli・remote・training の縁に寄せ,data の変換処理・evaluation の指標計算は入力 → 出力の純関数として書く(テスト容易性のため..claude/rules/testing.md の必須テスト対象と対応する)configs/*.yaml に置き,閾値・パスをコードに埋め込まない.臨床データはリポジトリに置かない(data/ は .gitignore 済み)src/ ではなく scripts/ に置く(パッケージの公開 API を汚さない)tests/ は src/tias_judge_model/ の構造をミラーする(詳細は .claude/rules/testing.md)