docs: update architecture to 2026 self-hosted auth paradigm, dropping Supabase auth migration

This commit is contained in:
posimai 2026-03-29 21:51:20 +09:00
parent cc8c1cc01d
commit 19379f0cdc
1 changed files with 18 additions and 21 deletions

View File

@ -1,6 +1,6 @@
# Posimai Project — マスターアーキテクチャドキュメント
最終更新: 2026-03-28
最終更新: 2026-03-29
対象: Claude Code / Cursor / Antigravity / Gemini / 全 AI エージェント
**このドキュメントはプロジェクトの現状を一元管理します。実装の前に必ず読んでください。**
@ -59,7 +59,7 @@
║ PostgreSQL 16 ║
║ articles / journal_posts / users ║
║ site_config / reading_history ║
║ ※ auth テーブルは Supabase Auth 採用確定につき将来削除
║ ※ users/magic_link_tokens 等で VPS 自前認証を完全ホスト
╚══════════════════════════════════════════════════════════╝
╔══════════════════════════════════════════════════════════╗
@ -77,11 +77,10 @@
╔══════════════════════════════════════════════════════════╗
║ 外部サービス ║
║ ║
║ 【認証・確定】Supabase Auth ║
║ Magic Linkメール+ Passkey指紋・顔
║ → Resend をカスタム SMTP として設定 ║
║ → 各アプリは Supabase JWT で認証 ║
║ → VPS は JWT を検証するだけ(認証ロジックは Supabase
║ 【認証】VPS 自前システム (Magic Link + WebAuthn) ║
║ → Supabase Auth 構築を中止し、完全セルフホスト化 ║
║ → 各アプリは VPS JWT で全APIと通信 ║
║ → Magic Link メール送信のみ Resend (noreply) を利用 ║
║ ║
║ 【稼働中】Supabase DB ║
║ togetherリアルタイム同期・稼働中
@ -129,30 +128,27 @@
| posimai-maps | maps.vercel.app | 静的 | — | マップ |
| posimai-hotels | hotels.vercel.app | 静的 | — | ホテル価格 |
| posimai-tech-events | tech-events.vercel.app | 静的 | RSS | IT イベント |
| posimai-atlas | atlas.vercel.app | 静的 | VPS API | インフラ構成図・監視 |
| posimai-ui | ui.vercel.app | 静的 | — | 共有デザインシステム |
---
## 3. 認証フロー(確定・未実装
## 3. 認証フロー(確定)
```
現行(稼働中:
フロント → X-API-Key: pk_maita_xxx → VPS が検証
?init_key= URL → localStorage に保存
方針(本番としてそのまま進化させる:
フロント → API Key or JWT (Magic Link) → VPS が検証
?init_key= URL → localStorage に保存・JWT 保有
3ユーザーmaita / partner / musumeのみ対応
メール送信: Resend API (noreply@soar-enrich.com)
※ Supabase Auth への移行計画は中止(完全自己ホスト化)
移行先(確定・実装待ち):
フロント → Supabase Auth → Magic Link or Passkey
→ Supabase JWT 発行
→ VPS が JWT を検証
メール送信: Resendnoreply@soar-enrich.com
課題: Passkey は登録ドメイン固有
→ *.posimai.soar-enrich.com ワイルドカード DNS が必要
課題: WebAuthn (Passkey) には共通の rpID が必要
→ *.posimai.soar-enrich.com ワイルドカード DNS が必須
→ Eiji への依頼待ち
```
**実装完了まで `X-API-Key`・`?init_key=`・localStorage 認証ロジックは変更禁止。**
**自前認証化のため `X-API-Key`・`?init_key=`・localStorage ロジックは維持される。**
---
@ -162,7 +158,7 @@
|--------|--------|------|
| VPS PostgreSQL | brain・journal・site・reading_history | 稼働中 |
| Supabase DB | together | 稼働中 |
| Supabase DB | habit・pulse | 将来移行予定商用化フェーズ3 |
| localStorage + VPS バックグラウンド同期 | habit・pulse | ローカルファースト(同期のみ |
| localStorage永続・移行しない | veil 設定・timer 設定 | 確定 |
| データなし(都度処理) | diff・clean・lens・digest・think・timer 本体 | — |
@ -203,6 +199,7 @@ npm run deploy # = git push gitea main && git push github main
| 2026-03-26 | API URL を `posimai.soar-enrich.com``api.soar-enrich.com` に分離完了 |
| 2026-03-27 | 認証方式を Supabase AuthMagic Link + Passkeyに確定 |
| 2026-03-28 | 現行 auth テーブルmagic_link_tokens 等)は将来削除予定・今は放置 |
| 2026-03-29 | ベンダーロックイン回避のため Supabase 完全移行を中止。VPS 独自認証Magic Link+Passkeyを正規方針として続行 |
| 保留中 | *.posimai.soar-enrich.com ワイルドカード DNSEiji 依頼待ち) |
| 保留中 | VPS に VOICEVOX コンテナ追加Eiji 作業中) |