千葉大学 TIAS(舌画像撮影・解析システム)のスマートフォン版.Flutter で開発し,初期は撮影・保存に特化する.
最新: CameraProvider をテスト可能化(依存注入・撮影フロー特性化テスト・takePicture 分割)
※ 本欄は最新ステップ 1 行のみ上書き更新.詳細な進捗履歴(動機・設計判断・失敗パターン)は docs/PROGRESS.md に追記する.運用ルールは .claude/rules/progress-log.md を参照(該当ファイル編集時に自動ロードされる).
- Effective Dart に準拠.プロジェクト固有ルールは
.claude/rules/coding-style.md(lib/**・test/** 編集時に自動ロード)を参照
dart format + dart analyze を必ず実行してからコミットする
- 1 ファイル 1 クラス.命名は Provider / Service / Screen の接尾辞ルールに従う
- エラー処理: Service → Provider → Screen の順で伝播し,画面でユーザーに通知
dart analyze — 警告・エラー 0 件
dart format . — 差分なし
flutter test — 全テスト通過
- ドキュメント更新(仕様変更がある場合)
- ブランチ名・コミットメッセージの書式は
.claude/rules/git-conventions.md に従う(常時ロードされる)
- コミットは
/commit を使用する(push・PR 作成は /commit push)
/commit はユーザーが明示的に指示した時のみ実行する.Claude が自発的に /commit や git commit を呼んではならない(/implement 完了後も,案内するだけで自分ではコミットしない)
- 例外: 以下の無人運転ループはユーザー承認済みの例外として専用ブランチに自律コミットする.いずれも push・PR・マージ・
main への操作はしない(取り込みは人間が /commit push 等で行う)
/auto-refactor(リファクタ/ドキュメント整理ループ)→ refactor/ 専用ブランチ
/auto-audit(バグ/脆弱性の巡回監査ループ)→ fix/ 専用ブランチ
- 実装は
/implement <タスク> で開始する(コーディング → テスト → リファクタリング → ドキュメント更新)
- Phase 1 後に人間が動作確認,Phase 2 でテスト失敗時のみ方針判断
- Phase 2 成功後は Phase 3 → Phase 4 まで自動で進む(Phase 4 で更新がある場合のみ確認)
- テスト・リファクタリングをスキップしない
- 起動・テスト・lint・ビルド等のコマンドは
docs/02_ENV/ENV_04_開発コマンド.md にまとめる.実行前に必ず参照し,推測でコマンドを試さない
- コマンドが新しく確定・変更された時は同ファイルに反映する(
/implement の Phase 4 でも見直される)
以下は実装完了後にユーザーへ報告し,確認・実施を依頼すること.
- 外部サービスの設定(コンソール操作,セキュリティルール変更等)
- 実機・ブラウザでの動作確認
- ストアへのアップロード・リリース作業
設計・規約に関する情報は docs/ にある.
コードを書く前に関連するファイルを読むこと.
- プロジェクト立ち上げフロー: docs/01_GUIDE/GUIDE_01_プロジェクト立ち上げフロー.md
- エージェント運用ルール: docs/01_GUIDE/GUIDE_02_エージェント運用ルール.md
- ※ GUIDE_03 は team モード専用(チーム開発ルール).solo モードでは配置されない
- ※ 実装完了フロー・コミット前チェックは GUIDE_02 と
/implement で定義(本ファイル上部「必須ルール」も参照)
- Git 運用: .claude/rules/git-conventions.md(常時ロード)
- ドキュメント書式: .claude/rules/markdown-style.md(
**/*.md 編集時)
- ファイル命名: .claude/rules/docs-naming.md(
docs/** 編集時)
- 進捗記録: .claude/rules/progress-log.md(CLAUDE.md・docs/PROGRESS.md 編集時)
- コーディング規約: .claude/rules/coding-style.md(
lib/**・test/** 編集時)
- プロジェクト構成: .claude/rules/project-structure.md(
lib/**・test/** 編集時)
- エラーハンドリング: .claude/rules/error-handling.md(
lib/** 編集時)
- テスト方針: .claude/rules/testing.md(
test/** 編集時)
- 技術スタック: docs/02_ENV/ENV_01_技術スタック.md
- 環境構築手順: docs/02_ENV/ENV_02_環境構築手順.md
- 管理者用環境構築手順: docs/02_ENV/ENV_03_管理者用環境構築手順.md
- 開発コマンド: docs/02_ENV/ENV_04_開発コマンド.md
- 要件定義書: docs/03_PLAN/PLAN_01_要件定義書.md
- 開発ステップ: docs/03_PLAN/PLAN_02_開発ステップ.md
- 画面機能仕様書(画面・遷移・UI・パーミッション): docs/04_SPEC/SPEC_01_画面機能仕様書.md
- カメラ撮影仕様書(カメラ制御・撮影フロー・ファイル管理): docs/04_SPEC/SPEC_02_カメラ撮影仕様書.md
- アーキテクチャと非機能(コード構成・非機能要件): docs/04_SPEC/SPEC_03_アーキテクチャと非機能.md
- プレビュー向きとクロップ(反転・クロップの座標系・変更時の確認手順): docs/04_SPEC/SPEC_04_プレビュー向きとクロップ.md
- 定量モード設計の経緯と合意(旧 TECH_01/03/04 の往復書簡を統合・要約.現行確定仕様は SPEC_02 参照): docs/05_TECH/TECH_01_定量モード設計の経緯と合意.md
- AQUOS sense3 カメラ能力診断結果(2026-05-31): docs/06_TEST/camera_diagnostics_20260531_161734.json