3.66.0 (2026-07-24)
New Features
- grace: упростить квоту трафика и правила доступности (2e40235)
- nalogo: доставка чека на почту, когда Telegram недоступен (3c047ed)
- platega: CRUD рекуррентных подписок (9cf2aa3)
- platega: WS-события sbp_recurring.* для кабинета (f34431a)
- platega: админка кабинета — статус и отмена СБП-автооплаты (135771e)
- platega: бот-флоу автопродления через СБП (a69d233)
- platega: ветка подписочных коллбеков в /platega-webhook (9d13c4e)
- platega: гейт PLATEGA_RECURRENT_ENABLED (23ba645)
- platega: кабинетные эндпоинты СБП-автопродления (юзер) (19862a2)
- platega: методы подписок в PlategaService (create/get/list/cancel) (27c8fac)
- platega: модель platega_subscriptions + миграция (5c9580a)
- platega: обработчик коллбеков подписки (продление, идемпотентность, статусы) (5a33a9e)
- platega: отмена СБП-автооплаты при удалении/отзыве подписки (2593424)
- platega: отмена СБП-подписки + best-effort хелпер по подписке (4763cbe)
- platega: реконсилятор СБП-подписок в monitoring-цикле (1cf5212)
- platega: СБП-оформление подписки — альтернатива оплате с баланса (43d81c8)
- platega: создание СБП-подписки + выключение balance-autopay (e701cad)
- platega: чистая логика каденса рекуррентных СБП-подписок (8200847)
- remnawave: транслитерация кириллицы в username пользователя (35383c2), closes #1659
- support-ws: bridge core + message.created from ticket.message_added (e54e1e3)
- support-ws: bridge ticket.created and ticket.status_changed mappings (2ff76f3)
- support-ws: emit ticket events from cabinet/mini-app routes for bridge (d65d9fb)
- support-ws: register event bridge at app startup (8d80230)
Bug Fixes
- admin: device_limit = 0 в админке тоже показывать безлимитом (8e1b2cc)
- auto-purchase silently skipped after top-up due to updated_at race guard (ad3e9cf)
- ci: lowercase-референс образа для Trivy-скана (795c7be)
- nalogo: доставлять чек покупателю после ручной пересылки из админки (fa25d70)
- nalogo: дочитывать печатную форму чека до конца (7dcd18e)
- nalogo: чек по подарочной покупке — адресат покупатель, а не одаряемый (3a0a157)
- platega: actionable-ошибка при отказе создания СБП-подписки (0864a95)
- platega: side-effects после СБП-списания + защита от пустого charge Id и пропавшей подписки (ee295c6)
- platega: аудит-фиксы СБП-автопродления — money-safety и полнота отмен (ccc2049)
- platega: гонка конкурентного enable (D5) и outage-vs-404 в reconciler (D4) (8243d39)
- platega: идемпотентность создания СБП-подписки (не плодить дубли и двойные списания) (132ef4e)
- platega: санитайзить description подписки под 64-байтный лимит Platega (f7a6f5b)
- platega: СБП-автопродление доступно для суточных тарифов + гард на триал (9fe42e7)
- platega: синк панели после списания + обратное взаимоисключение + отмена на пропущенных путях удаления (57ad9b7)
- platega: три P2 из ревью релизного PR #3111 (64feac0)
- rich-menu: дать включить rich-меню без логотипа (add7327)
- rich-menu: премиум-эмодзи из текстов меню уходили клиенту сырым тегом (1feab43)
- settings: отображать DEVICES_SELECTION_DISABLED_AMOUNT как число, а не цену (0f1968e), closes #1658
- subscription: device_limit = 0 — это безлимит, а не ноль устройств (51688fc)
- support: дефолты SLA в коде развести с .env.example не в пользу спама (38110e5)
- support: отдавать внешний URL поддержки в конфиге кабинета (b270349)
- support: проверять бан поддержки и режим тикетов в веб-сокете (f3acc69)
- support: синхронизировать persisted-режим поддержки в settings при старте (2184e58)
- tickets: передавать db в новые event_emitter-эмиссии кабинета (8eaef7f)
- tickets: проверять блокировку поддержки и лимит тикетов в кабинете (2887ef7)
- tickets: режим поддержки в кабинете читать у сервиса, а не из settings (bd93d7e)