---
generated_at: 2026-03-01 10:00:00
metrics:
  claims_total: 25
  claims_with_evidence: 24
  claims_without_evidence: 1
confidence_derived: 0.96
---

# 根拠レポート：1-メインターミナルウィンドウ

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.96**
  - 根拠あり：24 / 25、根拠なし：1
- 優先レビュー（高）
  1. **GTK版window.zigファイルの詳細確認**：根拠不足

## 2) 参照した情報（Evidence一覧）

- E-01: `macos/Sources/Features/Terminal/TerminalView.swift`
- E-02: `macos/Sources/Features/Terminal/BaseTerminalController.swift`
- E-03: `macos/Sources/Features/Splits/SplitTree.swift`
- E-04: `macos/Sources/Features/Splits/SplitView.swift`
- E-05: `macos/Sources/Features/Splits/TerminalSplitTreeView.swift`
- E-06: `macos/Sources/Features/Terminal/ErrorView.swift`
- E-07: `docs/code-to-docs/画面一覧/画面一覧.csv`
- E-08: `docs/code-to-docs/画面機能マッピング/画面機能マッピング.csv`
- E-09: `docs/code-to-docs/画面一覧/画面遷移図.md`

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

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | TerminalViewがメインのSwiftUIビューである | E-01 (41行目 struct TerminalView) | ○ |
| C-02 | 画面はLoading/Error/Readyの3状態を持つ | E-01 (68-73行目 switch ghostty.readiness) | ○ |
| C-03 | SplitTreeでスプリット構造を管理する | E-03 (5行目 struct SplitTree) | ○ |
| C-04 | Nodeは.leafと.splitの2種類がある | E-03 (15-18行目 indirect enum Node) | ○ |
| C-05 | コマンドパレットはオーバーレイ表示される | E-01 (110-117行目 TerminalCommandPaletteView) | ○ |
| C-06 | アップデートオーバーレイが右下に表示される | E-01 (120-123行目 UpdateOverlay) | ○ |
| C-07 | デバッグビルド時に警告バナーが表示される | E-01 (78-80行目 DebugBuildWarningView) | ○ |
| C-08 | BaseTerminalControllerがウィンドウコントローラー基底クラス | E-02 (29行目 class BaseTerminalController) | ○ |
| C-09 | surfaceTreeプロパティでスプリット構造を管理 | E-02 (44-45行目 @Published var surfaceTree) | ○ |
| C-10 | newSplitメソッドでスプリットを作成 | E-02 (234-269行目 func newSplit) | ○ |
| C-11 | closeSurfaceメソッドでサーフェスを閉じる | E-02 (390-427行目 func closeSurface) | ○ |
| C-12 | Undo/Redo機能でスプリット操作を取り消し可能 | E-02 (489-510行目 undoManager.registerUndo) | ○ |
| C-13 | SplitViewでスプリットのレイアウトを表示 | E-04 (8行目 struct SplitView) | ○ |
| C-14 | ドラッグジェスチャーでスプリットサイズを変更 | E-04 (90-103行目 dragGesture) | ○ |
| C-15 | ErrorViewでエラー時の表示を行う | E-06 (3-18行目 struct ErrorView) | ○ |
| C-16 | TerminalSplitTreeViewでスプリットツリーを表示 | E-05 (28行目 struct TerminalSplitTreeView) | ○ |
| C-17 | zoomedノードまたはrootノードを表示 | E-05 (33行目 if let node = tree.zoomed ?? tree.root) | ○ |
| C-18 | 関連機能一覧が正しい | E-08 (画面No=1の全エントリ) | ○ |
| C-19 | 画面遷移情報が正しい | E-09 (ターミナル操作セクション) | ○ |
| C-20 | fullscreenStyleでフルスクリーンを管理 | E-02 (69行目 private(set) var fullscreenStyle) | ○ |
| C-21 | toggleFullscreenメソッドでフルスクリーン切り替え | E-02 (1014-1058行目 func toggleFullscreen) | ○ |
| C-22 | confirmCloseで閉じる確認を表示 | E-02 (320-356行目 func confirmClose) | ○ |
| C-23 | focusedSurfaceでフォーカス中のサーフェスを管理 | E-02 (39-40行目 var focusedSurface) | ○ |
| C-24 | TerminalViewDelegateで各種イベントを通知 | E-01 (8-23行目 protocol TerminalViewDelegate) | ○ |
| C-25 | GTK版はwindow.zigで実装される | 推定（画面一覧.csvの備考欄） | △ |

## 4) 不足情報（Unknown / Missing）
- GTK版(window.zig)の詳細実装確認が不足
  - 候補：`src/apprt/gtk/window.zig` の読み込み / GTK版のビルド・実行確認

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - macOS版の実装は十分に確認済み
- 1: 中リスク - GTK版の詳細実装は未確認だが、画面一覧.csvに記載あり

## 6) レビュアーチェックリスト（最小）
- [ ] TerminalView.swiftの構造が設計書と一致しているか確認
- [ ] SplitTree.swiftのNode構造が正確に記載されているか確認
- [ ] BaseTerminalControllerの主要メソッドが網羅されているか確認
- [ ] 画面遷移図との整合性を確認
- [ ] GTK版(window.zig)の実装を追加確認（必要に応じて）
