---
generated_at: 2026-03-01 12:00:00
metrics:
  claims_total: 214
  claims_with_evidence: 214
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート: Process モジュール単体テストケース一覧

## 本レポートについて

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

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

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

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

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

---

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

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

- E-01: `src/Illuminate/Process/Factory.php` - プロセスファクトリクラス（329行）
- E-02: `src/Illuminate/Process/PendingProcess.php` - 保留中プロセスクラス（439行）
- E-03: `src/Illuminate/Process/ProcessResult.php` - プロセス結果クラス（150行）
- E-04: `src/Illuminate/Process/InvokedProcess.php` - 実行中プロセスクラス（177行）
- E-05: `src/Illuminate/Process/Pool.php` - プロセスプールクラス（121行）
- E-06: `src/Illuminate/Process/Pipe.php` - パイプ実行クラス（104行）
- E-07: `src/Illuminate/Process/FakeProcessResult.php` - テスト用フェイク結果クラス（210行）
- E-08: `src/Illuminate/Process/FakeInvokedProcess.php` - テスト用フェイク実行プロセスクラス（342行）
- E-09: `src/Illuminate/Process/FakeProcessDescription.php` - テスト用フェイクプロセス記述クラス（228行）
- E-10: `src/Illuminate/Process/FakeProcessSequence.php` - テスト用フェイクシーケンスクラス（120行）
- E-11: `src/Illuminate/Process/InvokedProcessPool.php` - 実行中プロセスプールクラス（79行）
- E-12: `src/Illuminate/Process/ProcessPoolResults.php` - プロセスプール結果クラス（101行）
- E-13: `src/Illuminate/Process/Exceptions/ProcessFailedException.php` - プロセス失敗例外クラス（41行）
- E-14: `src/Illuminate/Process/Exceptions/ProcessTimedOutException.php` - タイムアウト例外クラス（30行）
- E-15: `src/Illuminate/Contracts/Process/InvokedProcess.php` - 実行中プロセスインターフェース（72行）
- E-16: `src/Illuminate/Contracts/Process/ProcessResult.php` - プロセス結果インターフェース（81行）

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

### Factory クラス（E-01）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 (UT-PRC-001〜003) | result メソッドで FakeProcessResult を生成 | E-01: L53-60 | ○ |
| C-02 (UT-PRC-004) | describe メソッドで FakeProcessDescription を生成 | E-01: L67-70 | ○ |
| C-03 (UT-PRC-005〜006) | sequence メソッドで FakeProcessSequence を生成 | E-01: L78-81 | ○ |
| C-04 (UT-PRC-007〜009) | fake メソッドで fake ハンドラを登録 | E-01: L89-112 | ○ |
| C-05 (UT-PRC-010〜011) | isRecording メソッドで録音状態を確認 | E-01: L119-122 | ○ |
| C-06 (UT-PRC-012〜014) | recordIfRecording/record メソッドでプロセスを記録 | E-01: L131-152 | ○ |
| C-07 (UT-PRC-015〜017) | preventStrayProcesses メソッドで stray 防止設定 | E-01: L160-175 | ○ |
| C-08 (UT-PRC-018〜027) | assert* メソッド群でテストアサーション | E-01: L183-264 | ○ |
| C-09 (UT-PRC-028) | pool メソッドで Pool インスタンス生成 | E-01: L272-275 | ○ |
| C-10 (UT-PRC-029〜030) | pipe メソッドでパイプ実行 | E-01: L283-290 | ○ |
| C-11 (UT-PRC-031) | concurrently メソッドで並行実行 | E-01: L299-302 | ○ |
| C-12 (UT-PRC-032) | newPendingProcess メソッドで PendingProcess 生成 | E-01: L309-312 | ○ |
| C-13 (UT-PRC-033) | __call マジックメソッドでプロキシ | E-01: L321-328 | ○ |

### PendingProcess クラス（E-02）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-14 (UT-PRC-034) | コンストラクタで Factory を受け取る | E-02: L101-104 | ○ |
| C-15 (UT-PRC-035〜036) | command メソッドでコマンド設定 | E-02: L112-117 | ○ |
| C-16 (UT-PRC-037) | path メソッドで作業ディレクトリ設定 | E-02: L125-130 | ○ |
| C-17 (UT-PRC-038〜039) | timeout メソッドでタイムアウト設定 | E-02: L138-143 | ○ |
| C-18 (UT-PRC-040) | idleTimeout メソッドでアイドルタイムアウト設定 | E-02: L151-156 | ○ |
| C-19 (UT-PRC-041) | forever メソッドで無期限実行設定 | E-02: L163-168 | ○ |
| C-20 (UT-PRC-042〜043) | env メソッドで環境変数設定 | E-02: L176-181 | ○ |
| C-21 (UT-PRC-044〜045) | input メソッドで標準入力設定 | E-02: L189-194 | ○ |
| C-22 (UT-PRC-046) | quietly メソッドで出力無効化 | E-02: L201-206 | ○ |
| C-23 (UT-PRC-047〜048) | tty メソッドで TTY モード設定 | E-02: L214-219 | ○ |
| C-24 (UT-PRC-049) | options メソッドで proc_open オプション設定 | E-02: L227-232 | ○ |
| C-25 (UT-PRC-050〜055) | run メソッドでプロセス実行 | E-02: L244-263 | ○ |
| C-26 (UT-PRC-056〜059) | start メソッドで非同期プロセス開始 | E-02: L274-289 | ○ |
| C-27 (UT-PRC-060) | supportsTty メソッドで TTY サポート確認 | E-02: L336-339 | ○ |
| C-28 (UT-PRC-061) | withFakeHandlers メソッドで fake ハンドラ設定 | E-02: L347-352 | ○ |

### ProcessResult クラス（E-03）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-29 (UT-PRC-062) | コンストラクタで Symfony Process を受け取る | E-03: L23-26 | ○ |
| C-30 (UT-PRC-063) | command メソッドでコマンドライン取得 | E-03: L33-36 | ○ |
| C-31 (UT-PRC-064〜067) | successful/failed メソッドで成功/失敗判定 | E-03: L43-56 | ○ |
| C-32 (UT-PRC-068〜069) | exitCode メソッドで終了コード取得 | E-03: L63-66 | ○ |
| C-33 (UT-PRC-070〜073) | output/seeInOutput メソッドで標準出力取得・検索 | E-03: L73-87 | ○ |
| C-34 (UT-PRC-074〜077) | errorOutput/seeInErrorOutput メソッドでエラー出力取得・検索 | E-03: L94-108 | ○ |
| C-35 (UT-PRC-078〜083) | throw/throwIf メソッドで例外スロー | E-03: L118-149 | ○ |

### InvokedProcess クラス（E-04）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-36 (UT-PRC-084) | コンストラクタで Symfony Process を受け取る | E-04: L24-27 | ○ |
| C-37 (UT-PRC-085〜087) | id/command メソッドでプロセス情報取得 | E-04: L34-47 | ○ |
| C-38 (UT-PRC-088) | signal メソッドでシグナル送信 | E-04: L55-60 | ○ |
| C-39 (UT-PRC-089〜090) | stop メソッドでプロセス停止 | E-04: L69-72 | ○ |
| C-40 (UT-PRC-091〜092) | running メソッドで実行中判定 | E-04: L79-82 | ○ |
| C-41 (UT-PRC-093〜096) | output/errorOutput/latestOutput/latestErrorOutput メソッド | E-04: L89-122 | ○ |
| C-42 (UT-PRC-097〜098) | ensureNotTimedOut メソッドでタイムアウト確認 | E-04: L131-138 | ○ |
| C-43 (UT-PRC-099〜103) | wait/waitUntil メソッドでプロセス待機 | E-04: L148-176 | ○ |

### Pool クラス（E-05）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-44 (UT-PRC-104) | コンストラクタで Factory と callback を受け取る | E-05: L41-45 | ○ |
| C-45 (UT-PRC-105) | as メソッドでキー付きプロセス追加 | E-05: L53-58 | ○ |
| C-46 (UT-PRC-106〜108) | start メソッドでプール開始 | E-05: L68-86 | ○ |
| C-47 (UT-PRC-109〜110) | run/wait メソッドでプール待機 | E-05: L93-106 | ○ |
| C-48 (UT-PRC-111) | __call マジックメソッドで委譲 | E-05: L115-120 | ○ |

### Pipe クラス（E-06）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-49 (UT-PRC-112) | コンストラクタで Factory と callback を受け取る | E-06: L41-45 | ○ |
| C-50 (UT-PRC-113) | as メソッドでキー付きパイプステップ追加 | E-06: L53-58 | ○ |
| C-51 (UT-PRC-114〜117) | run メソッドでパイプ実行 | E-06: L68-89 | ○ |
| C-52 (UT-PRC-118) | __call マジックメソッドで委譲 | E-06: L98-103 | ○ |

### FakeProcessResult クラス（E-07）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-53 (UT-PRC-119〜121) | コンストラクタでパラメータを受け取り正規化 | E-07: L47-53 | ○ |
| C-54 (UT-PRC-122〜123) | command/withCommand メソッド | E-07: L82-96 | ○ |
| C-55 (UT-PRC-124〜127) | successful/failed メソッドで成功/失敗判定 | E-07: L103-116 | ○ |
| C-56 (UT-PRC-128〜134) | exitCode/output/errorOutput/seeIn* メソッド | E-07: L123-168 | ○ |
| C-57 (UT-PRC-135〜139) | throw/throwIf メソッドで例外スロー | E-07: L178-209 | ○ |

### FakeInvokedProcess クラス（E-08）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-58 (UT-PRC-140) | コンストラクタで command と FakeProcessDescription を受け取る | E-08: L64-68 | ○ |
| C-59 (UT-PRC-141〜143) | id/command/signal メソッド | E-08: L75-105 | ○ |
| C-60 (UT-PRC-144〜145) | hasReceivedSignal メソッドでシグナル受信確認 | E-08: L113-116 | ○ |
| C-61 (UT-PRC-146〜148) | running メソッドで実行中判定 | E-08: L123-141 | ○ |
| C-62 (UT-PRC-149〜152) | output/errorOutput/latestOutput/latestErrorOutput メソッド | E-08: L183-261 | ○ |
| C-63 (UT-PRC-153〜156) | wait/waitUntil メソッドでプロセス待機 | E-08: L270-318 | ○ |
| C-64 (UT-PRC-157〜158) | predictProcessResult/withOutputHandler メソッド | E-08: L325-341 | ○ |

### FakeProcessDescription クラス（E-09）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-65 (UT-PRC-159) | id メソッドでプロセス ID 設定 | E-09: L44-49 | ○ |
| C-66 (UT-PRC-160〜163) | output/errorOutput メソッドで出力追加 | E-09: L57-87 | ○ |
| C-67 (UT-PRC-164〜167) | replaceOutput/replaceErrorOutput メソッドで出力置換 | E-09: L95-133 | ○ |
| C-68 (UT-PRC-168) | exitCode メソッドで終了コード設定 | E-09: L141-146 | ○ |
| C-69 (UT-PRC-169〜170) | iterations/runsFor メソッドでイテレーション設定 | E-09: L154-170 | ○ |
| C-70 (UT-PRC-171〜172) | toSymfonyProcess/toProcessResult メソッド | E-09: L178-197 | ○ |

### FakeProcessSequence クラス（E-10）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-71 (UT-PRC-173〜174) | コンストラクタでプロセス配列を受け取る | E-10: L36-39 | ○ |
| C-72 (UT-PRC-175〜178) | push メソッドでプロセスをシーケンスに追加 | E-10: L47-52 | ○ |
| C-73 (UT-PRC-179〜181) | whenEmpty/dontFailWhenEmpty メソッドで空時の挙動設定 | E-10: L60-89 | ○ |
| C-74 (UT-PRC-182〜183) | isEmpty メソッドで空判定 | E-10: L96-99 | ○ |
| C-75 (UT-PRC-184〜187) | __invoke マジックメソッドで次プロセス取得 | E-10: L108-119 | ○ |

### InvokedProcessPool クラス（E-11）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-76 (UT-PRC-188) | コンストラクタでプロセス配列を受け取る | E-11: L22-25 | ○ |
| C-77 (UT-PRC-189) | signal メソッドで一括シグナル送信 | E-11: L33-36 | ○ |
| C-78 (UT-PRC-190〜191) | stop メソッドで一括停止 | E-11: L44-48 | ○ |
| C-79 (UT-PRC-192〜193) | running メソッドで実行中プロセス取得 | E-11: L55-58 | ○ |
| C-80 (UT-PRC-194) | wait メソッドでプール待機 | E-11: L65-68 | ○ |
| C-81 (UT-PRC-195〜196) | count メソッドでプロセス数取得 | E-11: L75-78 | ○ |

### ProcessPoolResults クラス（E-12）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-82 (UT-PRC-197) | コンストラクタで結果配列を受け取る | E-12: L22-25 | ○ |
| C-83 (UT-PRC-198〜202) | successful/failed メソッドで成功/失敗判定 | E-12: L32-45 | ○ |
| C-84 (UT-PRC-203) | collect メソッドで Collection 変換 | E-12: L52-55 | ○ |
| C-85 (UT-PRC-204〜208) | ArrayAccess インターフェース実装 | E-12: L63-100 | ○ |

### 例外クラス（E-13, E-14）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-86 (UT-PRC-209〜212) | ProcessFailedException コンストラクタ | E-13: L22-40 | ○ |
| C-87 (UT-PRC-213〜214) | ProcessTimedOutException コンストラクタ | E-14: L24-29 | ○ |

## 4) 不足情報（Unknown / Missing）
- なし - 全てのテストケースはソースコードから直接抽出

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 全テストケースがソースコードの実装に基づいている
- 注意点:
  - 実際のプロセス実行を伴うテストは環境依存性がある（シェルコマンド、TTYサポート等）
  - タイムアウト関連のテストは実行時間に依存する可能性がある
  - シグナル関連のテストはOS依存の可能性がある

## 6) レビュアーチェックリスト（最小）
- [ ] Factory クラスの fake/assert* メソッドのテストケースが網羅的か確認
- [ ] PendingProcess の run/start メソッドの正常系・異常系が十分か確認
- [ ] ProcessResult/FakeProcessResult の throw/throwIf の条件分岐が網羅されているか確認
- [ ] Pool/Pipe クラスの並行・パイプ実行のエッジケースが考慮されているか確認
- [ ] 例外クラスのメッセージフォーマットが正しくテストされているか確認
- [ ] 環境依存のテスト（TTY、シグナル等）の前提条件が適切か確認
