Техническая сверка TG2MAX — 07.10.2026
Справка относится к опубликованному коду `/root/TG2MAX`. Это факты об обработке, а не подтверждение её юридического основания или локализации. Итоговую политику утверждает владелец.
База и очередь
SQLite: `/root/TG2MAX/bot.db`. Сохраняются аккаунты, настройки/получатели связок, идентификаторы сообщений, статистика и события, платежные данные. `post_queue` до отправки содержит текст, ID файлов, имя документа, entities и сериализованные сообщения. После `done`/`skip` содержательные поля очищаются сразу, ID и статус остаются. После `error`/`review`/`partial`/`blocked` содержание очищается через 24 часа от завершения при очередном проходе работающего обработчика; это не гарантия удаления в точную секунду, если сервис остановлен.
При старте единственного обработчика прерванные `processing` переводятся в `review`, владелец получает уведомление. Автоматически повторять неизвестный результат внешней отправки нельзя. Резервирование доставки сохраняется до сверки; оно не считается успешным сообщением пробного периода.
Альбомы Telegram отдельно фиксируются в `telegram_album_inbox` до подтверждения update. Хранятся сериализованные части Message: текст/подпись, entities, идентификаторы и метаданные файлов, чата, автора и пересылки, включая имя/username, если Telegram их передал. Сами бинарные файлы в эту таблицу не записываются. После успешной передачи или пропуска содержимое очищается; ошибочное/спорное содержимое и зависшие pending — через 24 часа от первого получения при работе или восстановлении обработчика. Удаление связки/аккаунта немедленно очищает содержимое её альбомов. Ключи, ID частей, маршруты и статусы не имеют общего утверждённого срока удаления.
Части объединяются после 1,5 секунды тишины; Telegram не передаёт итоговый размер альбома. Поздняя часть после начала отправки сохраняется для сверки, владелец получает уведомление. Прерванная отправка переводится в review без слепого повтора. Это сохранение до подтверждения относится только к альбомам: одиночные updates Telegram пока обрабатываются прежним непосредственным маршрутом.
MAX webhook сначала фиксирует входящее событие в `max_webhook_inbox`, только затем отвечает успехом. После успешной обработки payload очищается, ключ события остаётся для защиты от повторов. Ошибочные/спорные события требуют сверки; общий автоматический срок очистки их содержания ещё не утверждён. Отметки исходящих Telegram ID в `delivery_state` сохраняются без прежнего TTL: удаление через семь дней позволяло повторно переслать старое эхо.
Заказы, согласия, авторизация
В `billing_orders` сохраняются исходные цена/валюта/срок и показанные версии, хеши и тексты документов. `billing_receipts`, интервалы доступа, baselines, refunds и `yookassa_operations` содержат доказательства платежа/возврата, в том числе payload/response провайдера. Денежные операции используют отдельные транзакции с `synchronous=FULL`.
`access_trials` хранит начало/конец пробного периода и успешные пересылки; `author_consents` — субъект, цель, текст/версию, конкретный маршрут и получателей, принятие/отзыв; `delivery_reservations` — источник, направление, получатели, автор и состояние доставки. Отзыв останавливает соответствующие новые пересылки, но не удаляет финансовые доказательства и уже доставленные сообщения из мессенджеров.
Самостоятельный checkout не принимает Telegram initData. Вход подтверждается самим пользователем через личный чат бота: одноразовый код действует пять минут и связан с браузером, сессия — час. В БД хранятся хеши кода/токена, CSRF, срок, user_id и адрес подключения для ограничения попыток; не пароль или банковские реквизиты. Cookies `tg2max_login` (300 секунд) и `tg2max_checkout` (3600 секунд): HttpOnly, Secure, SameSite=Strict, path `/api/checkout`. Истёкшие строки очищаются при новых запросах начала входа; абсолютный срок физического удаления отдельным таймером не установлен.
Остальное хранение и удаление
`max_seen_events` имеет вероятностную очистку старых ключей при некоторых вызовах, а не гарантированное удаление ровно через сутки. Для `message_map`, аккаунтов, событий и доказательств общего утверждённого срока автоматического удаления нет. Удаление связки очищает часть связанных записей и отзывает её согласия; это не полное уничтожение персональных данных во всей системе.
Загруженные Telegram-файлы обрабатываются в памяти. Это не доказательство отсутствия временных файлов любых библиотек/процессов. В legacy `destinations.config` могут оставаться VK access/refresh tokens. VK выключен до замены опубликованных ранее ключей и повторной приёмки; новый пробный/платный продукт VK не включает.
Журналы и резервные копии
Сервисы направляют stdout/stderr в systemd journal. В журналах бывают ID чатов/сообщений/пользователей, названия, статусы и ошибки. Новый код не выводит авторизационные данные в HTTP-ошибки. Однако полный состав старых журналов, проверка всех обработчиков исключений и отдельный срок journald ещё требуют регламента.
Ежедневные согласованные SQLite-копии в `/var/backups/tg2max`: каталог приватный, файлы mode0600, `keep=30` означает количество копий, не доказанный срок30дней. Полная копия может содержать очередь, финансовые данные и секреты config. Ручные `/root/TG2MAX/.backups`, старые releases и приватная проверочная копия в рабочем каталоге не очищаются этим timer. Процедура удаления из копий и предотвращения возврата удалённых записей при восстановлении не утверждена. Независимой копии вне сервера в рамках этого выпуска не создавали.
Публичный сайт и соединения
Основной HTTPS-домен `tg-2-max.ru` и перенаправление `www.tg-2-max.ru` обслуживаются этим сервером с действительными сертификатами. Старый HTTPS-адрес sslip.io сохраняется для обратной совместимости MiniApp и MAX webhook. Кэш DNS отдельных резолверов может ещё содержать прежний IP; наличие сертификата не доказывает завершение обновления всех кэшей.
Самостоятельный сайт не подключает аналитические сервисы, внешние шрифты/изображения или Telegram SDK. MiniApp намеренно подключает официальный SDK с telegram.org. Ответы API имеют no-store, страницы — CSP и защитные заголовки; для MiniApp разрешён только его скрипт и SDK. Это не заменяет проверку клиентского устройства и состава HTTP-журналов.
MAX использует официальный HTTPS endpoint `platform-api2.max.ru`, проверку TLS и дополнительный официальный корневой сертификат в локальном SSL-контексте приложения. Проверка сертификатов и системное хранилище доверия не отключались и не менялись. MAX webhook закрыт секретом; Telegram продолжает polling.
Что должен подтвердить владелец
Фактическое юридическое лицо хостинга, договор и физические страны/места БД, файлов, очередей, журналов и всех копий; юридические лица и роли Telegram/MAX/ЮKassa/кассы и остальных получателей; реальные поля updates, основания обработки участников, несовершеннолетних и чувствительных данных; точные сроки по категориям, процедуры уничтожения, инцидентов и трансграничных передач. IP не доказывает страну хранения. До заполнения фактов проекты документов не вступают в силу, новые продажи закрыты.