ponshu-room-lite/docs/archive/CODE_REVIEW_CHECKLIST.md

79 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# コードレビュー観点 v1.0.11+21
## 1. Phase D6設計整合性 ⭐⭐⭐⭐⭐
### 1-1. filteredByModeProvider経由の確認
- [ ] `rawSakeListItemsProvider`が不適切に使用されていない
- [ ] 例外: 空状態判定で`filteredByModeProvider`を使用
### 1-2. Personal/Business Mode判定
- [ ] `userProfile.isBusinessMode`で判定
- [ ] または`.select((p) => p.isBusinessMode)`でパフォーマンス最適化
---
## 2. 非同期処理の安全性 ⭐⭐⭐⭐⭐
### 2-1. BuildContextキャプチャパターン
- [ ] async gap前に`final navigator = Navigator.of(context);`
- [ ] async gap前に`final messenger = ScaffoldMessenger.of(context);`
- [ ] async gap後は`navigator.pop()`を使用
### 2-2. mountedチェック
- [ ] すべてのasync gap後に`if (!mounted) return;`
### 2-3. Linter警告
- [ ] `use_build_context_synchronously`警告がゼロ
---
## 3. パフォーマンス ⭐⭐⭐⭐
### 3-1. Provider最適化
- [ ] `.select()`による部分監視
- [ ] 不要な`ref.watch()`がない
### 3-2. リスト最適化
- [ ] `ListView.builder`使用(大量データ対応)
- [ ] 画像キャッシュが適切
---
## 4. 保守性 ⭐⭐⭐⭐
### 4-1. マジックナンバー
- [ ] `AppConstants`クラスに定義済み
- [ ] ハードコードされた数値がない
### 4-2. コメント
- [ ] 意図的な設計判断にコメント
- [ ] 複雑なロジックに説明コメント
### 4-3. ドキュメント
- [ ] CURSOR_HANDOFF_FINAL_v1.0.10+20.md参照
- [ ] 将来的検討事項が文書化
---
## 5. 意図的なハードコーディング(保護) ⭐⭐⭐⭐⭐
参照: `SAFE_FIXES_REPORT.md`
### 5-1. 変更してはいけない箇所
- [ ] `lib/widgets/home/sake_grid_item.dart`:102 `Colors.black54`
- [ ] `lib/screens/home_screen.dart`:86-88 `Colors.white`
- [ ] SpeedDialオーバーレイ
### 5-2. 変更理由の確認
- [ ] 視認性確保のため(画像オーバーレイ)
- [ ] AppBar常にダーク背景のため検索フィールド
---
## レビュー実施記録
**レビュアー**: ___________
**レビュー日時**: ___________
**結果**: Approved / Changes Requested
**コメント**: ___________