Skip to content

1.0.0

Choose a tag to compare

@Mrvibecodic Mrvibecodic released this 04 Aug 21:50
· 99 commits to main since this release

Первый нумерованный релиз. Включает всё, что накопилось в dev с последнего обновления main.

💳 Платежи

  • Новая платёжка Heleket (криптовалюта): счёт в ₽, монету и сеть клиент выбирает на странице оплаты; покупка и пополнение кошелька из чата, мини-аппа и веб-кабинета; подпись вебхука и перепроверка каждого платежа по API шлюза; официальный Go SDK.
  • Автопродление ЮKassa: подключается по согласию после успешной оплаты, отключается одной кнопкой везде; списание за N дней до конца (настраивает админ), защита от двойного списания, очередь и повторы при сбоях; 429 от ЮKassa считается временным лимитом, а не отказом карты.
  • P2P «всем без одобрения» (опция) — реквизиты без ручного допуска каждого; e-mail-аккаунты кабинета по-прежнему только вручную.

🚪 Доступ

  • Режимы публичности: публично / по приглашениям / белый список. Приглашения — ссылки t.me/бот?start=inv_КОД со сроком жизни и лимитом активаций, отзыв и удаление. Режим действует и на мини-апп с веб-кабинетом.

🧩 Панель и переезд

  • Поддержка Remnawave 3.x рядом с 2.7.4+: бот сам определяет диалект API (uuid ↔ числовой id через /api/users/stream) и переживает апгрейд панели на лету.
  • Мастер переезда с remnashop (v0.8.0–0.8.2): пользователи, сроки, триалы, рефералы, промокоды, история платежей — по дампу его базы.
  • Совместимость доп-подписки с прослойкой подписок + кнопка «Синхронизировать всех».
  • Поддержка панелей за «Caddy with security» (CADDY_AUTH_API_TOKEN) и экран «Доступ к панели».

🧾 Журнал платежей

  • Ошибки всех способов оплаты пишутся в журнал: создание счёта, вебхуки, подписи, выдача подписки, автопродление, реконсиляция — с источником (чат / мини-апп / кабинет).
  • Экран «Только ошибки»: сводка «способ · этап · сколько» + выгрузка файлом за сутки / 7 дней / всё время; усечения всегда объявляются; фильтрация на стороне БД с индексами.

🛡 Надёжность и безопасность (по итогам аудита всего кода)

  • Починена идемпотентность выдачи: сбой записи платежа больше не приводит к повторным продлениям подписки реконсилятором.
  • Устранена гонка, способная уронить процесс во время мастера настройки; закрыт обход рейт-лимитера кабинета через подделку заголовков прокси.
  • Экранирован пользовательский ввод в админ-уведомлениях (e-mail кабинета, данные мини-аппа, метки из дампа remnashop).
  • Мусорные вебхуки больше не заливают журнал и не дёргают API шлюзов; строгий разбор цен (fail-closed) у Heleket и Platega.
  • Обновление с dev-канала на SQLite больше не падает на миграции 0038.

🐳 Образы

  • ghcr.io/mrvibecodic/chill-remna-bot:latest — этот релиз (канал stable, ветка main).
  • ghcr.io/mrvibecodic/chill-remna-bot:v1.0.0 — закреплённая версия.
  • ghcr.io/mrvibecodic/chill-remna-bot:dev — превью-канал, как раньше.