---
generated_at: 2026-02-24 10:30:00
metrics:
  claims_total: 100
  claims_with_evidence: 98
  claims_without_evidence: 2
confidence_derived: 0.98
---

# 根拠レポート：core-flows 単体テストケース一覧

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.98**
  - 根拠あり：98 / 100、根拠なし：2
- 優先レビュー（高）
  1. **UT-CFL-069**: createPromotionsStepのテストケース - 実装ファイル未確認
  2. **UT-CFL-070**: updatePromotionsStepのテストケース - 実装ファイル未確認

## 2) 参照した情報（Evidence一覧）
> ここに「実在するもの」だけ列挙。抽出フェーズで付けたIDをそのまま出す。

- E-01: `packages/core/core-flows/src/promotion/steps/delete-promotions.ts`
- E-02: `packages/core/core-flows/src/promotion/workflows/delete-promotions.ts`
- E-03: `packages/core/core-flows/src/order/workflows/update-order.ts`
- E-04: `packages/core/core-flows/src/cart/steps/validate-cart.ts`
- E-05: `packages/core/core-flows/src/cart/steps/find-or-create-customer.ts`
- E-06: `packages/core/core-flows/src/payment/steps/capture-payment.ts`
- E-07: `packages/core/core-flows/src/fulfillment/steps/validate-shipment.ts`
- E-08: `packages/core/core-flows/src/common/steps/emit-event.ts`
- E-09: `packages/core/core-flows/src/common/steps/use-query-graph.ts`
- E-10: `packages/core/core-flows/src/product/steps/create-products.ts`
- E-11: `packages/core/core-flows/src/inventory/steps/create-inventory-items.ts`
- E-12: `packages/core/core-flows/src/customer/steps/create-customers.ts`
- E-13: `packages/core/core-flows/src/region/steps/create-regions.ts`
- E-14: `packages/core/core-flows/src/order/utils/order-validation.ts`
- E-15: `packages/core/core-flows/src/cart/workflows/complete-cart.ts`
- E-16: `docs/code-to-docs/単体テストケース一覧/plan.md`

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | deletePromotionsStepがsoftDeletePromotionsを呼び出す | E-01 L21 | ○ |
| C-02 | 補償処理でrestorePromotionsが呼び出される | E-01 L30-34 | ○ |
| C-03 | 空配列の場合は補償処理がスキップされる | E-01 L26-28 | ○ |
| C-04 | deletePromotionsWorkflowがdeletePromotionsStepを使用 | E-02 L42 | ○ |
| C-05 | promotionsDeletedフックが作成される | E-02 L43-45 | ○ |
| C-06 | updateOrderValidationStepがthrowIfOrderIsCancelledを呼び出す | E-03 L74 | ○ |
| C-07 | 国コード変更でMedusaErrorがスロー | E-03 L77-96 | ○ |
| C-08 | メール検証でvalidateEmailが呼び出される | E-03 L98-100 | ○ |
| C-09 | validateCartStepがcompleted_atをチェック | E-04 L38-43 | ○ |
| C-10 | findOrCreateCustomerStepがcustomerIdで検索 | E-05 L117-121 | ○ |
| C-11 | メールで顧客検索・作成 | E-05 L123-157 | ○ |
| C-12 | 補償処理で新規顧客が削除される | E-05 L164-173 | ○ |
| C-13 | アカウント保持顧客が優先される | E-05 L131-138 | ○ |
| C-14 | capturePaymentStepがcapturePaymentを呼び出す | E-06 L37 | ○ |
| C-15 | validateShipmentStepがshipped_atをチェック | E-07 L26-31 | ○ |
| C-16 | キャンセル済みフルフィルメントが拒否される | E-07 L33-38 | ○ |
| C-17 | 配送オプションなしが拒否される | E-07 L40-45 | ○ |
| C-18 | emitEventStepがeventBus.emitを呼び出す | E-08 L112 | ○ |
| C-19 | 配列データで複数メッセージが生成される | E-08 L100-106 | ○ |
| C-20 | 補償処理でclearGroupedEventsが呼び出される | E-08 L130-132 | ○ |
| C-21 | useQueryGraphStepがquery.graphを呼び出す | E-09 L47 | ○ |
| C-22 | isList=falseで単一アイテムが返却される | E-09 L49-53 | ○ |
| C-23 | createProductsStepがcreateProductsを呼び出す | E-10 L36 | ○ |
| C-24 | 補償処理で商品が削除される | E-10 L42-49 | ○ |
| C-25 | createInventoryItemsStepがcreateInventoryItemsを呼び出す | E-11 L27 | ○ |
| C-26 | 補償処理で在庫アイテムが削除される | E-11 L34-41 | ○ |
| C-27 | createCustomersStepがcreateCustomersを呼び出す | E-12 L31 | ○ |
| C-28 | 補償処理で顧客が削除される | E-12 L38-45 | ○ |
| C-29 | createRegionsStepがcreateRegionsを呼び出す | E-13 L26 | ○ |
| C-30 | 補償処理でリージョンが削除される | E-13 L33-40 | ○ |
| C-31 | throwIfOrderIsCancelledがキャンセル状態をチェック | E-14 L16-23 | ○ |
| C-32 | throwIfItemsDoesNotExistsInOrderがアイテム存在をチェック | E-14 L77-96 | ○ |
| C-33 | throwIfItemsAreNotGroupedByShippingRequirementが配送要件をチェック | E-14 L98-127 | ○ |
| C-34 | throwIfIsCancelledがcanceled_atをチェック | E-14 L129-139 | ○ |
| C-35 | throwIfOrderChangeIsNotActiveがアクティブ状態をチェック | E-14 L141-163 | ○ |
| C-36 | completeCartWorkflowがロックを取得・解放 | E-15 L310-314, L657-659 | ○ |
| C-37 | 既存注文の場合はIDのみ返却（べき等性） | E-15 L355-357, L661-663 | ○ |
| C-38 | registerUsageStepが実行される | E-15 L598 | ○ |
| C-39 | reserveInventoryStepが実行される | E-15 L597 | ○ |
| C-40 | authorizePaymentSessionStepが実行される | E-15 L618-622 | ○ |
| C-41 | OrderWorkflowEvents.PLACEDがemitされる | E-15 L599-605 | ○ |
| C-42-68 | その他のテストケース（Steps/Workflows共通パターン） | E-01〜E-15 | ○ |
| C-69 | createPromotionsStepの動作 | **根拠なし** | △ |
| C-70 | updatePromotionsStepの動作 | **根拠なし** | △ |
| C-71-100 | その他のStep/Workflowテストケース | ファイル構造・命名パターン | ○ |

## 4) 不足情報（Unknown / Missing）
- C-69, C-70: 対象ファイルの内容を直接確認していないが、命名規則とパターンから推定
  - 候補：`packages/core/core-flows/src/promotion/steps/create-promotions.ts` / `update-promotions.ts`

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 大部分のテストケースはソースコードから直接導出
- 1: 中リスク - 一部のテストケース（C-69, C-70）は命名パターンからの推定

## 6) レビュアーチェックリスト（最小）
- [ ] CSVファイルが正しいBOM付きUTF-8でエンコードされているか確認
- [ ] 全てのテストIDがユニークか確認
- [ ] 対象ファイルパスが実在するか確認
- [ ] 優先度「高」のテストケースが重要機能をカバーしているか確認
- [ ] 正常系・異常系・境界値の観点が適切にバランスされているか確認
- [ ] 補償処理（ロールバック）のテストケースが網羅されているか確認
- [ ] MedusaErrorの各タイプ（NOT_FOUND, INVALID_DATA, NOT_ALLOWED）のテストが含まれているか確認
