---
generated_at: 2026-02-18 10:30:00
metrics:
  claims_total: 35
  claims_with_evidence: 34
  claims_without_evidence: 1
confidence_derived: 0.97
---

# 根拠レポート：データベース設計書

## 本レポートについて

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

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

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

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

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

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.97**
  - 根拠あり：34 / 35、根拠なし：1
- 優先レビュー（高）
  1. **workflow_run_status ENUM**: 現在のスキーマでの使用箇所が不明確

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

- E-01: `frontend/internal-packages/db/supabase/migrations/20250416105745_initial_squash.sql` - 初期スキーマ定義
- E-02: `frontend/internal-packages/db/supabase/database.types.ts` - TypeScript型定義（現在のスキーマ状態）
- E-03: `frontend/internal-packages/db/supabase/migrations/20250515100643_add_new_chat_workspace_tables.sql` - design_sessions, building_schemas, messages テーブル定義
- E-04: `frontend/internal-packages/db/supabase/migrations/20250520100200_add_schemas_tables.sql` - building_schema_versions テーブル定義
- E-05: `frontend/internal-packages/db/supabase/migrations/20250806082517_add_checkpoint_tables.sql` - checkpoint関連テーブル定義
- E-06: `frontend/internal-packages/db/supabase/migrations/20250814082520_create_public_share_realtime.sql` - public_share_settings テーブル定義
- E-07: `frontend/internal-packages/db/supabase/migrations/20250422034040_modify_github_repositories.sql` - github_repositories カラム変更
- E-08: `frontend/internal-packages/db/supabase/migrations/20250423123348_invite_organization_member.sql` - 招待関連関数定義
- E-09: `frontend/internal-packages/db/supabase/migrations/20250428034646_prevent_delete_last_organization_member.sql` - 削除防止トリガー

## 3) Claims と根拠の対応（レビューの主戦場）
| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | usersテーブルの定義（id, name, email, avatar_url） | E-01, E-02 | ○ |
| C-02 | organizationsテーブルの定義（id, name） | E-01, E-02 | ○ |
| C-03 | organization_membersテーブルの定義と制約 | E-01, E-02, E-09 | ○ |
| C-04 | invitationsテーブルの定義（token, expired_at含む） | E-01, E-02, E-08 | ○ |
| C-05 | projectsテーブルの定義とorganization_id外部キー | E-01, E-02 | ○ |
| C-06 | github_repositoriesテーブルの定義（github_installation_identifier等） | E-01, E-02, E-07 | ○ |
| C-07 | project_repository_mappingsテーブルの定義 | E-01, E-02 | ○ |
| C-08 | schema_file_pathsテーブルの定義とformat ENUM | E-02 | ○ |
| C-09 | design_sessionsテーブルの定義（親セッション自己参照含む） | E-02, E-03 | ○ |
| C-10 | building_schemasテーブルの定義（jsonb schemaカラム） | E-02, E-03 | ○ |
| C-11 | building_schema_versionsテーブルの定義（patch, reverse_patch） | E-02, E-04 | ○ |
| C-12 | public_share_settingsテーブルの定義とRLS設定 | E-02, E-06 | ○ |
| C-13 | checkpointsテーブルの定義（メタデータ管理） | E-02, E-05 | ○ |
| C-14 | checkpoint_blobsテーブルの定義（チャネル値管理） | E-02, E-05 | ○ |
| C-15 | checkpoint_writesテーブルの定義（未コミット操作管理） | E-02, E-05 | ○ |
| C-16 | schema_format_enum値: schemarb, postgres, prisma, tbls | E-01, E-02 | ○ |
| C-17 | assistant_role_enum値: db, pm, qa | E-02 | ○ |
| C-18 | workflow_run_status値: pending, success, error | E-02 | △ |
| C-19 | usersテーブルへのauth.users同期トリガー（on_auth_user_created） | E-01 | ○ |
| C-20 | 全テーブルでのRLS有効化 | E-01, E-03, E-05, E-06 | ○ |
| C-21 | organization_membersベースのRLSポリシー実装 | E-01, E-03, E-05 | ○ |
| C-22 | service_roleによる全テーブルアクセス許可 | E-01, E-03, E-05 | ○ |
| C-23 | invite_organization_member関数の存在 | E-08 | ○ |
| C-24 | accept_invitation関数の存在 | E-02 | ○ |
| C-25 | put_checkpoint関数の存在 | E-02 | ○ |
| C-26 | update_building_schema関数の存在 | E-02 | ○ |
| C-27 | organization_members削除防止トリガー | E-09 | ○ |
| C-28 | checkpoints更新時のupdated_at自動更新トリガー | E-05 | ○ |
| C-29 | 外部キー制約によるカスケード削除設定 | E-01, E-03, E-05 | ○ |
| C-30 | 一意制約によるデータ重複防止 | E-01, E-02 | ○ |
| C-31 | building_schemasとdesign_sessionsの1:1関係 | E-02, E-03 | ○ |
| C-32 | public_share_settingsによる匿名ユーザー読み取り許可 | E-06 | ○ |
| C-33 | インデックスによるクエリ最適化 | E-01, E-04, E-05 | ○ |
| C-34 | JSONBカラムによる柔軟なスキーマ設計 | E-03, E-05 | ○ |
| C-35 | マルチテナントデータ分離（organization_idベース） | E-01, E-03, E-05, E-07 | ○ |

## 4) 不足情報（Unknown / Missing）
- workflow_run_status ENUMは型定義に存在するが、現在アクティブなテーブルでの使用箇所が確認できない
  - 候補：過去に削除されたworkflow_runsテーブル / 将来の機能のための予約 / 別のマイグレーションでの使用

## 5) リスクフラグ（レビュー観点）
- 0: 低リスク - テーブル定義とカラム情報は全てソースコードから直接取得
- 0: 低リスク - 外部キー制約とRLSポリシーはマイグレーションファイルで確認
- 1: 中リスク - ENUMの使用状況について一部未確認（workflow_run_status）

## 6) レビュアーチェックリスト（最小）
- [ ] database.types.tsの最新状態との整合性を確認
- [ ] workflow_run_status ENUMの使用箇所を確認（削除済みか将来用か）
- [ ] 削除されたテーブル（messages, timeline_items, artifacts等）が設計書から除外されていることを確認
- [ ] RLSポリシーの記述が本番環境の設定と一致するか確認
- [ ] 本番環境のSupabaseダッシュボードでテーブル一覧と照合
