• Release v1.10.0 — Platform-neutral batch rendering
    Deploy Telegram Bot / build-and-push (push) Successful in 7m24s
    Deploy Telegram Bot / deploy (push) Successful in 12s
    Stable

    Toutsu released this 2026-05-06 12:32:47 +03:00 | 332 commits to main since this release

    🏗 1.10.0 — Platform-neutral рендеринг расписаний

    Этот minor-релиз — архитектурный рефакторинг: рендеринг расписаний из Shared вынесен в platform-specific adapters, готовя кодовую базу к Discord MVP.

    Решённые issues

    • #22 — вынести platform-agnostic рендеринг из SessionBatchRenderer

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

    • SessionBatchViewModel + SessionBatchViewBuilder в GmRelay.Shared.Rendering — platform-neutral view model без зависимости от Telegram.Bot
    • TelegramSessionBatchRenderer в GmRelay.Bot и GmRelay.Web — рендерит HTML + InlineKeyboardMarkup из view model
    • DiscordSessionBatchRenderer — заглушка в Shared для будущего Discord MVP (#26)
    • Telegram.Bot пакет полностью убран из GmRelay.Shared.csproj
    • BatchMessageEditor перенесён из Shared в Bot и Web (с комментарием // NOTE: duplicated для последующего refactoring)
    • Все вызовы обновлены: 7 handler-ов в Bot + 3 места в Web SessionService
    • Старый SessionBatchRenderer и его тесты удалены
    • Новые тесты: SessionBatchViewBuilderTests и TelegramSessionBatchRendererTests с parity-проверкой
    • ADR-002 добавлен: Platform-neutral batch rendering decision record
    • Wiki обновлена: раздел «Архитектура» отражает новый rendering pipeline

    🛡 Что это даёт

    • Shared-слой больше не зависит от Telegram-типов — шаг к мультиплатформенности
    • Чистая архитектура: сборка данных (view model) отделена от их отрисовки (renderer)
    • Легче добавить Discord-рендерер: достаточно реализовать интерфейс renderer'а
    • Нет breaking changes для API Telegram-бота и Web Dashboard

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

    • версия проекта обновлена до 1.10.0 в Directory.Build.props, compose.yaml, README, Web UI badge и Gitea Actions workflow
    • Docker-образы и deploy-конфигурация используют тег 1.10.0
    • локально пройдены dotnet test tests/GmRelay.Bot.Tests/GmRelay.Bot.Tests.csproj95 passed, 0 failed
    • локально пройден dotnet build GM-Relay.slnx -c Release0 warnings, 0 errors
    • Gitea Actions run #123 успешно собрал, опубликовал и задеплоил bot/web образы
    Downloads