# 開発進捗ログ

<!--
本ファイルは追記型のフル進捗ログ．

- 最新エントリは下に追記する（時系列順．古いものが上，新しいものが下）
- CLAUDE.md の「開発進捗」セクションは最新 1 行のみ（上書き運用）
- 詳細・失敗パターン・設計判断はすべて本ファイルに残す
- 書式・運用ルールは .claude/rules/progress-log.md を参照
  （本ファイルの編集時に自動ロードされる）
-->

- [x] **プロジェクト立ち上げ（GUIDE_01）**: 要件定義・技術選定・環境構築・仕様設計・規約整備・開発計画を `chore/project-setup` で完了（2026-10-02）．solo モード
  - 動機: 舌診研究の各リポジトリが研究室 PC のフォルダを個別に読む形をやめ，データセット名と版で取り出せる共通の入口を作る
  - 設計判断: 目録は SQLite ＋ SHA-256 名のストア（取り込み時にコピー．原本参照より版の再現が確実）．計算サーバへは版ごとのバンドル（`SHA256SUMS` 付き）を直送．所見は種類の定義＋ JSON 値で持ち，種類の追加で表を作り直さない
  - 運用: 研究室 PC は手元 PC から `ssh labpc` で操作し，研究室 PC では編集しない．研究室 PC に uv 0.12.22・Python 3.12.15 を導入済み．検証プロファイルは作らない（CLI はテストと `tiasdata check` で確認する）
  - 未実装・後段: `main` がまだ存在しない（GitHub・GitBucket とも空）．取り込み後に研究室 PC へ clone する（ENV_02）．次は PLAN_02 Step 1
- [x] **舌色データが 1 患者 1 枚でないことの反映**: 研究室 PC の対応表（`DeepTIAS後_ID_番号.xlsx`）と件数だけで照合し，1085 枚が約 450 人分（2 枚以上の患者 239 人・874 枚）と判明（2026-10-03）．取り込みで対応表を読み，患者単位で症例をまとめる設計に直した（PLAN_01・PLAN_02・SPEC_01〜03・ENV_01）
  - 影響: TIASJudgeModel は画像 ID を `patient_id` にしており，同じ患者の画像が学習と評価に分かれている可能性がある．基盤経由に切り替える Step 8 で患者単位の分割に直し，成績の差を記録する
  - 判断: xlsx を読む openpyxl は任意の依存（`import`）にし，使う側には入れない
