> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# Организации и приглашения

Поставьте демонстрационный цикл организации: создание, переключение, приглашение, роли, выход и удаление из danger-зоны.

## Настройка и конфигурация

Перед любым действием прочтите [Перед началом работы](https://supastack.dev/ru/docs/web/before-you-start.md) и [Основные сведения о терминале](https://supastack.dev/ru/docs/web/terminal-basics.md). В этих инструкциях предполагается, что вы открыли полный монорепозиторий supastack в VS Code; его корень package.json отмечает корень репозитория. В командах pnpm пакет рабочей области представляет собой папку приложения или общего кода; В продукте рабочее пространство — это контейнер данных и граница безопасности команды. corepack pnpm --filter ... выбирает один пакет из монорепозитория, пока команды выполняются из его корня. Если вы открыли только синхронизированную папку мобильного устройства или рабочего стола, она не содержит веб-серверной части, настройки Docker или корневых сценариев: запустите серверную часть из этого монорепозитория или доступного размещенного сервера и используйте собственные сценарии папки платформы. Переменная среды — это именованный параметр, хранящийся в локальном файле .env или на панели управления хостингом; перезапустите соответствующее приложение после его изменения и не допускайте попадания секретов сервера в значения NEXT_PUBLIC_ и EXPO_PUBLIC_.

1. Запустите веб-приложение из корня репозитория с помощью corepack pnpm --filter @supastack/web dev и создайте тестовую учетную запись.

2. Откройте экран настройки организации, создайте тестовое рабочее пространство, затем пригласите второе тестовое электронное письмо в меню «Настройки» → «Участники». Рабочая область — это граница команды, которой принадлежат участники и записи.

3. Примите приглашение, войдя в систему с тем же адресом электронной почты. Ожидается: вторая учетная запись может войти в приглашенную рабочую область с назначенной ей ролью, но не может управлять действиями только владельца.

Воркспейсы организаций отличны от личных воркспейсов в packages/db. После регистрации шлюзы онбординга (/onboarding, /new-organization, /select-organization, /choose-plan) направляют пользователя в активную организацию до продуктового биллинга и настроек.

Приглашения создают ожидающую строку workspace_invitation и отправляют транзакционное письмо с URL принятия /invite/[token]. Принятие требует совпадающего вошедшего e-mail. Список участников, обновления ролей и выход живут в /settings/members; переименование/удаление и выход также появляются на /organization/settings.

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

Server actions
  createOrganizationAction
  createWorkspaceInviteAction
  acceptWorkspaceInviteAction
  updateMemberRoleAction
  leaveOrganizationAction
  renameOrganizationAction
  deleteOrganizationAction
```


## Команды для копирования

Следуйте комментариям, чтобы узнать, в какой папке запускается команда. Если помечены два терминала, откройте два окна терминала и продолжайте выполнять первую команду, пока используете вторую.

```
corepack pnpm --filter @supastack/web dev
```


## Рабочий процесс внедрения

Разрешайте активный воркспейс из cookie → предпочтение пользователя → членство, затем проверяйте членство при каждой записи. Владельцы и админы управляют приглашениями/ролями; единственные владельцы не могут выйти или понизить себя.

Предпочитайте evaluateLeaveOrganization и evaluateMemberRoleUpdate из @supastack/db до мутации членств. Отправляйте in-app-уведомления member.left / member.role_changed после успешных мутаций, когда включён inAppProduct.

Администрирование платформы — это отдельная граница поставки: только администраторы платформы могут управлять пользователями, банами и выдачей себя за другое лицо. Роль владельца/администратора рабочей области не предоставляет доступ к платформе. Документированные роли организации — владелец, администратор и участник.


## Проверка и устранение неполадок

Если в ссылке для приглашения указано, что адрес электронной почты не совпадает, войдите в систему, используя точный адрес, на который оно было получено. Если электронное письмо с приглашением отсутствует, проверьте результат локального электронного письма перед повторной отправкой. Если участник не видит организацию, переключитесь на правильное рабочее пространство и подтвердите членство; никогда не исправляйте это, передавая другой workspaceId из браузера.

Фокусный Vitest: помощники выхода/ролей воркспейса, принятие приглашений, шлюзы онбординга организаций. Вручную: создайте организацию → пригласите → примите на втором аккаунте → обновите роль → выйдите как не-владелец → удалите как владелец с типизированным подтверждением.


## Вперёд

[Поток онбординга](https://supastack.dev/ru/docs/web/onboarding.md)
