Skip to content

v3.4.5

Choose a tag to compare

@3252a8 3252a8 released this 30 May 19:29
· 753 commits to main since this release
1a66d67

Changelog 3.4.43.4.5:

Summary

Что вошло в ветку dev после релиза v3.4.4 (v3.4.4..HEAD, готовится к следующему релизу). Ключевые темы: отслеживание доставки Telegram-уведомлений и приглашение пользователей запустить бота, зеркалирование жизненного цикла подписки через panel webhook с email-дублированием, реферальные бонусы по периодам тарифа, настройки Remnawave panel webhook в админке, блокировка краулеров и заметные улучшения Mini App/Admin UI.

Changelog

  • Добавлено отслеживание статуса Telegram-уведомлений: новые поля статуса/времени проверки в users (миграция 0032), сервис telegram_notifications с состояниями enabled/needs_start/blocked/unknown и баннер в Mini App, предлагающий пользователю запустить бота для получения уведомлений.
  • Добавлено зеркалирование жизненного цикла подписки: новый сервис subscription_lifecycle_notifications дублирует напоминания об истечении/просрочке через panel webhook и параллельно по email; добавлена синхронизация email-уведомлений пользователя (user_email_notifications).
  • Улучшен email-flow продления подписки, расширены email-шаблоны (email_templates), добавлен флаг SUBSCRIPTION_EMAIL_NOTIFICATIONS_ENABLED.
  • Реализованы реферальные бонусы по периодам тарифа: поля referral_bonus_days_inviter / referral_bonus_days_referee в конфиге тарифов с валидацией, расчёт бонусов по периоду и группировка отображения бонусов по тарифам в боте.
  • Вынесены настройки Remnawave panel webhook в Admin → System → Settings и в манифест админ-настроек; уточнены логи panel webhook и подписки, обновлена документация по настройке WEBHOOK_URL (/webhook/panel).
  • Исправлена обработка panel webhook: подписки сохраняются при сбое lookup в панели, устранены deadlock'и в subscription worker, расширено логирование panel_api_service.
  • Добавлена блокировка краулеров и AI-ботов: robots.txt (GPTBot, ClaudeBot, PerplexityBot и др.), заголовки X-Robots-Tag: noindex во всех location nginx, копирование robots.txt в образ frontend.
  • Улучшен Mini App UX: новые UI-контролы (range/color/file input), переработанные scroll-area, обновлённые экраны Devices/Invite/Support/Auth, скрытие сводки трафика для неактивных устройств, показ Telegram-логина без email-авторизации.
  • Улучшена Admin Panel: переработаны карточки пользователей в логах, стандартизированы веб-контролы и редактор тарифов.
  • Исправлены платежи: форматирование лимитов premium-трафика из байтов, доработки YooKassa и shared success/webhooks.
  • Обновлены docs/demo: runtime demo в dev, таблица уведомлений, примеры деплоя и compose.
  • Прочее: заданы дефолтные цены RUB_PRICE_* (200/600/1200/2400), reload locale-overrides по содержимому файла, нормализация line endings фронтенда (.gitattributes).

Notes

  • Изменение схемы БД: миграция 0032_add_telegram_notification_status добавляет 4 столбца в users (включается автоматически).
  • Новые настройки: SUBSCRIPTION_EMAIL_NOTIFICATIONS_ENABLED; в конфиге тарифов — referral_bonus_days_inviter / referral_bonus_days_referee. Дефолты RUB_PRICE_1/3/6/12_MONTH(S) теперь 200/600/1200/2400 (ранее не заданы).
  • Для работы panel webhook нужно задать PANEL_WEBHOOK_SECRET и указать в Remnawave Panel WEBHOOK_URL = WEBHOOK_BASE_URL + /webhook/panel.
  • Dockerfile frontend обновлён: в образ копируется robots.txt.

What's Changed

  • Telegram delivery tracking, subscription lifecycle mirroring and per-tariff referral bonuses by @3252a8 in #12

Full Changelog: v3.4.4...v3.4.5