---
generated_at: 2026-02-24 17:57:00
metrics:
  claims_total: 40
  claims_with_evidence: 38
  claims_without_evidence: 2
confidence_derived: 0.95
---

# 根拠レポート：結合テストケース一覧

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.95**
  - 根拠あり：38 / 40、根拠なし：2
- 優先レビュー（高）
  1. **IT-015 シンボル検索(LSP連携)**：現在の実装では空配列を返却しているため、実際の動作確認が必要
  2. **IT-025 Feishu連携**：Feishu/Discord連携の環境依存が高い

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

- E-01: `packages/opencode/src/server/server.ts`
- E-02: `packages/opencode/src/server/routes/session.ts`
- E-03: `packages/opencode/src/server/routes/provider.ts`
- E-04: `packages/opencode/src/server/routes/mcp.ts`
- E-05: `packages/opencode/src/server/routes/file.ts`
- E-06: `packages/opencode/src/server/routes/config.ts`
- E-07: `packages/opencode/src/server/routes/global.ts`
- E-08: `packages/opencode/src/session/index.ts`
- E-09: `packages/opencode/src/share/share-next.ts`
- E-10: `packages/function/src/api.ts`
- E-11: `packages/opencode/test/server/session-list.test.ts`
- E-12: `packages/opencode/src/storage/db.ts`
- E-13: `packages/opencode/src/provider/provider.ts`
- E-14: `packages/opencode/src/mcp/index.ts`
- E-15: `packages/opencode/src/file/index.ts`

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | セッション作成後のメッセージ送信テスト | E-02 SessionRoutes POST /session, POST /:sessionID/message | ○ |
| C-02 | セッションのフォーク処理テスト | E-02, E-08 Session.fork | ○ |
| C-03 | セッションの共有機能テスト | E-02, E-09 ShareNext.create | ○ |
| C-04 | セッションの共有解除テスト | E-02, E-09 ShareNext.remove | ○ |
| C-05 | セッションの削除とカスケード処理テスト | E-02, E-08 Session.remove CASCADE delete | ○ |
| C-06 | セッションの要約処理テスト | E-02 SessionCompaction.create | ○ |
| C-07 | セッションの復元処理テスト | E-02 SessionRevert.revert | ○ |
| C-08 | プロバイダー一覧取得テスト | E-03 GET /provider, Provider.list | ○ |
| C-09 | OAuth認証フローテスト | E-03 ProviderAuth.authorize, callback | ○ |
| C-10 | MCPサーバー追加と接続テスト | E-04 MCP.add, MCP.connect | ○ |
| C-11 | MCPサーバーOAuth認証テスト | E-04 MCP.startAuth, MCP.finishAuth | ○ |
| C-12 | MCPサーバー切断と再接続テスト | E-04 MCP.disconnect, MCP.connect | ○ |
| C-13 | ファイル検索とコンテンツ読み込みテスト | E-05 File.search, File.read | ○ |
| C-14 | テキスト検索(Ripgrep)テスト | E-05 Ripgrep.search | ○ |
| C-15 | シンボル検索(LSP連携)テスト | E-05 現在は空配列を返却 | △ |
| C-16 | 設定の取得と更新テスト | E-06 Config.get, Config.update | ○ |
| C-17 | グローバル設定の取得と更新テスト | E-07 Config.getGlobal, Config.updateGlobal | ○ |
| C-18 | 認証情報の設定と削除テスト | E-01 Auth.set, Auth.remove | ○ |
| C-19 | セッション一覧のフィルタリングテスト | E-08, E-11 Session.list テスト実装あり | ○ |
| C-20 | メッセージの永続化と取得テスト | E-08, E-12 MessageTable, PartTable | ○ |
| C-21 | メッセージパーツの更新と削除テスト | E-02, E-08 Session.updatePart, Session.removePart | ○ |
| C-22 | opncd.aiへのセッション同期テスト | E-09 ShareNext.sync 外部API | ○ |
| C-23 | GitHubアクション用トークン交換テスト | E-10 exchange_github_app_token | ○ |
| C-24 | GitHubアプリインストール確認テスト | E-10 get_github_app_installation | ○ |
| C-25 | Feishu連携テスト | E-10 /feishu endpoint | △ |
| C-26 | イベント購読とリアルタイム更新テスト | E-01 Bus.subscribeAll, streamSSE | ○ |
| C-27 | グローバルイベント配信テスト | E-07 GlobalBus.emit | ○ |
| C-28 | インスタンス初期化とディスポーズテスト | E-01 Instance.provide, Instance.dispose | ○ |
| C-29 | グローバルディスポーズテスト | E-07 Instance.disposeAll | ○ |
| C-30 | セッション内コマンド実行テスト | E-02 SessionPrompt.command | ○ |
| C-31 | セッション内シェルコマンド実行テスト | E-02 SessionPrompt.shell | ○ |
| C-32 | パーミッションリクエスト応答テスト | E-02 PermissionNext.reply | ○ |
| C-33 | VCS情報取得テスト | E-01 Vcs.branch | ○ |
| C-34 | エージェント一覧取得テスト | E-01 Agent.list | ○ |
| C-35 | スキル一覧取得テスト | E-01 Skill.all | ○ |
| C-36 | LSPステータス取得テスト | E-01 LSP.status | ○ |
| C-37 | フォーマッターステータス取得テスト | E-01 Format.status | ○ |
| C-38 | サーバーヘルスチェックテスト | E-07 /global/health | ○ |
| C-39 | プロジェクト情報永続化テスト | E-08, E-12 ProjectTable | ○ |
| C-40 | WebSocket同期接続テスト | E-10 SyncServer.fetch | ○ |

## 4) 不足情報（Unknown / Missing）
- **IT-015 シンボル検索(LSP連携)**：現在の実装（file.ts 108-115行目）ではLSP.workspaceSymbolの呼び出しがコメントアウトされており、空配列を返却している。実際のLSP連携テストには追加実装が必要。
  - 候補：LSP.workspaceSymbol実装の完了 / LSPサーバー接続のモック化 / 機能の正式リリース待ち
- **IT-025 Feishu連携**：Feishu/Discord連携は環境変数（FEISHU_APP_ID, FEISHU_APP_SECRET, DISCORD_SUPPORT_CHANNEL_ID, DISCORD_SUPPORT_BOT_TOKEN）に依存し、外部サービスとの連携が必要。
  - 候補：テスト環境用のモックサービス構築 / E2Eテスト環境の構築 / マニュアルテスト

## 5) リスクフラグ（レビュー観点）
- **0: 低リスク** - ファイル操作系テスト（IT-013, IT-014）：ローカルファイルシステムのみ使用
- **0: 低リスク** - 設定管理系テスト（IT-016, IT-017）：設定ファイルの読み書きのみ
- **1: 中リスク** - セッション管理系テスト（IT-001〜IT-007）：DB操作とAIプロバイダー連携を含む
- **1: 中リスク** - MCP連携系テスト（IT-010〜IT-012）：外部MCPサーバーとの接続が必要
- **2: 高リスク** - 外部サービス連携テスト（IT-022〜IT-025）：外部API依存が高く、ネットワーク環境とAPI認証が必要
- **2: 高リスク** - OAuth認証テスト（IT-009, IT-011）：認証フローの完全な検証には実際のOAuthプロバイダーが必要

## 6) レビュアーチェックリスト（最小）
- [ ] IT-001〜IT-007のセッション管理テストで、DB操作の正確性を確認
- [ ] IT-008, IT-009のプロバイダー認証テストで、認証状態の永続化を確認
- [ ] IT-010〜IT-012のMCPテストで、接続・切断の状態遷移を確認
- [ ] IT-015のLSP連携テストが現在の実装状態と整合していることを確認
- [ ] IT-019〜IT-021のDBテストで、カスケード削除の動作を確認
- [ ] IT-022〜IT-025の外部サービス連携テストで、テスト環境の準備が必要かを判断
- [ ] IT-026, IT-027のイベントシステムテストで、SSE接続のタイムアウト処理を確認
- [ ] 全テストケースの優先度が適切に設定されているか確認
