C2

HP 直接訪問 → 既存 LINE 友だちと自動マージ

✅ 完走可

LINE Login で同一 lineUserId を持つ既存 User と allowDangerousEmailAccountLinking で自動マージ

❌forcommunity アカウント
✅@997qsntl 友だち

フロー詳細 (6 ステップ)

  1. 1

    ブラウザで /c/kotohira を直接訪問

    did-event.vercel.app/c/kotohira を直接アクセス (検索 / 共有リンク等)。

  2. 4

    LINE Login OAuth (forcommunity 全体用 Channel 2008500248)

    未認証 → /auth/signin にリダイレクト → LINE Login → User レコード作成 + User.lineUserId セット (forcommunity Channel スコープ)。

    src/lib/auth.ts
  3. 3

    POST /api/communities/kotohira-digital-townspeople/join

    CommunityMember レコード作成。response.requiresOnboardingForm を判定 (本番琴平は isRequired=true なので true が返る)。

    src/app/api/communities/[id]/join/route.ts
  4. 4

    アンケート画面 /c/kotohira/onboarding/form へ自動遷移

    P7-1 で新設。MigrationCTA は requiresOnboardingForm=true 時に window.location.href で誘導。マイページ訪問時も onboardingCompletedAt 未設定なら同ページに redirect。

    src/app/c/kotohira/onboarding/form/page.tsxsrc/app/c/kotohira/onboarding/form/OnboardingFormClient.tsx
  5. 5

    アンケート 3 質問 (お名前 / 住所 / 生年月日) を入力 → 送信

    POST /api/communities/[id]/form/respond → CommunityFormResponse upsert + member.onboardingCompletedAt = now。

    src/app/api/communities/[id]/form/respond/route.ts
  6. 6

    /c/kotohira/mypage に遷移 (登録完了)

    町民として活動開始。リッチメニューが tier に応じて切替適用される。

    src/app/c/kotohira/mypage/page.tsx

静的解析の自信度: Hi (Hi=確定、Mid=要実機検証、Lo=推測のみ)