---
generated_at: 2026-02-19 18:30:00
metrics:
  claims_total: 57
  claims_with_evidence: 57
  claims_without_evidence: 0
confidence_derived: 1.00
---

# 根拠レポート：modules-emacs-undo 単体テストケース一覧

## 本レポートについて

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

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

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

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

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

---

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

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

- E-01: `modules/emacs/undo/config.el` - メイン設定ファイル（126行）
- E-02: `modules/emacs/undo/packages.el` - パッケージ定義ファイル（14行）
- E-03: `modules/emacs/undo/doctor.el` - 診断スクリプト（8行）
- E-04: `modules/emacs/undo/README.org` - モジュールドキュメント（85行）

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

### config.el - undo-fu-mode関連（UT-UND-001〜009）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | undo-fu-modeマイナーモード定義 | E-01 (L12-24) define-minor-mode | ○ |
| C-02 | モード無効化機能 | E-01 (L12) :init-value nil | ○ |
| C-03 | C-_ キーバインド（undo） | E-01 (L17) define-key map | ○ |
| C-04 | M-_ キーバインド（redo） | E-01 (L18) define-key map | ○ |
| C-05 | C-M-_ キーバインド（redo-all） | E-01 (L19) define-key map | ○ |
| C-06 | undo remap設定 | E-01 (L15) [remap undo] | ○ |
| C-07 | redo remap設定 | E-01 (L16) [remap redo] | ○ |
| C-08 | セッション保存キーバインド | E-01 (L20) C-x r u | ○ |
| C-09 | セッション復元キーバインド | E-01 (L21) C-x r U | ○ |

### config.el - undo-fu設定関連（UT-UND-010〜012）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-10 | undo-limit設定（256000） | E-01 (L8) setq undo-limit | ○ |
| C-11 | undo-strong-limit設定（2000000） | E-01 (L9) setq undo-strong-limit | ○ |
| C-12 | undo-outer-limit設定（36000000） | E-01 (L10) setq undo-outer-limit | ○ |

### config.el - undo-fu-session関連（UT-UND-013〜020）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-13 | ハッシュ化ファイル名生成 | E-01 (L44-48) defadvice! +undo-fu-make-hashed-session-file-name-a | ○ |
| C-14 | セッションファイル拡張子付与 | E-01 (L48) undo-fu-session--file-name-ext | ○ |
| C-15 | 空文字列ファイルパス（境界値） | E-01 (L44-48) 関数定義から推測 | ○ |
| C-16 | nilファイルパス（異常系） | E-01 (L44-48) 関数定義から推測 | ○ |
| C-17 | セッションディレクトリ設定 | E-01 (L30) :custom undo-fu-session-directory | ○ |
| C-18 | 除外ファイルパターン設定 | E-01 (L32) setq undo-fu-session-incompatible-files | ○ |
| C-19 | zstd圧縮有効化 | E-01 (L34-37) when executable-find "zstd" | ○ |
| C-20 | zstdなし時の挙動 | E-01 (L34) when条件 | ○ |

### config.el - vundo関連（UT-UND-021〜023）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-21 | vundo-glyph-alist設定 | E-01 (L56) setq vundo-glyph-alist | ○ |
| C-22 | vundo-compact-display設定 | E-01 (L57) setq vundo-compact-display t | ○ |
| C-23 | doom/escape リマップ | E-01 (L58) define-key vundo-mode-map | ○ |

### config.el - undo-tree関連（UT-UND-024〜045）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-24 | global-undo-tree-modeフック登録 | E-01 (L64) :hook doom-first-buffer | ○ |
| C-25 | visualizer-diff有効化 | E-01 (L67) setq undo-tree-visualizer-diff t | ○ |
| C-26 | auto-save-history有効化 | E-01 (L68) setq undo-tree-auto-save-history t | ○ |
| C-27 | undo-in-region有効化 | E-01 (L69) setq undo-tree-enable-undo-in-region t | ○ |
| C-28 | undo-limit設定（800000） | E-01 (L75) setq undo-limit | ○ |
| C-29 | undo-strong-limit設定（12000000） | E-01 (L76) setq undo-strong-limit | ○ |
| C-30 | undo-outer-limit設定（128000000） | E-01 (L77) setq undo-outer-limit | ○ |
| C-31 | 履歴ディレクトリ設定 | E-01 (L65) :custom undo-tree-history-directory-alist | ○ |
| C-32 | .zst拡張子付与 | E-01 (L86-88) defadvice! +undo--append-zst-extension-to-file-name-a | ○ |
| C-33 | 空文字列ファイル名（境界値） | E-01 (L86-88) 関数定義から推測 | ○ |
| C-34 | テキストプロパティ除去 | E-01 (L93-98) defadvice! +undo--strip-text-properties-a | ○ |
| C-35 | consセル処理 | E-01 (L96-98) dolist処理 | ○ |
| C-36 | 空undo履歴（境界値） | E-01 (L95) dolist buffer-undo-list | ○ |
| C-37 | 非文字列要素（異常系） | E-01 (L97) stringp条件 | ○ |
| C-38 | diff表示機能 | E-01 (L111-120) defadvice! +undo-tree--show-visualizer-diff-safely-a | ○ |
| C-39 | visualizer-diff変数設定 | E-01 (L113) setq undo-tree-visualizer-diff t | ○ |
| C-40 | hide-mode-line-mode有効化 | E-01 (L116) hide-mode-line-mode +1 | ○ |
| C-41 | ウィンドウリサイズ | E-01 (L120) shrink-window-if-larger-than-buffer | ○ |
| C-42 | 親バッファなし（異常系） | E-01 (L114) with-current-buffer | ○ |
| C-43 | balance-windows抑制 | E-01 (L122-125) defadvice! +undo-tree--suppress-balance-windows-a | ○ |
| C-44 | 元関数実行 | E-01 (L125) apply fn args | ○ |
| C-45 | 保存メッセージ抑制 | E-01 (L103) advice-add doom-shut-up-a | ○ |

### config.el - フラグ分岐（UT-UND-046〜047）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-46 | +treeフラグでundo-tree使用 | E-01 (L61-62) :when (modulep! +tree) | ○ |
| C-47 | +treeフラグなしでundo-fu使用 | E-01 (L3-4) :unless (modulep! +tree) | ○ |

### packages.el関連（UT-UND-048〜052）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-48 | undo-treeパッケージ定義 | E-02 (L5) package! undo-tree | ○ |
| C-49 | undo-fuパッケージ定義 | E-02 (L6-8) package! undo-fu | ○ |
| C-50 | undo-fu-sessionパッケージ定義 | E-02 (L9-11) package! undo-fu-session | ○ |
| C-51 | vundoパッケージ定義（Emacs 28+） | E-02 (L12-13) when (> emacs-major-version 27) | ○ |
| C-52 | vundoパッケージ非定義（Emacs 27） | E-02 (L12) when条件 | ○ |

### doctor.el関連（UT-UND-053〜057）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-53 | undo-fu/undo-tree競合検出（+tree時） | E-03 (L3-4) let* unwanted/wanted | ○ |
| C-54 | undo-tree/undo-fu競合検出（非+tree時） | E-03 (L3-4) if (modulep! +tree) | ○ |
| C-55 | 競合時説明メッセージ | E-03 (L7) explain! | ○ |
| C-56 | ユーザーモジュールパッケージ検出 | E-03 (L5) doom-package-in-module-p :user | ○ |
| C-57 | パッケージ非検出 | E-03 (L5) when条件 | ○ |

## 4) 不足情報（Unknown / Missing）
- 該当なし：全てのテストケースに対応するソースコードが存在

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - 全てのテストケースがソースコードに基づいて生成されている
- 注意点：
  - undo-tree/undo-fuの相互排他的な設定のため、テスト実行時は+treeフラグの有無を明確にする必要がある
  - Emacsバージョン依存の機能（vundoはEmacs 28以上）があるため、テスト環境を考慮すること
  - zstd依存の機能は、zstdがインストールされている環境でのみテスト可能

## 6) レビュアーチェックリスト（最小）
- [ ] undo-fu-modeのキーバインド設定が実際のキーマップと一致しているか確認
- [ ] undo-limit等のメモリ設定値がコメントの説明と一致しているか確認
- [ ] advice関数の:override/:filter-return/:before/:aroundの指定が正しいか確認
- [ ] modulep!による条件分岐が正しくテストケースに反映されているか確認
- [ ] Emacsバージョン条件（> emacs-major-version 27）のテストケースが適切か確認
- [ ] doctor.elの互換性チェックロジックが正しく理解されているか確認
