---
generated_at: 2026-02-19 10:30:00
metrics:
  claims_total: 50
  claims_with_evidence: 48
  claims_without_evidence: 2
confidence_derived: 0.96
---

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

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.96**
  - 根拠あり：48 / 50、根拠なし：2
- 優先レビュー（高）
  1. **UT-RKT-003**：racket-run-and-switch-to-repl失敗時のエラーハンドリング - racket-mode内部実装に依存
  2. **UT-RKT-011**：定義が見つからない場合の挙動 - racket-mode内部実装に依存

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

- E-01: `modules/lang/racket/autoload.el` - 3つのautoload関数定義（+racket/open-repl、+racket-lookup-documentation、+racket-lookup-definition）
- E-02: `modules/lang/racket/config.el` - モジュール設定、use-package!宣言、キーバインド設定
- E-03: `modules/lang/racket/doctor.el` - 実行環境診断処理（drracket、racket、raco、raco fmt）
- E-04: `modules/lang/racket/packages.el` - パッケージ宣言（racket-mode）
- E-05: `modules/lang/racket/README.org` - モジュールフラグ説明（+lsp、+xp、+hash-lang）

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | +racket/open-replが既存REPLバッファを返却する | E-01 (L4-12) | ○ |
| C-02 | +racket/open-replが新規REPLバッファを作成する | E-01 (L9-11) | ○ |
| C-03 | racket-run-and-switch-to-repl失敗時のエラーハンドリング | **根拠なし** | △ |
| C-04 | +racket-lookup-documentationがracket-xp-mode有効時にracket-xp-describeを呼ぶ | E-01 (L17-18) | ○ |
| C-05 | +racket-lookup-documentationがracket-xp-mode無効時にracket-repl-describeを呼ぶ | E-01 (L19) | ○ |
| C-06 | ドキュメント未発見時にnilを返却する | E-01 (L20-22) | ○ |
| C-07 | 空文字列入力時の挙動 | E-01 (L15-22) | ○ |
| C-08 | nil入力時の挙動 | E-01 (L15-22) | ○ |
| C-09 | +racket-lookup-definitionがracket-xp-mode有効時にracket-xp-visit-definitionを呼ぶ | E-01 (L29) | ○ |
| C-10 | +racket-lookup-definitionがracket-xp-mode無効時にracket-repl-visit-definitionを呼ぶ | E-01 (L30) | ○ |
| C-11 | 定義未発見時の挙動 | **根拠なし** | △ |
| C-12 | info.rktがprojectile-project-root-filesに追加される | E-02 (L4-5) | ○ |
| C-13 | +hash-lang有効時にracket-hash-lang-modeが設定される | E-02 (L16-20) | ○ |
| C-14 | +hash-lang無効時にracket-modeが設定される | E-02 (L21-22) | ○ |
| C-15 | .rkt拡張子がモードに関連付けられる | E-02 (L31-32) | ○ |
| C-16 | +hash-lang有効時に.scrbl拡張子が関連付けられる | E-02 (L19) | ○ |
| C-17 | +hash-lang有効時に.rhm拡張子が関連付けられる | E-02 (L20) | ○ |
| C-18 | REPLハンドラが+racket/open-replに設定される | E-02 (L34) | ○ |
| C-19 | lookupハンドラが正しく設定される | E-02 (L35-37) | ○ |
| C-20 | Racketドキュメントセットが設定される | E-02 (L38) | ○ |
| C-21 | リガチャ設定が適用される | E-02 (L39-42) | ○ |
| C-22 | #true/#falseローテーションパターンが設定される | E-02 (L43) | ○ |
| C-23 | raco fmtがフォーマッタとして設定される | E-02 (L44) | ○ |
| C-24 | highlight-quoted-modeがフックに追加される | E-02 (L46) | ○ |
| C-25 | +lsp有効時にlsp!がフックに追加される | E-02 (L48-49) | ○ |
| C-26 | +lsp無効時にlsp!が追加されない | E-02 (L48) | ○ |
| C-27 | +xp有効時にracket-xp-modeがフックに追加される | E-02 (L51-52) | ○ |
| C-28 | +xpとsyntax checkerが両方有効時にflycheckが無効化される | E-02 (L55-58) | ○ |
| C-29 | parinfer/lispy無効時にsmart-open-bracket-modeが有効化される | E-02 (L60-62) | ○ |
| C-30 | parinfer有効時にsmart-open-bracket-modeが追加されない | E-02 (L60) | ○ |
| C-31 | lispy有効時にsmart-open-bracket-modeが追加されない | E-02 (L61) | ○ |
| C-32 | racket-xp-mode-mapのremapが設定される | E-02 (L64-68) | ○ |
| C-33 | localleaderキーバインドが設定される | E-02 (L69-84) | ○ |
| C-34 | mプレフィックス配下のマクロキーが設定される | E-02 (L85-89) | ○ |
| C-35 | gプレフィックス配下のナビゲーションキーが設定される | E-02 (L90-94) | ○ |
| C-36 | sプレフィックス配下の送信キーが設定される | E-02 (L95-98) | ○ |
| C-37 | racket-repl-mode-mapのキーバインドが設定される | E-02 (L99-112) | ○ |
| C-38 | drracketが見つかる場合に警告が出ない | E-03 (L4-5) | ○ |
| C-39 | drracketが見つからない場合に警告が出る | E-03 (L4-5) | ○ |
| C-40 | racketが見つかる場合に警告が出ない | E-03 (L7-8) | ○ |
| C-41 | racketが見つからない場合に警告が出る | E-03 (L7-8) | ○ |
| C-42 | racoが見つかる場合に警告が出ない | E-03 (L10-11) | ○ |
| C-43 | racoが見つからない場合に警告が出る | E-03 (L10-11) | ○ |
| C-44 | :editor format有効でraco fmt使用可能時に警告が出ない | E-03 (L13-16) | ○ |
| C-45 | :editor format有効でraco fmt使用不可時に警告が出る | E-03 (L13-16) | ○ |
| C-46 | :editor format無効時にraco fmt診断がスキップされる | E-03 (L13) | ○ |
| C-47 | racket-modeパッケージが正しくピン留めされている | E-04 (L4) | ○ |
| C-48 | mode-mapシンボルが正しく生成される | E-02 (L24) | ○ |
| C-49 | mode-hookシンボルが正しく生成される | E-02 (L25) | ○ |
| C-50 | mode-local-vars-hookシンボルが正しく生成される | E-02 (L26) | ○ |

## 4) 不足情報（Unknown / Missing）
- **UT-RKT-003（C-03）**: racket-run-and-switch-to-repl関数の失敗時の挙動は、racket-modeパッケージ内部の実装に依存しており、本モジュールのコードからは確認不可
  - 候補：racket-modeパッケージのソースコード / racket-modeのドキュメント / 実機テスト
- **UT-RKT-011（C-11）**: 定義が見つからない場合の挙動は、racket-xp-visit-definitionおよびracket-repl-visit-definitionの内部実装に依存
  - 候補：racket-modeパッケージのソースコード / racket-modeのドキュメント / 実機テスト

## 5) リスクフラグ（レビュー観点）
- **0 (低リスク)**: 大部分のテストケースは直接ソースコードから根拠を確認可能
- **1 (中リスク)**: 2件のテストケース（UT-RKT-003、UT-RKT-011）は外部パッケージの挙動に依存しており、実機テストでの確認が推奨される
- **0 (低リスク)**: キーバインド設定のテストは全てconfig.elから直接確認可能
- **0 (低リスク)**: doctor.elの診断ロジックは明確で、テストケースとの対応が明瞭

## 6) レビュアーチェックリスト（最小）
- [ ] autoload.elの3関数（+racket/open-repl、+racket-lookup-documentation、+racket-lookup-definition）のテストケースが網羅的か確認
- [ ] config.elのモジュールフラグ（+hash-lang、+lsp、+xp）に関する条件分岐が全てテストされているか確認
- [ ] doctor.elの4つの診断項目（drracket、racket、raco、raco fmt）が全てカバーされているか確認
- [ ] キーバインド設定のテストケースが主要なコマンドをカバーしているか確認
- [ ] 外部パッケージ（racket-mode）の挙動に依存するテストケース（UT-RKT-003、UT-RKT-011）について、実機テストの必要性を判断
- [ ] 境界値テスト（空文字列、nil入力）が適切に設計されているか確認
