Архитектурные уровни
Полные определения — в docs/frontend/DOMAIN_MODEL.md. Эта страница — практическая, роутинг-версия: по URL или строке права понять, к какому уровню это относится.
User
├── Platform
└── Organization (Workspace)
└── ApplicationUser стоит над Platform и Organization, а не внутри них. Ты аутентифицируешься один раз как себя, а дальше попадаешь в организацию, членом которой являешься, или — если у тебя есть платформенная роль — в администрирование платформы. Оба пути доступны с нейтрального /dashboard после входа.
| Уровень | Отвечает на вопрос | Роуты | Префикс прав | Роли |
|---|---|---|---|---|
| User | «Кто я, где я хочу работать?» | /dashboard, /account/* | — | — |
| Organization | «Что я могу делать в этой организации?» | /org/:slug/* | portal:*, org:* | OWNER/ADMIN/MEMBER/VIEWER (системные) + кастомные роли, per-org |
| Platform | «Чем я могу управлять во всей системе?» | /platform/* | platform:* | SUPER_ADMIN, P4P Owner, P4P Admin, P4P Member (см. IAM) |
| Application | Независимые продукты, работающие внутри организации | /org/:slug/<app>/* | ограничено приложением | наследует членство в организации |
В чём старые дизайн-доки ошибаются
docs/frontend/INFORMATION_ARCHITECTURE.md описывает «Projects»/«CRM» и т.п. как обычные Application, на которые могла бы подписаться любая организация. Но построено не так. То, что реально существует под /team/* и /platform/staff — это Internal Company Workspace, собственный инструмент P4P для управления штатом, отделами, проектами и задачами. Он закрыт правами platform:staffing:* и PlatformStaffMembership (нужно быть активным членом внутренней команды P4P, чтобы это увидеть) — это фича уровня Platform, а не Application уровня Organization. См. Администрирование платформы и будущий документ модуля Staffing.
По-настоящему Organization-уровневые, подписываемые-по-организациям функции, которые существуют сегодня — это AI Assistant (org:chat:use, org:agents:manage, org:mcp:manage) и файловое хранилище (org:files:*) — обе живут под /org/:slug/* и закрыты по организациям, как и задумывался уровень Application изначально.
Почему это важно при чтении остальной вики
Фронтматтер каждого документа модуля перечисляет routes и permissions. Если роут начинается с /platform/ или право с platform: — это поведение уровня Platform, применяется один раз, для всей платформы. Если начинается с /org/:slug/ или portal:/org: — это уровень Organization: та же страница ведёт себя по-разному (или вообще не видна) в зависимости от того, в какой организации ты находишься сейчас.