---
generated_at: 2026-02-19 06:30:00
metrics:
  claims_total: 208
  claims_with_evidence: 208
  claims_without_evidence: 0
confidence_derived: 1.00
---

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

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：208 / 208、根拠なし：0
- 優先レビュー（高）
  1. **テスト環境構築**：F#コンパイラの実際のテスト環境での動作確認が必要
  2. **境界値テスト**：実際の限界値でのテスト実行が推奨
  3. **並列処理テスト**：GraphProcessingのスレッド安全性確認が必要

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

- E-01: `src/Compiler/Driver/CompilerConfig.fsi` - TcConfigBuilder, TcConfig, TcConfigProvider の型定義
- E-02: `src/Compiler/Driver/CompilerConfig.fs` - コンパイラ設定の実装
- E-03: `src/Compiler/Driver/CompilerDiagnostics.fsi` - 診断処理の型定義
- E-04: `src/Compiler/Driver/CompilerDiagnostics.fs` - 診断処理の実装
- E-05: `src/Compiler/Driver/CompilerImports.fsi` - アセンブリインポートの型定義
- E-06: `src/Compiler/Driver/CompilerImports.fs` - アセンブリインポートの実装
- E-07: `src/Compiler/Driver/CompilerOptions.fsi` - コンパイラオプションの型定義
- E-08: `src/Compiler/Driver/CompilerOptions.fs` - コンパイラオプションの実装
- E-09: `src/Compiler/Driver/ParseAndCheckInputs.fsi` - パース・型検査の型定義
- E-10: `src/Compiler/Driver/ParseAndCheckInputs.fs` - パース・型検査の実装
- E-11: `src/Compiler/Driver/fsc.fsi` - コンパイラドライバの型定義
- E-12: `src/Compiler/Driver/fsc.fs` - コンパイラドライバの実装
- E-13: `src/Compiler/Driver/FxResolver.fsi` - フレームワーク解決の型定義
- E-14: `src/Compiler/Driver/FxResolver.fs` - フレームワーク解決の実装
- E-15: `src/Compiler/Driver/ScriptClosure.fsi` - スクリプトクロージャの型定義
- E-16: `src/Compiler/Driver/ScriptClosure.fs` - スクリプトクロージャの実装
- E-17: `src/Compiler/Driver/CreateILModule.fsi` - ILモジュール生成の型定義
- E-18: `src/Compiler/Driver/CreateILModule.fs` - ILモジュール生成の実装
- E-19: `src/Compiler/Driver/StaticLinking.fsi` - 静的リンクの型定義
- E-20: `src/Compiler/Driver/StaticLinking.fs` - 静的リンクの実装
- E-21: `src/Compiler/Driver/OptimizeInputs.fsi` - 最適化の型定義
- E-22: `src/Compiler/Driver/OptimizeInputs.fs` - 最適化の実装
- E-23: `src/Compiler/Driver/XmlDocFileWriter.fsi` - XMLドキュメント出力の型定義
- E-24: `src/Compiler/Driver/XmlDocFileWriter.fs` - XMLドキュメント出力の実装
- E-25: `src/Compiler/Driver/BinaryResourceFormats.fsi` - バイナリリソースフォーマットの型定義
- E-26: `src/Compiler/Driver/BinaryResourceFormats.fs` - バイナリリソースフォーマットの実装
- E-27: `src/Compiler/Driver/GraphChecking/Types.fsi` - グラフ型の定義
- E-28: `src/Compiler/Driver/GraphChecking/Types.fs` - グラフ型の実装
- E-29: `src/Compiler/Driver/GraphChecking/Graph.fsi` - グラフ操作の型定義
- E-30: `src/Compiler/Driver/GraphChecking/Graph.fs` - グラフ操作の実装
- E-31: `src/Compiler/Driver/GraphChecking/DependencyResolution.fsi` - 依存解決の型定義
- E-32: `src/Compiler/Driver/GraphChecking/DependencyResolution.fs` - 依存解決の実装
- E-33: `src/Compiler/Driver/GraphChecking/GraphProcessing.fsi` - グラフ処理の型定義
- E-34: `src/Compiler/Driver/GraphChecking/GraphProcessing.fs` - グラフ処理の実装
- E-35: `src/Compiler/Driver/GraphChecking/TrieMapping.fsi` - Trieマッピングの型定義
- E-36: `src/Compiler/Driver/GraphChecking/TrieMapping.fs` - Trieマッピングの実装
- E-37: `src/Compiler/Driver/GraphChecking/FileContentMapping.fsi` - ファイルコンテンツマッピングの型定義
- E-38: `src/Compiler/Driver/GraphChecking/FileContentMapping.fs` - ファイルコンテンツマッピングの実装
- E-39: `src/Compiler/Driver/GraphChecking/Continuation.fsi` - 継続処理の型定義
- E-40: `src/Compiler/Driver/GraphChecking/Continuation.fs` - 継続処理の実装

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

### CompilerConfig関連（UT-DRV-001 〜 UT-DRV-046）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | TcConfigBuilder.CreateNew が有効なパラメータでインスタンスを生成する | E-01, E-02 | ○ |
| C-02 | TcConfigBuilder.DecideNames がソースファイルリストから出力名を決定する | E-01, E-02 | ○ |
| C-03 | TcConfigBuilder.DecideNames が空リストを処理できる | E-01, E-02 | ○ |
| C-04 | TcConfigBuilder.TurnWarningOff が警告を無効化する | E-01, E-02 | ○ |
| C-05 | TcConfigBuilder.TurnWarningOn が警告を有効化する | E-01, E-02 | ○ |
| C-06 | TcConfigBuilder.AddIncludePath がパスを追加する | E-01, E-02 | ○ |
| C-07 | TcConfigBuilder.AddReferencedAssemblyByPath がアセンブリ参照を追加する | E-01, E-02 | ○ |
| C-08 | TcConfig.Create が不変設定を生成する | E-01, E-02 | ○ |
| C-09 | TcConfig.ComputeCanContainEntryPoint がエントリポイント候補を判定する | E-01, E-02 | ○ |
| C-10 | TcConfigProvider が設定を提供する | E-01, E-02 | ○ |

### CompilerDiagnostics関連（UT-DRV-047 〜 UT-DRV-055）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-11 | PhasedDiagnostic.Range が範囲を返す | E-03, E-04 | ○ |
| C-12 | PhasedDiagnostic.Number が番号を返す | E-03, E-04 | ○ |
| C-13 | PhasedDiagnostic.AdjustSeverity が重大度を調整する | E-03, E-04 | ○ |
| C-14 | GetDiagnosticsLoggerFilteringByScopedNowarn がフィルタリングロガーを返す | E-03, E-04 | ○ |
| C-15 | CollectFormattedDiagnostics がフォーマット済み診断を収集する | E-03, E-04 | ○ |

### CompilerImports関連（UT-DRV-056 〜 UT-DRV-076）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-16 | IsSignatureDataResource が署名データリソースを判定する | E-05, E-06 | ○ |
| C-17 | IsOptimizationDataResource が最適化データリソースを判定する | E-05, E-06 | ○ |
| C-18 | EncodeSignatureData が署名データをエンコードする | E-05, E-06 | ○ |
| C-19 | TcImports.GetImportedAssemblies がアセンブリを返す | E-05, E-06 | ○ |
| C-20 | TcImports.FindDllInfo がDLL情報を検索する | E-05, E-06 | ○ |
| C-21 | TcImports.BuildTcImports が完全なインポートを構築する | E-05, E-06 | ○ |

### CompilerOptions関連（UT-DRV-077 〜 UT-DRV-094）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-22 | ParseCompilerOptions がオプションを解析する | E-07, E-08 | ○ |
| C-23 | GetBannerText がバナーを返す | E-07, E-08 | ○ |
| C-24 | ApplyCommandLineArgs が引数を適用する | E-07, E-08 | ○ |
| C-25 | SetOptimizeSwitch が最適化を設定する | E-07, E-08 | ○ |
| C-26 | CheckAndReportSourceFileDuplicates が重複をチェックする | E-07, E-08 | ○ |

### ParseAndCheckInputs関連（UT-DRV-095 〜 UT-DRV-118）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-27 | IsScript がスクリプトファイルを判定する | E-09, E-10 | ○ |
| C-28 | ParseInput が入力をパースする | E-09, E-10 | ○ |
| C-29 | ParseOneInputFile がファイルをパースする | E-09, E-10 | ○ |
| C-30 | GetInitialTcEnv が初期環境を返す | E-09, E-10 | ○ |
| C-31 | CheckOneInput が型検査を実行する | E-09, E-10 | ○ |
| C-32 | CheckClosedInputSet が入力セットを検査する | E-09, E-10 | ○ |

### fsc関連（UT-DRV-119 〜 UT-DRV-127）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-33 | ConsoleLoggerProvider.CreateLogger がロガーを生成する | E-11, E-12 | ○ |
| C-34 | DiagnosticsLoggerUpToMaxErrors.DiagnosticSink が診断を処理する | E-11, E-12 | ○ |
| C-35 | CompileFromCommandLineArguments がコンパイルを実行する | E-11, E-12 | ○ |
| C-36 | getParallelReferenceResolutionFromEnvironment が環境変数を読む | E-11, E-12 | ○ |

### FxResolver関連（UT-DRV-128 〜 UT-DRV-136）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-37 | FxResolver.GetDefaultReferences がデフォルト参照を返す | E-13, E-14 | ○ |
| C-38 | FxResolver.GetTfmAndRid がTFMとRIDを返す | E-13, E-14 | ○ |
| C-39 | FxResolver.TryGetSdkDir がSDKディレクトリを返す | E-13, E-14 | ○ |

### ScriptClosure関連（UT-DRV-137 〜 UT-DRV-140）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-40 | LoadClosure.ComputeClosureOfScriptText がクロージャを計算する | E-15, E-16 | ○ |
| C-41 | LoadClosure.ComputeClosureOfScriptFiles がファイルクロージャを計算する | E-15, E-16 | ○ |

### CreateILModule関連（UT-DRV-141 〜 UT-DRV-152）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-42 | GetStrongNameSigningInfo が署名情報を返す | E-17, E-18 | ○ |
| C-43 | ValidateKeySigningAttributes が属性を検証する | E-17, E-18 | ○ |
| C-44 | MainModuleBuilder.CreateMainModule がモジュールを生成する | E-17, E-18 | ○ |
| C-45 | MainModuleBuilder.ComputeILFileVersion がバージョンを計算する | E-17, E-18 | ○ |

### StaticLinking関連（UT-DRV-153 〜 UT-DRV-155）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-46 | StaticLink が静的リンカーを生成する | E-19, E-20 | ○ |

### OptimizeInputs関連（UT-DRV-156 〜 UT-DRV-164）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-47 | GetGeneratedILModuleName がモジュール名を生成する | E-21, E-22 | ○ |
| C-48 | GetInitialOptimizationEnv が初期環境を返す | E-21, E-22 | ○ |
| C-49 | ApplyAllOptimizations が最適化を適用する | E-21, E-22 | ○ |
| C-50 | GenerateIlxCode がILXコードを生成する | E-21, E-22 | ○ |

### XmlDocFileWriter関連（UT-DRV-165 〜 UT-DRV-167）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-51 | XmlDocWriter.ComputeXmlDocSigs が署名を計算する | E-23, E-24 | ○ |
| C-52 | XmlDocWriter.WriteXmlDocFile がファイルを書き込む | E-23, E-24 | ○ |

### BinaryResourceFormats関連（UT-DRV-168 〜 UT-DRV-170）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-53 | VersionResourceFormat.VS_VERSION_INFO_RESOURCE がリソースを生成する | E-25, E-26 | ○ |
| C-54 | ManifestResourceFormat.VS_MANIFEST_RESOURCE がリソースを生成する | E-25, E-26 | ○ |
| C-55 | ResFileFormat.ResFileHeader がヘッダを生成する | E-25, E-26 | ○ |

### GraphChecking関連（UT-DRV-171 〜 UT-DRV-208）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-56 | TrieNode.Files がファイルセットを返す | E-27, E-28 | ○ |
| C-57 | FilePairMap が署名/実装のマッピングを管理する | E-27, E-28 | ○ |
| C-58 | Graph.make がグラフを構築する | E-29, E-30 | ○ |
| C-59 | Graph.transitive が推移的閉包を計算する | E-29, E-30 | ○ |
| C-60 | queryTrie がTrieをクエリする | E-31, E-32 | ○ |
| C-61 | mkGraph が依存グラフを構築する | E-31, E-32 | ○ |
| C-62 | processGraph がグラフを並列処理する | E-33, E-34 | ○ |
| C-63 | mkTrie がTrieを構築する | E-35, E-36 | ○ |
| C-64 | mkFileContent がファイルコンテンツを抽出する | E-37, E-38 | ○ |
| C-65 | Continuation.sequence が継続をシーケンスする | E-39, E-40 | ○ |

## 4) 不足情報（Unknown / Missing）
- 現時点で根拠なしの項目はありません。すべてのテストケースは署名ファイル（.fsi）および実装ファイル（.fs）の解析に基づいています。

## 5) リスクフラグ（レビュー観点）
- **0: 低リスク** - 全テストケースがソースコードに基づいて生成されており、高い信頼性を持つ
- **1: 中リスク** - GraphProcessingの並列処理テスト（UT-DRV-196〜199）は実環境でのスレッド競合確認が推奨される
- **1: 中リスク** - 環境依存テスト（FxResolver関連）はプラットフォーム固有の動作確認が必要

## 6) レビュアーチェックリスト（最小）
- [ ] テストケースの優先度が適切に設定されているか確認
- [ ] 境界値テストが網羅的であるか確認（空リスト、単一要素、最大値など）
- [ ] 異常系テストが主要なエラーパターンをカバーしているか確認
- [ ] GraphProcessingの並列処理テストがスレッド安全性を検証しているか確認
- [ ] 各テストケースの入力値と期待結果が明確であるか確認
- [ ] F#コンパイラ固有の型（例：ParsedInput, TcEnv）の生成方法が明確か確認
