---
generated_at: 2026-01-28 12:00:00
metrics:
  claims_total: 33
  claims_with_evidence: 33
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：order_shipping.csv

## 本レポートについて

### 目的
本レポートは、生成された単体テストケース一覧の信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：33 / 33、根拠なし：0
- 優先レビュー（高）
  1. **UT-OSH-005**：エラーハンドリング実装の確認（現実装に潜在的な問題あり）
  2. **UT-OSH-001/002**：BLoCの正常系・異常系フローの網羅性確認
  3. **UT-OSH-014/017/020**：JSONパース関連テストの網羅性確認

## 2) 参照した情報（Evidence一覧）
> order_shippingモジュールのソースコードファイル

- E-01: `lib/screens/order_shipping/shipments_details.dart` (OrderShipmentsScreen)
- E-02: `lib/screens/order_shipping/bloc/order_shipments_bloc.dart` (OrderShipmentsBloc)
- E-03: `lib/screens/order_shipping/bloc/order_shipments_repository.dart` (OrderShipmentsRepositoryImp)
- E-04: `lib/screens/order_shipping/bloc/order_shipments_event.dart` (OrderShipmentsFetchDataEvent)
- E-05: `lib/screens/order_shipping/bloc/order_shipments_state.dart` (OrderShipmentsBaseState, OrderShipmentsListDataState)
- E-06: `lib/data_model/order_model/shipment_model.dart` (ShipmentModel, ViewShipments, ItemsModel)
- E-07: `lib/screens/order_shipping/utils/index.dart` (Export定義)

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 (UT-OSH-001) | BLoCのmapEventToStateがOrderShipmentsFetchDataEvent受信時に成功状態を発行 | E-02 (L23-35) | ○ |
| C-02 (UT-OSH-002) | BLoCのmapEventToStateがエラー時にfail状態を発行 | E-02 (L32-34) | ○ |
| C-03 (UT-OSH-003) | BLoC初期状態がOrderShipmentsInitialState | E-02 (L19) | ○ |
| C-04 (UT-OSH-004) | RepositoryのgetShipmentsListがAPIからデータ取得 | E-03 (L21-31) | ○ |
| C-05 (UT-OSH-005) | Repositoryのエラーハンドリング挙動（null強制アクセス） | E-03 (L26-30) | ○ |
| C-06 (UT-OSH-006) | orderId=0の境界値処理 | E-03 (L24) | ○ |
| C-07 (UT-OSH-007) | OrderShipmentsFetchDataEventのorderId設定 | E-04 (L15-18) | ○ |
| C-08 (UT-OSH-008) | OrderShipmentsFetchDataEventのprops実装 | E-04 (L20-21) | ○ |
| C-09 (UT-OSH-009) | OrderShipmentsInitialStateのprops実装 | E-05 (L22-25) | ○ |
| C-10 (UT-OSH-010) | OrderShipmentsListDataState.successファクトリ | E-05 (L33) | ○ |
| C-11 (UT-OSH-011) | OrderShipmentsListDataState.failファクトリ | E-05 (L34) | ○ |
| C-12 (UT-OSH-012) | OrderShipmentsListDataStateのprops（データあり） | E-05 (L37) | ○ |
| C-13 (UT-OSH-013) | OrderShipmentsListDataStateのprops（null時） | E-05 (L37) | ○ |
| C-14 (UT-OSH-014) | ShipmentModel.fromJsonの正常系 | E-06 (L25-26) | ○ |
| C-15 (UT-OSH-015) | ShipmentModel.fromJsonの異常系（空JSON） | E-06 (L25-26) | ○ |
| C-16 (UT-OSH-016) | ShipmentModel.toJson | E-06 (L28-29) | ○ |
| C-17 (UT-OSH-017) | ViewShipments.fromJson | E-06 (L44-45) | ○ |
| C-18 (UT-OSH-018) | ViewShipments.toJson | E-06 (L47) | ○ |
| C-19 (UT-OSH-019) | ViewShipmentsコンストラクタ（null許容） | E-06 (L38-42) | ○ |
| C-20 (UT-OSH-020) | ItemsModel.fromJson | E-06 (L83-84) | ○ |
| C-21 (UT-OSH-021) | ItemsModel.toJson | E-06 (L86) | ○ |
| C-22 (UT-OSH-022) | ItemsModelのqty=0境界値 | E-06 (L56) | ○ |
| C-23 (UT-OSH-023) | ItemsModelのqty負値境界値 | E-06 (L56) | ○ |
| C-24 (UT-OSH-024) | OrderShipmentsScreen.initStateのイベント発行 | E-01 (L18-23) | ○ |
| C-25 (UT-OSH-025) | OrderShipmentsScreen.initStateのnull安全 | E-01 (L21) | ○ |
| C-26 (UT-OSH-026) | buildContainerのInitialState時Loader表示 | E-01 (L43-45) | ○ |
| C-27 (UT-OSH-027) | buildContainerの成功状態時表示 | E-01 (L46-51) | ○ |
| C-28 (UT-OSH-028) | shipmentsDetailsのデータあり時表示 | E-01 (L58-82) | ○ |
| C-29 (UT-OSH-029) | shipmentsDetailsのnull時EmptyDataView | E-01 (L82) | ○ |
| C-30 (UT-OSH-030) | getShipmentsのリスト表示 | E-01 (L106-149) | ○ |
| C-31 (UT-OSH-031) | getShipmentsのnull安全 | E-01 (L107) | ○ |
| C-32 (UT-OSH-032) | childDataの表示 | E-01 (L85-104) | ○ |
| C-33 (UT-OSH-033) | childDataの空値表示 | E-01 (L85-104) | ○ |

## 4) 不足情報（Unknown / Missing）
- 該当なし - すべてのテストケースはソースコードに基づいて生成されています。

補足事項：
- APIクライアント（ApiClient）の実装詳細は別モジュールのため、このモジュールのテスト範囲外
- Widgetテスト（UI表示確認）については、Flutter標準のWidgetテストフレームワークを使用することを想定

## 5) リスクフラグ（レビュー観点）
- **リスク1（高）**: `OrderShipmentsRepositoryImp.getShipmentsList`のエラーハンドリングにおいて、catchブロックでエラーをログ出力後に`shipmentData!`で強制アンラップしているため、APIエラー時にnull参照例外が発生する可能性がある（E-03, L30）
- **リスク0（低）**: `OrderShipmentsFetchDataEvent.props`が空リストを返しているため、同一orderIdの重複イベントが区別されない可能性がある（E-04, L20-21）

## 6) レビュアーチェックリスト（最小）
- [ ] UT-OSH-005：Repositoryのエラーハンドリングについて、現実装の問題点を認識した上でテスト実装すること
- [ ] BLoC関連テスト（UT-OSH-001〜003）：mocktailまたはmockitoでRepositoryをモック化した上でテストすること
- [ ] モデル関連テスト（UT-OSH-014〜023）：json_serializableの生成コード（.g.dart）が最新であることを確認すること
- [ ] Widget関連テスト（UT-OSH-024〜033）：BlocProviderとモックBLoCを使用したWidgetテストとして実装すること
- [ ] 優先度「高」のテストケースを先行して実装すること
