diff --git a/family/projects/watchlist-automation.md b/family/projects/watchlist-automation.md index f7986282..86f37c81 100644 --- a/family/projects/watchlist-automation.md +++ b/family/projects/watchlist-automation.md @@ -1,7 +1,7 @@ --- created: '2026-05-20' -updated: '2026-09-04' -status: active +updated: '2026-09-20' +status: broken tags: - kraken - watchlist @@ -62,14 +62,39 @@ Jellyfin (8096) → rescan → виден контент **Важно:** `process_thumbs` автоматически определяет отступ из `## Фильмы` и сохраняет при переносе. `SECTION_THUMBDN = "## Новинки👎"` (без пробела) — должно точно совпадать с заголовком. +## 🔴 Pipeline МЁРТВ с 2026-06-20 (аудит 2026-09-20) + +**Автодобавление фильмов НЕ работает.** Скрипты живы, но их никто не запускает. + +Доказательства (проверено 2026-09-20): +- `crontab -l` юзера `kraken` — watchlist-строк **НЕТ**. Есть только `sync-vault.sh` (каждый час) и два `pgs-to-srt` (часовой + 03:00). +- root crontab и `/etc/cron.d/`: `grep -rl watchlist` → пусто. +- systemd timers (user + system) → 0 штук. +- Внутри Hermes-контейнера на Кракене: `docker exec hermes-kraken /opt/hermes/.venv/bin/hermes cron list` → **"No scheduled jobs."** +- Последний коммит автором `Hermes` (= nightly-скрипт) — **2026-06-20**. Распределение по месяцам: май 1, июнь 9, июль/август/сентябрь — **0**. Единственные коммиты в vault после июня — от `eagle`, `syncthing`, `taiga`. + +Скрипты существуют и исполняемы, но не в кроне: +``` +~/scripts/watchlist-nightly.sh mtime 2026-05-29 +~/scripts/watchlist-discover.sh mtime 2026-05-29 +``` + +**Побочный эффект — файл засран `❓`-мусором.** Так как `resolve --recheck` не бегает, ambiguous-строки копят дампы кандидатов: «Крестный отец» ×4 блока по 6 строк, «Nightmare Alley» ×31 строка, «Stand by me» ×40 строк, «Фарго» ×30. Секции `👍/👎` не обрабатываются — 40+ позиций висят в «Новинки», не переехав в основной список. + +Аудит завершён без изменений на Кракане — ничего не трогалось. Три варианта для Alex: (1) восстановить крон, (2) сначала почистить `❓`-мусор, (3) оставить как есть. + ## Cron Jobs (на Кракене с 2026-05-27) Весь watchlist pipeline работает на Кракене (мигрировал с Eagle 2026-05-27). | Job | Расписание | Скрипт | |-----|-----------|--------| -| `watchlist-nightly` | ежедн. 01:00 | `~/.hermes/scripts/watchlist-nightly.sh` | -| `watchlist-discover` | вс 09:00 | `~/.hermes/scripts/watchlist-discover.sh` | +| `watchlist-nightly` | ежедн. 01:00 | `~/scripts/watchlist-nightly.sh` | +| `watchlist-discover` | вс 09:00 | `~/scripts/watchlist-discover.sh` | + +⚠️ Фактический путь — `~/scripts/`, **не** `~/.hermes/scripts/` (в доке ранее было ошибочно). Оба скрипта вызывают CLI напрямую через `uv run --project $WS`, без LLM. `uv` лежит в `~/.local/bin/uv`. + +`WS` в обоих скриптах: `/srv/dev-disk-by-uuid-49e8f586-3839-4c5d-a1e1-58bfc3579ade/watchlist-sync` — **другой UUID**, чем фактический корень репо (см. ниже). Возможный источник поломки: проверить, что путь резолвится. **watchlist-nightly.sh** (на Кракене): 1. `sync-vault.sh` (pull) → `process-thumbs --apply` → `sync-vault.sh` (push) @@ -146,7 +171,9 @@ Jellyfin library mapping: Movies → `movies`, Cartoons → `mixed` (movies + ep ## Open Tasks +- 🔴 **[2026-09-20] Восстановить cron для watchlist pipeline** — pipeline мёртв с 20 июня (см. раздел выше). Решение за Alex: восстановить крон / сначала почистить `❓`-мусор / оставить как есть. - 🔴 **[2026-09-04] Решить стратегию качества загрузки новых фильмов** (см. профили в [[arr-stack-kraken]]). Корень — захардкоженный `qualityProfileId: 1` (`Any`) в `watchlist_sync/arr.py`. Пока НЕ менялось (НИЧЕГО не правилось, ждём решение Alex). Вопрос юзеру: сохранить 4K (→ создать профиль «2160p без Remux/BR-DISK» и сменить id в arr.py) или опустить до 1080p (id 4); и менять ли и для Sonarr (сериалы) тоже. +- 🟡 Почистить `❓`-мусор в movies-watchlist.md (повторяющиеся дампы кандидатов после многомесячного простоя) - 🟡 Передавать Transmission locations через router script при каждом импорте (сейчас вручную) - 🔴 rsync невыполненных фильмов с HTPC на Кракен (`Фильмы не перенесенные с htpc на кракен.md`) - 🟡 Watchlist sync-up: добавить перенесённые фильмы в нужные разделы