コンテンツへスキップ
supastack
ドキュメントを閲覧
WebTanStack Start

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /ja/docs/web/organizations.md (or send Accept: text/markdown).

組織と招待

デモ組織サイクルを提供:作成、切り替え、招待、ロール、退出、危険ゾーン削除。

このガイドについて質問
開くアプリ

インストールとセットアップ

手順の前に、始める前に と ターミナルの基本 をお読みください。これらの手順では、VS Code で完全な supastack モノリポジトリを開いたことが前提となっています。そのルート package.json はリポジトリのルートをマークします。 pnpm コマンドでは、ワークスペース パッケージはアプリまたは共有コード フォルダーです。この製品では、ワークスペースはチームのデータ コンテナであり、セキュリティ境界です。 corepack pnpm --filter ... コマンドがルートから実行されている間にモノリポジトリから 1 つのパッケージを選択します。同期されたモバイル フォルダーまたはデスクトップ フォルダーのみを開いた場合、そのフォルダーには Web バックエンド、Docker セットアップ、またはルート スクリプトが含まれていません。このモノリポジトリまたはアクセス可能なホスト サーバーからバックエンドを実行し、プラットフォーム フォルダー独自のスクリプトを使用します。環境変数は、ローカルの .env ファイルまたはホスティング ダッシュボードに保存される名前付き設定です。変更後に関連するアプリを再起動し、NEXT_PUBLIC_ および EXPO_PUBLIC_ 値にサーバー シークレットが含まれないようにします。

1. corepack pnpm --filter @supastack/web dev を使用してリポジトリ ルートから Web アプリを起動し、テスト アカウントを作成します。

2. 組織の設定画面を開き、テスト ワークスペースを作成し、[設定] → [メンバー] から 2 番目のテスト電子メールを招待します。ワークスペースは、メンバーとレコードを所有するチームの境界です。

3. 同じ電子メールでサインインした状態で招待を受け入れます。予期: 2 番目のアカウントは、割り当てられたロールで招待されたワークスペースに入ることができますが、所有者のみのアクションを管理することはできません。

組織ワークスペースは packages/db で個人ワークスペースと区別されます。サインアップ後、オンボーディングゲート(/onboarding、/new-organization、/select-organization、/choose-plan)は課金と製品設定の前にユーザーをアクティブな組織へ押し込みます。

招待は保留中の workspace_invitation 行を作成し、/invite/[token] 受け入れ URL 付きのトランザクションメールを送信します。受け入れには一致するセッションメールが必要です。メンバーリスト、ロール、退出は /settings/members にあり、名前変更/削除と退出は /organization/settings にも現れます。

Routes
  /new-organization
  /select-organization
  /invite/[token]
  /settings/members
  /organization/settings

Server actions
  createOrganizationAction
  createWorkspaceInviteAction
  acceptWorkspaceInviteAction
  updateMemberRoleAction
  leaveOrganizationAction
  renameOrganizationAction
  deleteOrganizationAction

コピーするコマンド

コメントに従って、コマンドがどのフォルダーで実行されるかを確認します。 2 つのターミナルにラベルが付いている場合は、2 つのターミナル ウィンドウを開き、2 番目のコマンドを使用している間、最初のコマンドを実行し続けます。

corepack pnpm --filter @supastack/web dev

実装ワークフロー

アクティブなワークスペースを Cookie → ユーザー設定 → メンバーシップから解決し、すべての書き込みでメンバーシップを検証します。オーナーと管理者が招待/ロールを管理します。唯一のオーナーは退出も自己降格もできません。

メンバーシップを変更する前に @supastack/db の evaluateLeaveOrganization と evaluateMemberRoleUpdate を優先してください。inAppProduct が有効なとき、成功した変更後に member.left / member.role_changed のアプリ内通知を発行します。

プラットフォーム管理は個別に出荷される境界です。プラットフォーム管理者のみがユーザー、禁止、偽装を管理できます。ワークスペースの所有者/管理者の役割では、プラットフォームへのアクセスは許可されません。文書化された組織の役割は、所有者、管理者、およびメンバーです。

検証とトラブルシューティング

招待リンクにメールが一致しないと表示されている場合は、メールを受信した正確なアドレスを使用してサインインしてください。招待メールが見つからない場合は、再送信する前にローカルメールの結果を確認してください。メンバーが組織を表示できない場合は、正しいワークスペースに切り替えてメンバーシップを確認してください。ブラウザから別の workspaceId を渡してこれを修正しないでください。

対象 Vitest:ワークスペース退出/ロールヘルパー、招待受け入れ、組織オンボーディングゲート。手動:組織作成 → 招待 → 2 番目のアカウントで受け入れ → ロール変更 → 非オーナーとして退出 → 入力確認でオーナーとして削除。