• v3.9.4 593f8a62fb

    Release v3.9.4 — test cleanup из ревью #124
    Deploy Telegram Bot / build-and-push (push) Successful in 6m15s
    Deploy Telegram Bot / scan-images (push) Successful in 2m20s
    Deploy Telegram Bot / deploy (push) Successful in 46s
    Stable

    Toutsu released this 2026-06-08 19:40:20 +03:00 | 32 commits to main since this release

    🧪 Patch 3.9.4 — test cleanup из ревью PR #124

    Test-only follow-up: устранены два не-блокирующих замечания из code-review PR #124. Production-код не меняется.

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

    • tests/GmRelay.Bot.Tests/Discord/Wizard/DiscordWizardStepCapacityRenderTests.csRenderCapacity_NoLimitButton_HasChoiceCustomIdForNoLimit рефакторен в [Theory] с двумя InlineData для Capacity и PoolSlotCapacity. Теперь регрессия в wire-format любого из двух steps даст targeted failure вместо того, чтобы тест молча проходил только для Capacity.
    • tests/GmRelay.Bot.Tests/Web/CampaignTemplatesNavigationTests.csNavMenu_ShouldExposeCurrentProjectVersion парсит <Version> из Directory.Build.props через XDocument вместо хардкода "v3.9.3". На каждом bump тест больше не нужно править руками.
    • Синхронизированы версии: Directory.Build.props, compose.yaml (bot + discord + web), .gitea/workflows/deploy.yml, NavMenu.razor3.9.4.

    🗡 Что это даёт

    • CI-устойчивость: на каждом bump версии больше не нужно вручную синхронизировать тест — NavMenu_ShouldExposeCurrentProjectVersion автоматически читает актуальную версию из props. Sanity check: после bump до 3.9.4 тест прошёл без изменений.
    • Symmetric coverage: регрессия в ChoiceButtonCustomId для PoolSlotCapacity теперь даст ошибку, а не пройдёт тихо.
    • Никакого риска для пользователей — production-код и поведение ботов не изменились. Изменения только в тестах.

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

    • версия обновлена до 3.9.4
    • Docker-образы используют тег 3.9.4: git.codeanddice.ru/toutsu/gmrelay-bot:3.9.4, git.codeanddice.ru/toutsu/gmrelay-discord-bot:3.9.4, git.codeanddice.ru/toutsu/gmrelay-web:3.9.4
    • Gitea Actions run #304 (PR checks) — success
    • Gitea Actions run #305 (deploy) — success
      • build-and-push: 3/3 образа собраны и запушены
      • scan-images: 3/3 образа просканированы (Trivy, без HIGH/CRITICAL)
      • deploy: .env создан, контейнеры развёрнуты

    🔗 Ссылки

    Downloads