```markdown
# 最終検証結果

## 結果: APPROVE / REJECT

## 要件充足チェック

タスク指示書から要件を抽出し、各要件を実コードで個別に検証する。

| # | 分解した要件 | 充足 | 根拠（ファイル:行） |
|---|------------|------|-------------------|
| 1 | {要件1} | ✅/❌ | `src/file.ts:42` |
| 2 | {要件2} | ✅/❌ | `src/file.ts:55` |

- 1つの文に複数条件がある場合、検証可能な最小単位まで分解して複数行にする
- `A/B`、`global/project`、`JSON/leaf`、`allow/deny`、`read/write` のような並列条件を1行にまとめない
- ❌ が1件でもある場合は REJECT 必須
- 根拠なしの ✅ は無効（実コードで確認すること）
- 一部ケースしか根拠がない場合は ✅ にしない
- 計画レポートの判断を鵜呑みにせず、要件ごとに独立照合する

## 前段 finding の再評価
| finding_id | 前段判定 | 再評価 | 根拠 |
|------------|----------|--------|------|
| {id} | new / persists / resolved | 妥当 / false_positive / overreach | `src/file.ts:42`, `reports/plan.md` |

- 前段レビューの結論と最終判定が異なる場合は、必ず根拠を書く
- false_positive / overreach を判定した場合は、task と plan のどちらに照らして不適切か明記する

## 検証サマリー
| 項目 | 状態 | 確認方法 |
|------|------|---------|
| テスト | ✅ / ⚠️ / ❌ | {実行ログ・レポート・CI等の証跡} |
| ビルド | ✅ / ⚠️ / ❌ | {実行ログ・レポート・CI等の証跡} |
| 動作確認 | ✅ / ⚠️ / ❌ | {確認した証跡。未確認ならその旨} |

- 実行していないコマンドを成功/失敗/実行不可と断定しない
- `⚠️` を使う場合は、未確認の理由と確認した範囲を確認方法に書く
- レポート本文と実行証跡が矛盾する場合は、その矛盾自体を finding として扱う

## 今回の指摘（new）
| # | finding_id | 項目 | 根拠 | 理由 | 必要アクション |
|---|------------|------|------|------|----------------|
| 1 | VAL-NEW-src-file-L42 | 要求不一致 | `file:line` | 説明 | 修正が必要 |

## 継続指摘（persists）
| # | finding_id | 前回根拠 | 今回根拠 | 理由 | 必要アクション |
|---|------------|----------|----------|------|----------------|
| 1 | VAL-PERSIST-src-file-L77 | `file:line` | `file:line` | 未解消 | 修正継続 |

## 解消済み（resolved）
| finding_id | 解消根拠 |
|------------|----------|
| VAL-RESOLVED-src-file-L10 | `file:line` は検証条件を満たす |

## 成果物
- 作成: {作成したファイル}
- 変更: {変更したファイル}

## REJECT判定条件
- `new` または `persists` が1件以上ある場合のみ REJECT 可
- `finding_id` なしの指摘は無効
```
