# ✨ Отдавать текст в сотни килобайт файлом, а не сотней сообщений - **Тип:** feature - **Категория:** Очередь - **Зачем:** Отправитель Telegram режет текст по 4000 знаков: расшифровка шестичасовой записи придёт сотней сообщений подряд. - **Теги:** goal:long-recordings Двигает пункт 4 «Завершения» цели: текст в несколько сотен килобайт доходит и в Telegram, и в браузере. Деление по словам (`internal/adapter/telegram/split.go`) остаётся для обычной расшифровки; сверх названного числа частей вместо потока сообщений уходит один файл. ## Затрагивает - `internal/adapter/telegram` — отправка документа помимо текстовых сообщений; - порог, за которым текст уходит файлом, и его место в конфигурации; - формат отправляемого файла и его имя, которое не раскрывает имени, данного пользователем; - экран чтения записи: показ текста в сотни килобайт и его выгрузка файлом; - `docs/database.md` — порог числом. ## Критерии приёмки - Текст, разбиваемый более чем на названное число частей, уходит в Telegram одним файлом, а не потоком сообщений. Оракул — тест отправителя на тексте в 300 КиБ: вызов отправки документа один, вызовов отправки сообщения нет. - Обычная расшифровка по-прежнему приходит сообщениями, разбитыми по словам. Оракул — существующий тест деления плюс тест на тексте в две части. - Имя отправляемого файла не содержит имени, данного пользователем, и текста записи. Оракул — тест: имя собрано из идентификатора задачи. - Экран чтения открывает текст в сотни килобайт целиком и даёт выгрузить его файлом. Оракул — тест экрана на подставном API с текстом в 300 КиБ. ## Рамки Порог считается в частях, а не в байтах: он производен от предела сообщения Telegram, который задаёт не наш сервис. Формат файла — простой текст, разметки не добавляем. Инвариант приватности: имя файла пользователя в журнал и в имя отправляемого документа не попадает.