first commit

This commit is contained in:
2026-02-22 19:30:40 +03:00
commit 5b682894ba
6 changed files with 448 additions and 0 deletions

80
05-data-model-notes.md Normal file
View File

@@ -0,0 +1,80 @@
# Data Model Notes
Это краткая карта ключевых сущностей. Полный состав — в `internal/domain/*`.
## Пользователь и менеджер
1. `users` (`domain.User`)
Базовый профиль пользователя, язык, ник, игровые поля.
2. `manager_accounts` (`domain.ManagerAccount`)
Связка user <-> manager, enabled, глобальный `account_type`.
3. `manager_user_settings` (`domain.ManagerUserSetting`)
Персональные настройки для miniapp.
## Группы и callback
1. `manager_groups` (`domain.ManagerGroup`)
Привязанные VK группы.
2. `manager_group_tokens` (`domain.ManagerGroupToken`)
Токены групп (зашифрованные).
3. `manager_callback_endpoints` (`domain.ManagerCallbackEndpoint`)
Параметры callback endpoint.
4. `manager_callback_events` (`domain.ManagerCallbackEvent`)
Лог входящих callback событий.
5. `manager_group_settings` (`domain.ManagerGroupSetting`)
Настройки групп в key/value.
## Чаты и чат-менеджер
1. `chats` (`domain.Chat`)
Чаты, `peer_id`, `chat_uid`.
2. `chat_settings` (`domain.ChatSetting`)
Основные настройки чата.
3. `chat_members`, `member_roles`, `roles`
Участники и RBAC.
4. `permission_roles`, `permission_users`
Права команд.
5. `sanctions`, `immunities`
Бан/мут/пред/иммунитеты.
6. `event_rules`, `prevent_rules`, `timer_tasks`
Автоматизация.
7. `audit_actions`, `command_logs`
Журналы действий и команд.
8. `statistics_message_daily`
Агрегированная статистика.
## Аддоны
1. `chat_addons` (`domain.ChatAddon`)
Установленные в чат аддоны.
2. `chat_addon_db` / `chat_addon_shared_db`
KV-хранилища для аддонов (локальное/shared).
3. `chat_addon_invoke_logs`
Логи вызовов аддонов.
## Каталог аддонов
1. `manager_addon_catalog` (`domain.ManagerAddonCatalog`)
Карточка аддона каталога (метаданные, код, статус модерации).
2. `manager_addon_catalog_versions` (`domain.ManagerAddonCatalogVersion`)
Снимки версий.
3. `manager_addon_moderation_logs` (`domain.ManagerAddonModerationLog`)
Логи переходов статуса.
4. `chat_addon_catalog_installs` (`domain.ChatAddonCatalogInstall`)
Фиксация установок в чаты.
## Account type (глобальный уровень)
`manager_accounts.account_type`:
1. `10` regular
2. `20` enhanced
3. `30` maximum
4. `40` moderator
5. `50` administrator
6. `60` developer
Применение:
1. доступ к модерации каталога;
2. staff-уведомления по аддонам (уровень `> 30`).