---
generated_at: 2026-02-18 11:15:00
metrics:
  claims_total: 40
  claims_with_evidence: 39
  claims_without_evidence: 1
confidence_derived: 0.98
---

# 根拠レポート：20-公開ERD画面

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.98**
  - 根拠あり：39 / 40、根拠なし：1
- 優先レビュー（高）
  1. **ELKアルゴリズムの詳細**：erd-coreパッケージ内の実装

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

- E-01: `frontend/apps/app/app/erd/p/[...slug]/page.tsx`
- E-02: `frontend/apps/app/app/erd/p/[...slug]/erdViewer.tsx`
- E-03: `frontend/apps/app/app/erd/p/[...slug]/utils/githubUrlHandler.ts`
- E-04: `docs/code-to-docs/画面一覧/画面一覧.csv`
- E-05: `docs/code-to-docs/画面機能マッピング/画面機能マッピング.csv`

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | URLパターンは`/erd/p/[...slug]` | E-01 | ○ |
| C-02 | paramsSchemaでslug（配列）をバリデーション | E-01 行22-24 | ○ |
| C-03 | searchParamsSchemaでformatをバリデーション | E-01 行25-27 | ○ |
| C-04 | resolveContentUrlでGitHub URLをraw URLに変換 | E-01 行29-43 | ○ |
| C-05 | /blob/を含むURLを/rawに変換 | E-01 行33-36 | ○ |
| C-06 | handleGitHubFolderUrlでフォルダ処理 | E-01 行46-72 | ○ |
| C-07 | handleSingleFileUrlで単一ファイル処理 | E-01 行75-124 | ○ |
| C-08 | ネットワークエラー時のエラーオブジェクト生成 | E-01 行95-116 | ○ |
| C-09 | determineSchemaFormatでフォーマット決定 | E-01 行127-156 | ○ |
| C-10 | クエリパラメータformatを優先 | E-01 行135-137 | ○ |
| C-11 | detectFormatで自動検出 | E-01 行148-151 | ○ |
| C-12 | renderErrorViewでエラー表示 | E-01 行159-183 | ○ |
| C-13 | blankSchemaは空オブジェクト | E-01 行164 | ○ |
| C-14 | generateMetadataでOGメタデータ生成 | E-01 行185-222 | ○ |
| C-15 | cheerioでHTMLからog:titleを抽出 | E-01 行200-203 | ○ |
| C-16 | メタタイトルは"{プロジェクト名} - Liam ERD" | E-01 行208 | ○ |
| C-17 | joinedPathでslugを結合 | E-01 行231 | ○ |
| C-18 | urlはhttps:// + joinedPath | E-01 行232 | ○ |
| C-19 | isGitHubFolderUrlで/tree/判定 | E-01 行237, E-03 行38-44 | ○ |
| C-20 | setPrismWasmUrlでWASMパス設定 | E-01 行246 | ○ |
| C-21 | parse関数でスキーマパース | E-01 行268 | ○ |
| C-22 | エラーをSentryに報告 | E-01 行270-272 | ○ |
| C-23 | Cookieからサイドバー状態取得 | E-01 行279-280 | ○ |
| C-24 | Cookieからパネルレイアウト取得 | E-01 行281-293 | ○ |
| C-25 | デフォルトパネルサイズは[20, 80] | E-01 行283, 292 | ○ |
| C-26 | ERDViewerをレンダリング | E-01 行295-302 | ○ |
| C-27 | ERDViewerはクライアントコンポーネント | E-02 行1 | ○ |
| C-28 | VersionProviderでバージョン情報提供 | E-02 行46 | ○ |
| C-29 | ErdRendererProviderでスキーマ提供 | E-02 行47 | ○ |
| C-30 | ERDRendererでER図表示 | E-02 行48-53 | ○ |
| C-31 | CookieConsentをiframe外で表示 | E-02 行29-33, 56 | ○ |
| C-32 | SECURITY_LIMITS定義 | E-03 行11-18 | ○ |
| C-33 | 最大深度5 | E-03 行12 | ○ |
| C-34 | 最大ファイル数100 | E-03 行14 | ○ |
| C-35 | isSchemaFileでスキーマファイル判定 | E-03 行46-110 | ○ |
| C-36 | parseGitHubFolderUrlでURL解析 | E-03 行112-188 | ○ |
| C-37 | collectSchemaFilesFromFolderで再帰的ファイル収集 | E-03 行309-339 | ○ |
| C-38 | fetchSchemaFromGitHubFolderでフォルダからスキーマ取得 | E-03 行385-424 | ○ |
| C-39 | 関連機能No.1 ER図表示 | E-05 | ○ |
| C-40 | ELKアルゴリズムによる自動配置 | **根拠なし（erd-core内部実装）** | △ |

## 4) 不足情報（Unknown / Missing）
- ELKアルゴリズムの具体的な実装詳細
  - 候補：`frontend/packages/erd-core/`内のレイアウト関連ファイル
- ERDRendererコンポーネントの詳細な動作仕様
  - 候補：`frontend/packages/erd-core/src/components/ERDRenderer/`

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - URL処理とスキーマパースは十分に検証済み
- 0: 低リスク - セキュリティ制限も明確に定義されている

## 6) レビュアーチェックリスト（最小）
- [ ] GitHubフォルダURLの処理が正しく動作するか確認
- [ ] GitHubファイルURLのraw変換が正しいか確認
- [ ] フォーマット自動検出が正しく動作するか確認
- [ ] セキュリティ制限が適切に機能するか確認
- [ ] OGメタデータが正しく生成されるか確認
- [ ] エラーメッセージが適切に表示されるか確認
- [ ] Cookieによる状態永続化が正しく動作するか確認
