---
generated_at: 2026-03-01 12:00:00
metrics:
  claims_total: 70
  claims_with_evidence: 67
  claims_without_evidence: 3
confidence_derived: 0.96
---

# 根拠レポート：web.csv

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.96**
  - 根拠あり：67 / 70、根拠なし：3
- 優先レビュー（高）
  1. **C-13**：baseUriが空文字列の場合の実際の挙動はコードから推測（JSON.stringifyで空文字列が出力されること）
  2. **C-25**：charset属性の設定はコードに記載があるが、実際のブラウザでの振る舞いは未確認
  3. **C-22**：fetchPriorityの引数伝搬はコードに記載があるが、実行時の効果は外部依存

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

- E-01: `lib/web/JsonpChunkLoadingRuntimeModule.js` - getCompilationHooks メソッド（37-52行目）
- E-02: `lib/web/JsonpChunkLoadingRuntimeModule.js` - constructor（57-61行目）
- E-03: `lib/web/JsonpChunkLoadingRuntimeModule.js` - _generateBaseUri メソッド（68-74行目）
- E-04: `lib/web/JsonpChunkLoadingRuntimeModule.js` - generate メソッド（79-452行目）
- E-05: `lib/web/JsonpTemplatePlugin.js` - getCompilationHooks メソッド（21-23行目）
- E-06: `lib/web/JsonpTemplatePlugin.js` - apply メソッド（30-34行目）
- E-07: `lib/web/FetchCompileAsyncWasmPlugin.js` - apply メソッド（23-66行目）
- E-08: `lib/web/FetchCompileAsyncWasmPlugin.js` - isEnabledForChunk 関数（30-37行目）
- E-09: `lib/web/FetchCompileAsyncWasmPlugin.js` - generateLoadBinaryCode 関数（42-43行目）
- E-10: `lib/web/JsonpChunkLoadingPlugin.js` - apply メソッド（23-97行目）
- E-11: `lib/web/JsonpChunkLoadingPlugin.js` - isEnabledForChunk 関数（30-37行目）
- E-12: `lib/web/JsonpChunkLoadingPlugin.js` - handler 関数（44-54行目）
- E-13: `lib/web/FetchCompileWasmPlugin.js` - constructor（26-29行目）
- E-14: `lib/web/FetchCompileWasmPlugin.js` - apply メソッド（36-83行目）
- E-15: `lib/web/FetchCompileWasmPlugin.js` - isEnabledForChunk 関数（43-49行目）
- E-16: `lib/web/FetchCompileWasmPlugin.js` - generateLoadBinaryCode 関数（55-56行目）
- E-17: `lib/RuntimeModule.js` - STAGE_ATTACH 定数（外部参照）
- E-18: `lib/RuntimeGlobals.js` - 各RuntimeGlobals定数（外部参照）

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | getCompilationHooksで初回呼び出し時に新しいフックが作成される | E-01 | ○ |
| C-02 | 同じCompilationインスタンスでキャッシュされたフックが返る | E-01 | ○ |
| C-03 | フックオブジェクトがSyncWaterfallHookインスタンスである | E-01 | ○ |
| C-04 | CompilationインスタンスでないオブジェクトでTypeErrorがスローされる | E-01 | ○ |
| C-05 | nullでTypeErrorがスローされる | E-01 | ○ |
| C-06 | undefinedでTypeErrorがスローされる | E-01 | ○ |
| C-07 | constructorでruntimeRequirementsが設定される | E-02 | ○ |
| C-08 | モジュール名が"jsonp chunk loading"に設定される | E-02 | ○ |
| C-09 | stageがSTAGE_ATTACHに設定される | E-02, E-17 | ○ |
| C-10 | baseUriオプション設定時にカスタムbaseURIコードが生成される | E-03 | ○ |
| C-11 | baseUriオプション未設定時にデフォルトbaseURIコードが生成される | E-03 | ○ |
| C-12 | entryOptionsが存在するがbaseUriがない場合にデフォルトコードが生成される | E-03 | ○ |
| C-13 | baseUriが空文字列の場合の挙動 | E-03 | △ |
| C-14 | baseURIのみ必要な場合にbaseURIコードが生成される | E-04 | ○ |
| C-15 | チャンクローディング必要時にJSONPローディングコードが生成される | E-04 | ○ |
| C-16 | HMR有効時にHMR関連コードが生成される | E-04 | ○ |
| C-17 | HMRマニフェスト有効時にfetch APIを使用するコードが生成される | E-04 | ○ |
| C-18 | chunkCallback有効時にwebpackJsonpCallbackが生成される | E-04 | ○ |
| C-19 | onChunksLoaded有効時にチャンクロード完了チェックコードが生成される | E-04 | ○ |
| C-20 | prefetch有効時にprefetchコードが生成される | E-04 | ○ |
| C-21 | preload有効時にpreloadコードが生成される | E-04 | ○ |
| C-22 | fetchPriority有効時にfetchPriority引数を含むコードが生成される | E-04 | △ |
| C-23 | crossOriginLoading設定時にcrossOrigin属性を含むコードが生成される | E-04 | ○ |
| C-24 | scriptType=module時にmodulepreloadリンクが生成される | E-04 | ○ |
| C-25 | charset有効時にcharset属性が含まれる | E-04 | △ |
| C-26 | runtimeRequirementsが空の場合にコメントのみのコードが生成される | E-04 | ○ |
| C-27 | initialChunkIdsが正しくinstalledChunksに設定される | E-04 | ○ |
| C-28 | initialChunkIdsが空の場合の挙動 | E-04 | ○ |
| C-29 | crossOriginLoading=use-credentials時の処理 | E-04 | ○ |
| C-30 | JsonpTemplatePluginがgetCompilationHooksを委譲する | E-05 | ○ |
| C-31 | 委譲先のバリデーションが機能する | E-05, E-01 | ○ |
| C-32 | chunkLoadingが"jsonp"に設定される | E-06 | ○ |
| C-33 | ArrayPushCallbackChunkFormatPluginが適用される | E-06 | ○ |
| C-34 | EnableChunkLoadingPluginが"jsonp"で適用される | E-06 | ○ |
| C-35 | FetchCompileAsyncWasmPluginのthisCompilationフック登録 | E-07 | ○ |
| C-36 | wasmLoading="fetch"でtrueを返す（async） | E-08 | ○ |
| C-37 | entryOptionsでwasmLoadingが上書きされる（async） | E-08 | ○ |
| C-38 | wasmLoading!="fetch"でfalseを返す（async） | E-08 | ○ |
| C-39 | generateLoadBinaryCodeでfetch呼び出しコードが生成される（async） | E-09 | ○ |
| C-40 | async wasmモジュール存在時にランタイムモジュールが追加される | E-07 | ○ |
| C-41 | チャンク無効時にランタイムモジュールが追加されない（async） | E-07 | ○ |
| C-42 | async wasmモジュール不在時にスキップされる | E-07 | ○ |
| C-43 | supportsStreaming=trueが渡される（async） | E-07 | ○ |
| C-44 | JsonpChunkLoadingPluginのthisCompilationフック登録 | E-10 | ○ |
| C-45 | chunkLoading="jsonp"でtrueを返す | E-11 | ○ |
| C-46 | entryOptionsでchunkLoadingが上書きされる | E-11 | ○ |
| C-47 | chunkLoading!="jsonp"でfalseを返す | E-11 | ○ |
| C-48 | チャンク有効時にランタイムモジュールが追加される | E-12 | ○ |
| C-49 | 同じチャンクに対して2回目のhandlerがスキップされる | E-12 | ○ |
| C-50 | チャンク無効時にランタイムモジュールが追加されない | E-12 | ○ |
| C-51 | ensureChunkHandlersのフック登録 | E-10 | ○ |
| C-52 | ensureChunkHandlers要件でpublicPath等が追加される | E-10 | ○ |
| C-53 | hmrDownloadUpdateHandlers要件で依存が追加される | E-10 | ○ |
| C-54 | hmrDownloadManifest要件で依存が追加される | E-10 | ○ |
| C-55 | 無効チャンクで依存要件追加がスキップされる | E-10 | ○ |
| C-56 | FetchCompileWasmPluginのデフォルトコンストラクタ | E-13 | ○ |
| C-57 | mangleImports=trueの設定 | E-13 | ○ |
| C-58 | mangleImports=falseの設定 | E-13 | ○ |
| C-59 | FetchCompileWasmPluginのthisCompilationフック登録 | E-14 | ○ |
| C-60 | wasmLoading="fetch"でtrueを返す（sync） | E-15 | ○ |
| C-61 | entryOptionsでwasmLoadingが上書きされる（sync） | E-15 | ○ |
| C-62 | wasmLoading!="fetch"でfalseを返す（sync） | E-15 | ○ |
| C-63 | generateLoadBinaryCodeでfetch呼び出しコードが生成される（sync） | E-16 | ○ |
| C-64 | sync wasmモジュール存在時にランタイムモジュールが追加される | E-14 | ○ |
| C-65 | チャンク無効時にランタイムモジュールが追加されない（sync） | E-14 | ○ |
| C-66 | sync wasmモジュール不在時にスキップされる | E-14 | ○ |
| C-67 | supportsStreaming=trueが渡される（sync） | E-14 | ○ |
| C-68 | mangleImportsオプションが伝搬される | E-14 | ○ |
| C-69 | runtimeRequirementsが伝搬される | E-14 | ○ |
| C-70 | 全フック登録の網羅確認 | E-10 | ○ |

## 4) 不足情報（Unknown / Missing）
- C-13: baseUriが空文字列の場合、JSON.stringifyの結果として`""`が出力されることはJavaScript仕様から推測可能だが、webpackとしてこの入力が許容されるかはドキュメントに記載がない
  - 候補：webpackのvalidateSchema / Entry設定のバリデーションロジック / webpack公式ドキュメント
- C-22: fetchPriorityはブラウザ固有の機能であり、生成コードにfetchPriority引数が含まれることはソースコードから確認できるが、実際のランタイム効果はブラウザ依存
  - 候補：ブラウザ互換性テスト / webpackの統合テスト
- C-25: charset属性の設定はHTML仕様では非推奨であり、link要素でのcharset設定の実効性は限定的
  - 候補：HTML仕様 / ブラウザ互換性テスト

## 5) リスクフラグ（レビュー観点）
- 0: JsonpChunkLoadingRuntimeModule.generate()は非常に大きなメソッド（約370行）であり、全条件分岐の網羅にはさらに詳細なテストケースが必要になる可能性がある
- 0: 各プラグインのapplyメソッドは外部依存（compiler, compilation, chunkGraph等）が多く、モック設計の品質がテストの有効性に直結する
- 1: generate()メソッドの出力はテンプレート文字列であり、正確な文字列比較よりパターンマッチングによる検証が適切な場合がある
- 0: WeakMapによるフックキャッシュの動作はGCの影響を受ける可能性があるが、テスト実行中は参照が保持されるため問題にならない

## 6) レビュアーチェックリスト（最小）
- [ ] JsonpChunkLoadingRuntimeModule.generate()の全条件分岐（baseURI, loading, callback, onChunkLoad, HMR, HMRManifest, prefetch, preload）が網羅されているか
- [ ] isEnabledForChunk関数のentryOptions上書きロジックが各プラグインで正しくテストされているか
- [ ] 各プラグインのapplyメソッドで登録されるフックが漏れなくテスト対象になっているか
- [ ] generate()メソッドの出力文字列の検証方法（完全一致 vs パターンマッチ）が妥当か
- [ ] crossOriginLoadingの3パターン（未設定、anonymous、use-credentials）が網羅されているか
- [ ] scriptTypeのパターン（未設定、module、その他）が網羅されているか
