• v1.6.0 2529df4157

    Release 1.6.0: co-GM и делегирование управления
    Deploy Telegram Bot / build-and-push (push) Successful in 3m51s
    Deploy Telegram Bot / deploy (push) Successful in 11s
    Stable

    Toutsu released this 2026-04-27 14:34:18 +03:00 | 1 commits to main since this release

    🚀 Этап 4 — Расширение командных сценариев

    Этот релиз закрывает первую задачу этапа «Этап 4 — Расширение командных сценариев»: управлять группой теперь может не только один GM, но и назначенные помощники. Модель доступа разделена на owner/co-GM, а сценарии управления расписанием доступны в Telegram и Web Dashboard.

    Закрытые issues

    • #9 — feat: поддержать co-GM и делегирование управления группой: добавлена роль Owner для владельца группы и CoGm для помощников; owner назначает co-GM в Web, а co-GM может управлять сессиями и batch-сценариями.

    🧩 Что вошло в релиз

    • добавлена доменная модель GroupManagerRole с ролями Owner и CoGm;
    • база данных расширена миграцией V008__add_group_managers.sql: появилась таблица group_managers, а существующие gm_telegram_id мигрируют в owner-записи;
    • /newsession теперь создаёт owner при первой регистрации группы и запрещает создание сессий посторонним пользователям в уже известной группе;
    • Telegram-кнопки отмены, удаления, переноса и повышения из листа ожидания проверяют доступ через group_managers, поэтому owner и co-GM получают одинаковые права управления расписанием;
    • /listsessions показывает кнопки удаления для owner/co-GM, а обычные игроки видят только список игр;
    • Web Dashboard показывает роль пользователя на главной странице и блок управления группой на странице группы;
    • owner может добавить co-GM по Telegram ID, имени и username, а также убрать co-GM без удаления игрока из базы;
    • AuthorizedSessionService переведён с проверки одного gm_telegram_id на проверку manager-роли группы;
    • README и wiki обновлены под 1.6.0 и новый сценарий делегирования.

    🛡 Что это даёт

    • кампанией можно управлять совместно: помощник GM может редактировать сессии, переносить игры, удалять устаревшие даты и работать с листом ожидания;
    • owner сохраняет контроль над делегированием и остаётся единственной ролью, которая назначает или снимает co-GM;
    • Telegram и Web используют одну модель доступа, поэтому права не расходятся между интерфейсами;
    • существующие группы обновляются миграцией без ручного вмешательства.

    📦 Версия и деплой

    • версия проекта обновлена до 1.6.0 в Directory.Build.props, compose.yaml, README, Web design system, wiki и Gitea Actions workflow;
    • Docker-образы и deploy-конфигурация используют тег 1.6.0;
    • локально пройдены dotnet test tests/GmRelay.Bot.Tests/GmRelay.Bot.Tests.csproj --collect:"XPlat Code Coverage" и dotnet build GM-Relay.slnx -c Release;
    • Gitea Actions run #43 успешно собрал, опубликовал и задеплоил bot/web образы.
    Downloads