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

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

## 本レポートについて

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

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

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

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

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

---

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

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

- E-01: `modules/term/vterm/config.el` - vtermパッケージ設定ファイル（33行）
- E-02: `modules/term/vterm/autoload.el` - 自動ロード関数定義ファイル（77行）
- E-03: `modules/term/vterm/doctor.el` - 診断チェックファイル（10行）
- E-04: `modules/term/vterm/packages.el` - パッケージ定義ファイル（6行）

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

### autoload.el関連テストケース

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | +vterm/toggleがプレフィックス引数なしでvtermポップアップをトグルする | E-02 (6-42行目) | ○ |
| C-02 | +vterm/toggleがプレフィックス引数ありでvtermバッファを再作成する | E-02 (23-29行目: when arg句) | ○ |
| C-03 | +vterm/toggleがウィンドウ表示中にウィンドウを閉じる | E-02 (30-31行目: if-let* win delete-window) | ○ |
| C-04 | persp-mode有効時に適切なバッファ名が使用される | E-02 (17-20行目: persp-mode条件分岐) | ○ |
| C-05 | persp-mode無効時にmainがバッファ名に使用される | E-02 (20行目: "main") | ○ |
| C-06 | 既存のvterm-modeバッファが再利用される | E-02 (32-36行目: cl-loop) | ○ |
| C-07 | 動的モジュール未サポート時にエラーが発生する | E-02 (68-69行目: user-error) | ○ |
| C-08 | +vterm/hereがプロジェクトルートでvtermを開く | E-02 (45-60行目) | ○ |
| C-09 | +vterm/hereがプレフィックス引数ありでカレントディレクトリを使用する | E-02 (48行目, 72-73行目) | ○ |
| C-10 | +vterm/hereが動的モジュール未サポート時にエラーを発生させる | E-02 (68-69行目: 共通関数経由) | ○ |
| C-11 | +vterm--configure-project-root-and-displayがPROOT環境変数を設定する | E-02 (75行目: setenv "PROOT") | ○ |
| C-12 | プロジェクトルートがない場合にdefault-directoryが使用される | E-02 (70行目: or doom-project-root default-directory) | ○ |
| C-13 | display-fnが呼び出される | E-02 (76行目: funcall display-fn) | ○ |
| C-14 | argがnilの場合にプロジェクトルートがdefault-directoryになる | E-02 (71-74行目: if arg条件) | ○ |
| C-15 | argが非nilの場合にdefault-directoryが維持される | E-02 (72-73行目: if arg句) | ○ |
| C-39 | +vterm--idがバッファローカル変数として機能する | E-02 (3行目: defvar, 40行目: setq-local) | ○ |
| C-40 | バッファが存在するがウィンドウがない場合の動作 | E-02 (30-41行目: if-let* win分岐) | ○ |

### config.el関連テストケース

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-16 | module-file-suffixが定義されている場合にvtermがロードされる | E-01 (4行目: :when条件) | ○ |
| C-17 | module-file-suffixが未定義の場合にvtermがロードされない | E-01 (4行目: :when条件の否定) | ○ |
| C-18 | vterm-mode時にdoom-mark-buffer-as-real-hが実行される | E-01 (6行目: :hook) | ○ |
| C-19 | vterm-mode時にhide-mode-line-modeが有効になる | E-01 (7行目: :hook) | ○ |
| C-20 | noninteractive時にvterm-module-compileがoverrideされる | E-01 (13-15行目: :preface) | ○ |
| C-21 | vtermバッファが正しいサイズでポップアップ表示される | E-01 (18行目: :size 0.25) | ○ |
| C-22 | vtermポップアップのvslotが-4に設定される | E-01 (18行目: :vslot -4) | ○ |
| C-23 | vtermポップアップが選択状態で開かれる | E-01 (18行目: :select t) | ○ |
| C-24 | vtermポップアップがquitで閉じられない | E-01 (18行目: :quit nil) | ○ |
| C-25 | vtermポップアップのttlが0に設定される | E-01 (18行目: :ttl 0) | ○ |
| C-26 | C-qでvterm-send-next-keyが実行される | E-01 (20行目: map!) | ○ |
| C-27 | プロセス終了時にバッファがkillされる | E-01 (24行目: vterm-kill-buffer-on-exit t) | ○ |
| C-28 | スクロールバック行数が5000に設定される | E-01 (27行目: vterm-max-scrollback 5000) | ○ |
| C-29 | vterm-mode時にconfirm-kill-processesがnilになる | E-01 (31行目: confirm-kill-processes nil) | ○ |
| C-30 | vterm-mode時にhscroll-marginが0になる | E-01 (33行目: hscroll-margin 0) | ○ |

### doctor.el関連テストケース

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-31 | makeコマンドが存在する場合に警告が出ない | E-03 (3-4行目: unless executable-find) | ○ |
| C-32 | makeコマンドが存在しない場合に警告が出る | E-03 (3-4行目: warn!) | ○ |
| C-33 | cmakeコマンドが存在する場合に警告が出ない | E-03 (6-7行目: unless executable-find) | ○ |
| C-34 | cmakeコマンドが存在しない場合に警告が出る | E-03 (6-7行目: warn!) | ○ |
| C-35 | 動的モジュールサポートがある場合に警告が出ない | E-03 (9-10行目: unless fboundp) | ○ |
| C-36 | 動的モジュールサポートがない場合に警告が出る | E-03 (9-10行目: warn!) | ○ |

### packages.el関連テストケース

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-37 | built-inがpreferに設定されている | E-04 (5行目: :built-in 'prefer) | ○ |
| C-38 | 正しいコミットハッシュにpinされている | E-04 (6行目: :pin "a01a...") | ○ |

## 4) 不足情報（Unknown / Missing）
- 根拠なしの項目：なし
- 全てのテストケースがソースコードに基づいて作成されています

## 5) リスクフラグ（レビュー観点）
- **0: 低リスク** - 全てのテストケースに明確な根拠あり
- vtermモジュールは外部パッケージ(vterm)のラッパーであり、Doom Emacs固有の設定とユーティリティ関数のみを対象としています
- 動的モジュール(vterm-module.so)のコンパイルや動作自体はテスト対象外です

## 6) レビュアーチェックリスト（最小）
- [ ] autoload.el関連テストケース（UT-VTM-001〜015, 039, 040）が+vterm/toggle、+vterm/here、+vterm--configure-project-root-and-display関数の全分岐をカバーしているか
- [ ] config.el関連テストケース（UT-VTM-016〜030）がuse-package!マクロの全設定をカバーしているか
- [ ] doctor.el関連テストケース（UT-VTM-031〜036）が全ての診断チェックをカバーしているか
- [ ] persp-mode連携のテストケース（UT-VTM-004, 005）がワークスペース機能と正しく連携するか
- [ ] 動的モジュール未サポート時のエラーハンドリング（UT-VTM-007, 010, 017, 036）が適切か
