- Раскладка docs/ приведена к канону 2: заведены passport/architecture/ database/security/review и research; docs/specs, drafts, backlog, review/ и BRIEF.md разобраны и удалены, беклог переехал в docs/tasks (34 задачи, 6 целей, слаги на английский). - Нарративы specs удалены как дубли openspec-спек после поимённой сверки; остаток заведён задачами (редактор маппинга ревью, крайние случаи именования), отказ от сущности title промоутнут в ADR. - Проектные копии агентов и скиллов ревью/пайплайна удалены в пользу плагинов av-dev-pm и av-dev-pipeline; в task gate добавлен шаг canon вместо er-schema.
5.7 KiB
5.7 KiB
Формат сообщения торрент-бота
Основной способ добавления загрузки — переслать в jellybit сообщение стороннего
торрент-бота (exfreedomist, поиск по rutracker и соседним трекерам). Из
сообщения берутся источник (magnet) и контекст для распознавания. Формат
чужой, ничем не документирован и может измениться без предупреждения.
Провенанс. Образец снят вручную из личного чата Telegram (сообщение
датировано 2026-03-21) и зафиксирован в [BRIEF.md] проекта; второй образец,
меньшего размера, живёт константой botMessage в
internal/tgbot/parse_test.go и проверяется тестами разборщика. Статистики по
вариантам формата нет — наблюдений всего два, и это условие, а не замер.
[BRIEF.md]: перенесён в ../passport.md; полный текст образца — ниже и в истории git.
Образец
[1] #6514485 [rutracker], 2026-03-21 (https://hashurl.ru/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…):
Дюна: Часть вторая / Dune: Part Two (Дени Вильнёв / Denis Villeneuve) [2024, США, Канада, фантастика, WEB-DL 2160p, HDR10+, Dolby Vision] Dub (Bravo Records Georgia, RHS, Jaskier, HDrezka) + MVO (LostFilm, TVShows, Jaskier) + AVO (Сербин, Яроцкий) + (Ukr) + Original (Eng) + Sub (Rus, Eng, Ukr)
✅ (проверено) | 34.82 GB
magnet:?xt=urn:btih:541ADCFF3B6DD5DBA7088EA83317D9D6FAC331D6&tr=http%3A%2F%2Fbt.t-ru.org%2Fann%3Fmagnet&dn=rutracker-topic-6514485
Открыть magnet в вашем клиенте (https://hashurl.ru/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…)
или получить .torrent: /tr_5c054
Оцените раздачу:
👍: /g_eabdce или 👎🏿: /r_eabdce
[список файлов] (https://download.exfreedomist.com/files/541ADCFF3B6DD5DBA7088EA83317D9D6FAC331D6)
Следить: /us_5c054
Добавить в закладки: /mka_96423
cправка: /help, index (https://exfreedomist.com/stats/)
Что из этого наблюдается
- Заголовок строки 1 — порядковый номер выдачи,
#<topic-id>, имя трекера в квадратных скобках, дата раздачи и ссылка-редиректhashurl.ruс JWT в пути. Токен в ссылке имеет срок жизни (expв payload) — как долгоживущий идентификатор он не годится. - Строка описания — самый ценный кусок: локализованное название, оригинальное
название через
/, режиссёр в скобках (тоже через/), затем блок в квадратных скобках[год, страны, жанры, качество, HDR…]и перечисление дорожек и субтитров. Именно она уходит контекстом в распознавание. - Разделитель
/используется одновременно для пары «локализованное / оригинальное» и для пары «имя режиссёра кириллицей / латиницей». По позиции они не различаются — только по тому, что вторая пара стоит в скобках. - magnet отдельной строкой, с
dn=rutracker-topic-<id>— то естьdnздесь не содержит названия фильма и как имя раздачи бесполезен. Инфохэш в magnet — v1, uppercase hex; нормализуем в lowercase. .torrentне приложен — предлагается командой бота (/tr_…), то есть вторым шагом в чужом чате. Поэтому источник, приходящий этим путём, — практически всегда magnet.- Размер раздачи в человекочитаемом виде (
34.82 GB) и отметка «✅ (проверено)». - Команды бота (
/g_…,/r_…,/us_…,/mka_…,/help) и ссылка на список файлов — шум для распознавания, но безвредный: попадают в контекст как есть. - Весь текст — недоверенный вход: он полностью составляется чужим ботом по данным трекера и уезжает в промпт LLM. См. ../security.md.
Чего не знаем
- Насколько формат стабилен: наблюдений два, оба от одного бота, разница между ними — только в наличии строки «сохранённая копия описания раздачи».
- Как выглядит сообщение для сериала-сезонника и для аниме — образцов не снимали, а именно на них строится самый сложный случай раскладки.
- Что бот присылает при неудачном поиске и при слишком длинном описании (обрезка Telegram — 4096 символов на сообщение).