# Дорожная карта Черновик плана реализации. Ориентир, не обязательство; по ходу уточняется. Что реализовано и как устроено — в `docs/specs`. ## Фазы - **Ф0 — каркас.** go.mod, раскладка пакетов, загрузка TOML-конфига, SQLite + миграции, slog-логи, Dockerfile (static → distroless), golangci-lint, lefthook. Документация (этот этап — частично готов). - **Ф1 — ingest + tracking (без LLM).** `Ingest()` + добавление в qBittorrent (категория `jellybit`) + `worker`-поллинг завершения + машина состояний. Наружу: HTTP API, список в веб-UI, `jellybit add`. - **Ф2 — распознавание.** `go-ptn` + LLM (structured output) → план + оценка уверенности. Без записи на диск. - **Ф3 — раскладка + минимальный review.** Хардлинки по конвенциям Jellyfin, субтитры, идемпотентность. Авто при высокой уверенности; низкая → экран подтверждения (htmx). - **Ф4 — метаданные.** TMDB/TVDB опционально, provider-id в именах, валидация распознавания против числа серий. - **Ф5 — Telegram + UX.** Бот-адаптер + парсер сообщений торрент-бота, подтверждение в боте, триггер скана Jellyfin, нотификации. - **Ф6 — деплой.** Static-образ/бинарь + обвязка в umbar (`playbook-jellybit.yml`). ## Заметки по порядку - Минимальный review-экран нужен уже в Ф3 (как только появляется режим «спросить при сомнении»), полноценный UX — в Ф5. - Jellyfin в umbar ещё не развёрнут — раскладку файлов это не блокирует, тестируется без него; триггер скана подключаем, когда Jellyfin поднят.