---
generated_at: 2026-03-01 16:05:00
metrics:
  claims_total: 56
  claims_with_evidence: 56
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：test-utils

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：56 / 56、根拠なし：0
- 優先レビュー（高）
  1. **なし**：全テストケースに根拠あり

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

- E-01: `packages/test-utils/src/index.ts` - メインエントリーポイント（エクスポート定義）
- E-02: `packages/test-utils/src/normalizeIcons.ts` - アイコン文字列正規化関数
- E-03: `packages/test-utils/src/config.ts` - テスト設定生成関数（makeGlobalConfig、makeProjectConfig）
- E-04: `packages/test-utils/src/ConditionalTest.ts` - 条件付きテスト実行ユーティリティ
- E-05: `packages/test-utils/src/alignedAnsiStyleSerializer.ts` - ANSIスタイルシリアライザー

## 3) Claims と根拠の対応（レビューの主戦場）

### normalizeIcons関数（E-02）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | 乗算記号(×/U+00D7)がチェック否定記号(✕/U+2715)に変換される | E-02 L14-15 | ○ |
| C-02 | 平方根記号(√/U+221A)がチェック記号(✓/U+2713)に変換される | E-02 L16 | ○ |
| C-03 | 複数のアイコンが同時に変換される | E-02 L14-16 replaceAllの連鎖 | ○ |
| C-04 | 変換対象がない文字列はそのまま返却される | E-02 L14-16 replaceAllの動作 | ○ |
| C-05 | 空文字列/falsyな値が渡された場合はそのまま返却される | E-02 L9-11 | ○ |

### makeGlobalConfig関数（E-03）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-06 | 引数なしでデフォルト設定が返却される | E-03 L141-157 | ○ |
| C-07 | 有効なオーバーライド値でデフォルト値が上書きされる | E-03 L156 スプレッド構文 | ○ |
| C-08 | 空オブジェクトが渡された場合はデフォルト設定が返却される | E-03 L142 デフォルト引数 | ○ |
| C-09 | GlobalConfigに存在しないプロパティが渡された場合はエラーがスローされる | E-03 L144-154 | ○ |
| C-10 | 複数のプロパティが同時にオーバーライドされる | E-03 L156 スプレッド構文 | ○ |
| C-11 | testPathPatternsがオーバーライドされる | E-03 L59, L156 | ○ |

### makeProjectConfig関数（E-03）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-12 | 引数なしでデフォルト設定が返却される | E-03 L159-175 | ○ |
| C-13 | 有効なオーバーライド値でデフォルト値が上書きされる | E-03 L174 スプレッド構文 | ○ |
| C-14 | 空オブジェクトが渡された場合はデフォルト設定が返却される | E-03 L160 デフォルト引数 | ○ |
| C-15 | ProjectConfigに存在しないプロパティが渡された場合はエラーがスローされる | E-03 L162-172 | ○ |
| C-16 | 複数のプロパティが同時にオーバーライドされる | E-03 L174 スプレッド構文 | ○ |
| C-17 | reportersプロパティがオーバーライドされる | E-03 L104-108, L174 | ○ |

### ConditionalTest関数群（E-04）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-18 | JEST_JASMINE='1'の場合trueが返却される | E-04 L13-15 | ○ |
| C-19 | JEST_JASMINE='0'または他の値の場合falseが返却される | E-04 L14 '==='による厳密比較 | ○ |
| C-20 | JEST_JASMINE環境変数が未設定の場合falseが返却される | E-04 L14 undefinedとの比較 | ○ |
| C-21 | Jasmine実行時にtest.onlyが呼び出される | E-04 L17-23 | ○ |
| C-22 | jest-circus実行時にskipSuiteOnJasmineは何も実行しない | E-04 L18条件分岐 | ○ |
| C-23 | jest-circus実行時にtest.onlyが呼び出される | E-04 L25-31 | ○ |
| C-24 | Jasmine実行時にskipSuiteOnJestCircusは何も実行しない | E-04 L26条件分岐 | ○ |
| C-25 | Nodeバージョンが範囲内の場合describeが実行される | E-04 L38-41 | ○ |
| C-26 | Nodeバージョンが範囲外の場合describe.skipが実行される | E-04 L42-45 | ○ |
| C-27 | 境界値でのバージョン判定が正しく行われる | E-04 L38 semver.satisfies | ○ |
| C-28 | 複雑なsemverバージョン範囲が正しく解釈される | E-04 L38 semver.satisfies | ○ |
| C-29 | descriptionにバージョン範囲が含まれる | E-04 L37 | ○ |

### alignedAnsiStyleSerializer（E-05）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-30 | 文字列型の値に対してtrueが返却される | E-05 L48-49 | ○ |
| C-31 | 非文字列型の値に対してfalseが返却される | E-05 L48-49 typeof === 'string' | ○ |
| C-32 | nullに対してfalseが返却される | E-05 L48-49 | ○ |
| C-33 | undefinedに対してfalseが返却される | E-05 L48-49 | ○ |
| C-34 | オブジェクト型の値に対してfalseが返却される | E-05 L48-49 | ○ |
| C-35 | 配列型の値に対してfalseが返却される | E-05 L48-49 | ○ |
| C-36 | inverse.open/closeが<i></i>に変換される | E-05 L16-20 | ○ |
| C-37 | bold.openが<b>に変換される | E-05 L22-23 | ○ |
| C-38 | dim.openが<d>に変換される | E-05 L24 | ○ |
| C-39 | green.openが<g>に変換される | E-05 L25 | ○ |
| C-40 | red.openが<r>に変換される | E-05 L26 | ○ |
| C-41 | yellow.openが<y>に変換される | E-05 L27-28 | ○ |
| C-42 | bgYellow.openが<Y>に変換される | E-05 L29-30 | ○ |
| C-43 | closeタグは</>に変換される | E-05 L32-38 | ○ |
| C-44 | 複数のスタイルが同時に変換される | E-05 L15 replace with ansiRegex | ○ |
| C-45 | ANSIエスケープシーケンスを含まない文字列はそのまま返却される | E-05 L15 replaceの動作 | ○ |
| C-46 | 未知のエスケープシーケンスはそのまま保持される | E-05 L40-41 default case | ○ |
| C-47 | 空文字列が渡された場合は空文字列が返却される | E-05 L15 replaceの動作 | ○ |
| C-48 | ネストされたスタイルが正しく変換される | E-05 L15 replaceの順次処理 | ○ |

### エクスポート確認（E-01）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-49 | alignedAnsiStyleSerializerがエクスポートされる | E-01 L8 | ○ |
| C-50 | isJestJasmineRunがエクスポートされる | E-01 L11 | ○ |
| C-51 | skipSuiteOnJasmineがエクスポートされる | E-01 L12 | ○ |
| C-52 | skipSuiteOnJestCircusがエクスポートされる | E-01 L13 | ○ |
| C-53 | onNodeVersionsがエクスポートされる | E-01 L14 | ○ |
| C-54 | makeGlobalConfigがエクスポートされる | E-01 L17 | ○ |
| C-55 | makeProjectConfigがエクスポートされる | E-01 L17 | ○ |
| C-56 | normalizeIconsがエクスポートされる | E-01 L19 | ○ |

## 4) 不足情報（Unknown / Missing）
- なし：全テストケースに対してソースコードから根拠を確認済み

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 全テストケースにソースコードの根拠あり
- 注意点：
  - semverライブラリへの依存（onNodeVersions関数）
  - ansi-regexライブラリへの依存（alignedAnsiStyleSerializer）
  - 環境変数JEST_JASMINEへの依存（ConditionalTest関数群）

## 6) レビュアーチェックリスト（最小）
- [ ] normalizeIcons: Unicode文字の変換が正しく定義されているか確認（jest-util/src/specialCharsとの整合性）
- [ ] makeGlobalConfig/makeProjectConfig: DEFAULT_*_CONFIGの全プロパティが@jest/typesのConfig型と一致しているか確認
- [ ] isJestJasmineRun: 環境変数の厳密比較（'1'のみtrue）が意図通りか確認
- [ ] onNodeVersions: semverライブラリのバージョン範囲構文が正しく使用されているか確認
- [ ] alignedAnsiStyleSerializer: ansi-stylesライブラリのスタイル定義との整合性を確認
