From a433755c4fc30623a5fcb8a39901966a4a865ede Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Thu, 24 Sep 2026 16:22:00 +0600 Subject: [PATCH] =?UTF-8?q?[2026-09-24]=20arr:=20=D0=B7=D0=B0=D1=89=D0=B8?= =?UTF-8?q?=D1=82=D0=B0=20=D0=B0=D0=B2=D1=82=D0=BE=D0=B7=D0=B0=D0=BA=D0=B0?= =?UTF-8?q?=D1=87=D0=BA=D0=B8=20=D1=81=D0=BD=D1=8F=D1=82=D0=B0=20(arr.py?= =?UTF-8?q?=20True/True=20ef7e7af,=20rssSyncInterval=3D15)=20=E2=80=94=20?= =?UTF-8?q?=D0=B4=D0=BE=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- family/projects/watchlist-automation.md | 30 +++++++++++++++++-- personal/plans/lampac-watched-to-watchlist.md | 17 ++++++----- 2 files changed, 37 insertions(+), 10 deletions(-) diff --git a/family/projects/watchlist-automation.md b/family/projects/watchlist-automation.md index e9401c28..b7023652 100644 --- a/family/projects/watchlist-automation.md +++ b/family/projects/watchlist-automation.md @@ -200,6 +200,29 @@ curl -s --max-time 10 "http://localhost:7878/radarr/api/v3/queue?pageSize=50" \ ## 🔴 2026-09-22: АВТОСКАЧКА НА HDD ВЫКЛЮЧЕНА (по требованию Alex) +### ✅ 2026-09-24: защита СНЯТА (по требованию Alex) — актуальное состояние + +Логика: из watchlist в arr автоматом ничего не добавляется, защита мешала только +ручным добавлениям («для вручную добавленных закачка должна стартовать»). + +| Что | Было (защита 2026-09-22) | Стало (2026-09-24) | +|---|---|---| +| `arr.py`: `monitored` + `searchForMovie` / `searchForMissingEpisodes` | `False` | **`True`** — коммит `ef7e7af` (push): добавление сразу ищет и качает | +| Radarr `rssSyncInterval` | `0` | **15 мин** (`PUT /api/v3/config/indexer`, HTTP 202) | +| Sonarr `rssSyncInterval` | `0` | **15 мин** (там же) | +| `sync-down` в кроне | вырезан | **остался вырезан** — авто-пути из watchlist нет, добавление только руками | +| `monitored` существующих (34 фильма / 13 сериалов, все без файлов) | снят | **оставлен снятым** — вкл. всем = закачка всего каталога разом (диск ~84%); включать поштучно | + +Проверки после: очереди Radarr/Sonarr `0`, `monitored=true: 0 из 34`, auth не тронут +(`forms` / `/radarr` / 7878), RSS-задача `next − last = 900s`. + +🔴 **Питфолл Radarr 6.4 / Sonarr 4.0.20:** `rssSyncInterval` живёт НЕ в `/api/v3/config/host` +(поля там физически нет), а в **`/api/v3/config/indexer`** — PUT полным объектом с `id` +(частичный молча возвращает старое). Через host-config тупик: валидатор требует непустой +`allowedHosts` при `authenticationRequired != Enabled` и не принимает звёздочку. + +Дальше — история и cookbook той защиты. + **Контекст.** Задача — Lampa на ТВ показывает каталог из `movies-watchlist.md` и играет через TorrServer. Alex: «мы перестаем качать торренты на диск!» → автоскачка Radarr/Sonarr выключена фактически. Модуль Catalog/Lampa — в [[personal/plans/lampac-watchlist-plugin]]. @@ -231,9 +254,10 @@ curl -s --max-time 10 "http://localhost:7878/radarr/api/v3/queue?pageSize=50" \ Бэкап: `/home/kraken/scripts/watchlist-nightly.sh.bak-20260922-182655`. Сумма новой: `4401882e3b1307a73b3330a70b59ecfe`. -🔴 **Порядок защиты теперь такой:** -1. Ручное снятие `monitored` + `rssSyncInterval: 0` — сделано, но сбрасывается при `add`. -2. **`sync-down` вне крона** — сделано. Блокирует автозапуск независимо от 1. +🔴 **Порядок защиты** (действовал 2026-09-22 → 2026-09-24; частично снята — см. секцию выше): +1. Ручное снятие `monitored` + `rssSyncInterval: 0` — **отменено 2026-09-24** (rss=15; + `monitored` существующих оставлен снятым). +2. **`sync-down` вне крона** — остаётся и после 2026-09-24 (авто-добавлений из watchlist нет). `sync_down.py` как код оставлен — ручной запуск возможен. Проверка отсутствия автозакачки: diff --git a/personal/plans/lampac-watched-to-watchlist.md b/personal/plans/lampac-watched-to-watchlist.md index f3cd1226..21eb7d9a 100644 --- a/personal/plans/lampac-watched-to-watchlist.md +++ b/personal/plans/lampac-watched-to-watchlist.md @@ -310,11 +310,12 @@ table`). Голый `cp`/`docker cp` одного `.sql` — НЕ бэкап. Ч «Мой список» в Lampa после ночного прогона (каталог 02:30 пересобирается и выкидывает `[x]`). -**Открытые пункты, ждущие команды Alex** (все три — отдельные апрувы): +**Открытые пункты, ждущие команды Alex** (обновлено 2026-09-24): 1. Лог `nightly`: `/tmp/watchlist-nightly.log` → `/home/kraken/logs/` (одна строка crontab, см. 8.2). -2. `arr.py`: `searchForMovie: False`, `searchForMissingEpisodes: False` (см. - [[family/projects/watchlist-automation]] § «Корень в коде»). -3. `sync_from_lampac.py` — код модуля `[x]` из Lampa (этот план). +2. ~~`arr.py`: `searchForMovie: False`~~ — снято с повестки: 2026-09-24 Alex вернул + автозакачку (`True/True`, коммит `ef7e7af`; вручную добавленные качаются сразу). + См. [[family/projects/watchlist-automation]] § «2026-09-24: защита СНЯТА». +3. ~~`sync_from_lampac.py`~~ — ✅ сделано 2026-09-24: коммит `ef44f3e`, встроен в nightly. **Порядок следующей сессии:** шаг 8 (прогнать `/tmp/probe_match.py`, убедиться что матч находит хоть одну позицию) → шаг 1 (бэкап) → шаг 2 (код) → @@ -394,10 +395,12 @@ table`). Голый `cp`/`docker cp` одного `.sql` — НЕ бэкап. Ч --- -## 6. Что НЕ делается +## 6. Что НЕ делается (по состоянию на 2026-09-24) -- **Не** трогаем `arr.py` (`searchForMovie: True`) — отдельная задача на апруве. -- **Не** возвращаем `sync-down` в крон — закачек быть не должно. +- ~~**Не** трогаем `arr.py`~~ — 2026-09-24 Alex вернул автозакачку: `True/True`, + коммит `ef7e7af` (подробности — [[family/projects/watchlist-automation]]). +- **Не** возвращаем `sync-down` в крон — остаётся вырезан и после снятия защиты: + авто-добавлений из watchlist нет, качается только вручную добавленное. - **Не** пишем в Jellyfin — он не источник просмотров. - **Не** трогаем `cleanup` — отдельная задача.