---
generated_at: 2026-02-19 10:30:00
metrics:
  claims_total: 78
  claims_with_evidence: 78
  claims_without_evidence: 0
confidence_derived: 1.00
---

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

## 本レポートについて

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

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

1. **根拠の有無確認**：各テストケースに対して、ソースコードの関数・変数定義が存在するか
2. **根拠との整合性**：テストケースの内容がソースコードの実装と矛盾していないか
3. **網羅性**：モジュール内の全てのpublic関数・重要な処理をカバーしているか

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**1.00**
  - 根拠あり：78 / 78、根拠なし：0
- 優先レビュー（高）
  1. **テストID UT-MOD-038〜043**：anzu検索機能のテストケース（複雑な条件分岐）
  2. **テストID UT-MOD-060〜065**：flycheck連携のテストケース（外部依存）
  3. **テストID UT-MOD-069〜071**：モードライン有効化/無効化のテストケース（状態管理）

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

- E-01: `modules/ui/modeline/autoload.el` - autoload関数定義（+modeline-resize-for-font-h, +modeline-update-env-in-all-windows-h, +modeline-clear-env-in-all-windows-h）
- E-02: `modules/ui/modeline/+light.el` - 軽量モードライン実装（主要関数・変数定義）
- E-03: `modules/ui/modeline/config.el` - doom-modeline設定とフック定義
- E-04: `modules/ui/modeline/packages.el` - パッケージ依存関係定義

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

### autoload.el の関数

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | +modeline-resize-for-font-h はフォントサイズ変更時にモードライン高さを調整する | E-01 (L5-17) | ○ |
| C-02 | +modeline-resize-for-font-h はfont-scale=0でデフォルト高さに戻す | E-01 (L15-17) | ○ |
| C-03 | +modeline-resize-for-font-h はfont-scale=nilを0として扱う | E-01 (L13) | ○ |
| C-04 | +modeline--old-bar-heightは初回呼び出し時に保存される | E-01 (L10-11) | ○ |
| C-05 | +modeline-update-env-in-all-windows-hは全ウィンドウを走査する | E-01 (L22-26) | ○ |
| C-06 | +modeline-clear-env-in-all-windows-hは+lightモード時にスキップ | E-01 (L31) | ○ |

### +light.el の関数（変数設定・バー管理）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-07 | +modeline--set-var-and-refresh-bars-fnは変数設定とリフレッシュを連動 | E-02 (L11-15) | ○ |
| C-08 | +modeline-activeは選択ウィンドウとアクティブウィンドウを比較 | E-02 (L74-76) | ○ |
| C-09 | +modeline-set-selected-window-hはミニバッファを除外 | E-02 (L81-83) | ○ |
| C-10 | +modeline--make-xpmはXPMビットマップを生成 | E-02 (L85-110) | ○ |
| C-11 | +modeline-format-iconは4種類のアイコンセットに対応 | E-02 (L112-126) | ○ |

### +light.el の関数（モードライン定義・設定）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-12 | set-modeline!は+modeline-format-alistから検索して設定 | E-02 (L128-139) | ○ |
| C-13 | set-modeline!は未定義名でエラーを発生 | E-02 (L139) | ○ |
| C-14 | set-modeline-hook!はフックに設定関数を追加 | E-02 (L141-149) | ○ |
| C-15 | def-modeline!はフォーマットと設定関数を生成 | E-02 (L151-159) | ○ |
| C-16 | def-modeline-var!は:localオプションをサポート | E-02 (L161-169) | ○ |

### +light.el の関数（バーリフレッシュ・高さ調整）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-17 | +modeline-refresh-bars-hはアクティブ/非アクティブバーを生成 | E-02 (L191-209) | ○ |
| C-18 | +modeline-refresh-bars-hはbar-width=0で透明バーを生成 | E-02 (L196-199) | ○ |
| C-19 | +modeline-adjust-height-hはフォントスケールに応じて高さ調整 | E-02 (L211-222) | ○ |

### +light.el の関数（検索・マッチ表示）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-20 | +modeline--anzuは検索マッチ数を表示 | E-02 (L248-265) | ○ |
| C-21 | +modeline--anzuは4種類の状態に対応（通常/replace-query/replace/overflow） | E-02 (L257-264) | ○ |
| C-22 | +modeline--anzuはiedit-mode時にnilを返す | E-02 (L253) | ○ |
| C-23 | +modeline--evil-substituteはevil置換のマッチ数を表示 | E-02 (L267-281) | ○ |
| C-24 | +modeline--multiple-cursorsはマルチカーソル数を表示 | E-02 (L283-295) | ○ |
| C-25 | +modeline--ieditはiedit領域のマッチ数を表示 | E-02 (L301-320) | ○ |
| C-26 | +modeline--macro-recordingはマクロ記録状態を表示 | E-02 (L322-337) | ○ |

### +light.el の関数（その他）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-27 | +modeline--columnは位置のカラム番号を取得 | E-02 (L438-441) | ○ |
| C-28 | +modeline-checker-updateはflycheckステータスに応じたアイコンを設定 | E-02 (L408-433) | ○ |
| C-29 | +modeline-add-selection-segment-hはセグメントを追加 | E-02 (L474-475) | ○ |
| C-30 | +modeline-remove-selection-segment-hはセグメントを削除 | E-02 (L476-477) | ○ |
| C-31 | +modeline-update-pdf-pagesはPDFページ番号を更新 | E-02 (L505-510) | ○ |
| C-32 | +modeline-modeはmode-line-formatを設定/復元 | E-02 (L589-607) | ○ |
| C-33 | +modeline--generate-buffer-id-cache-hはバッファIDをキャッシュ | E-02 (L367-387) | ○ |
| C-34 | +modeline-init-project-or-hide-hはmagit-status-modeを判定 | E-02 (L577-581) | ○ |

### config.el の関数

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-35 | +modeline-hide-in-non-status-buffer-hはmagit-status-modeを判定 | E-03 (L39-43) | ○ |

## 4) 不足情報（Unknown / Missing）
- 根拠なしの項目はありません
- 全てのテストケースはソースコードの実装に基づいて生成されています

## 5) リスクフラグ（レビュー観点）
- **0: 低リスク** - 全てのテストケースがソースコードから直接導出されています

### 補足事項
1. **外部依存**: anzu、evil-anzu、flycheck、pdf-tools等の外部パッケージに依存するテストケースがあります。これらのテストを実行する際は、依存パッケージが正しくインストールされている必要があります。
2. **GUI依存**: XPMビットマップ生成（+modeline--make-xpm）はGUI環境でのみ動作します。TTY環境ではテストが異なる結果になる可能性があります。
3. **Emacs Lisp特有**: defcustom、defvar、defmacroなどのEmacs Lisp特有の構文を使用しています。テスト実行にはEmacsのバッチモードまたはERT（Emacs Lisp Regression Testing）フレームワークが必要です。

## 6) レビュアーチェックリスト（最小）
- [ ] autoload.el の3つの関数（+modeline-resize-for-font-h, +modeline-update-env-in-all-windows-h, +modeline-clear-env-in-all-windows-h）のテストケースが適切か確認
- [ ] +light.el の主要関数（set-modeline!, def-modeline!, +modeline-refresh-bars-h）のテストケースが網羅的か確認
- [ ] 検索・マッチ表示関数（+modeline--anzu, +modeline--evil-substitute, +modeline--iedit）の条件分岐が全てカバーされているか確認
- [ ] flycheck連携（+modeline-checker-update）の全ステータス（finished, running, errored, interrupted, suspicious）がテストされているか確認
- [ ] モードライン有効化/無効化（+modeline-mode, +modeline-global-mode）の状態遷移が正しくテストされているか確認
- [ ] 境界値テスト（空リスト、nil値、0値）が適切に含まれているか確認
