Files
cm-over/05-data-model-notes.md
2026-02-22 19:30:40 +03:00

3.0 KiB

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).