[2026-05-20] watchlist-automation: новые krony, структура секций; watchlist-sync: cron architecture

This commit is contained in:
Alexey Martemyanov
2026-05-20 10:54:42 +06:00
parent 33a413a8e5
commit 68a350bf47
2 changed files with 37 additions and 7 deletions
+10 -1
View File
@@ -107,7 +107,16 @@ WATCHLIST_PATH=/vault/family/documents/movies-watchlist.md
**Jellyfin userId:** получать через `GET /Users` (admin user = alex)
### 1.5 AI Curation Job (Hermes Kraken)
### 1.5 Cron Jobs (Hermes Eagle)
Два детерминированных shell-script крона:
| Job | Расписание | Скрипт |
|-----|-----------|--------|
| `watchlist-nightly` | ежедн. 01:00 | `~/.hermes/scripts/watchlist-nightly.sh` |
| `watchlist-discover` | вс 09:00 | `~/.hermes/scripts/watchlist-discover.sh` |
Используют `~/scripts/sync-vault.sh` для всех git-операций (stash/pull/pop/commit/push). **Не агентные** — скрипты вызывают CLI напрямую, никакого LLM в pipeline.
**Cron: каждые 6 часов**
+27 -6
View File
@@ -46,17 +46,38 @@ Jellyfin (8096) → rescan → виден контент
|--------|---------|---------|
| `[ ]` | не смотрел, в очереди | sync-down добавляет в Radarr/Sonarr |
| `[x]` | просмотрено | sync-up из Jellyfin watched history |
| `⬇️` | добавлено в Radarr/Sonarr | ждёт скачки |
| `👍` | нравится (новинка) | process-thumbs переносит в начало → попадёт в sync-down |
| `👎` | не хочу (новинка) | process-thumbs перемещает в "Новинки 👎" |
| `👎` | не хочу (новинка) | process-thumbs перемещает в `## Новинки👎` |
| `🗓️` | upcoming (ещё не вышел) | discover помечает, не скачивается |
| `❓` | не найдено / ambiguous | ждёт ручного уточнения |
| `🧟‍♀️` | horror (genre_id=27) | информационный маркер |
## Структура секций movies-watchlist.md
```
## Новинки - 👍/👎 ← discover добавляет сюда
## Фильмы ← основной список, отступ 2 пробела ( - [ ])
## Мультфильмы
## Аниме
## Новинки👎 ← ← без пробела перед 👎
## Связанные заметки
```
**Важно:** `process_thumbs` автоматически определяет отступ из `## Фильмы` и сохраняет при переносе. `SECTION_THUMBDN = "## Новинки👎"` (без пробела) — должно точно совпадать с заголовком.
## Cron Jobs на Eagle
| Job | ID | Расписание |
|-----|-----|-----------|
| `watchlist-discover` | `6aba6979b8c4` | вс 09:00 |
| `watchlist-resolve` | `16438138c8c5` | ежедн. 09:00 |
| `watchlist-sync-down` | `7d12b6d48786` | ежедн. 10:00 |
Два shell-script крона (не агентные — детерминированы):
| Job | ID | Расписание | Скрипт |
|-----|-----|-----------|--------|
| `watchlist-nightly` | `93619b22b330` | ежедн. 01:00 | `~/.hermes/scripts/watchlist-nightly.sh` |
| `watchlist-discover` | `8f219dfe8f0f` | вс 09:00 | `~/.hermes/scripts/watchlist-discover.sh` |
**watchlist-nightly.sh** (Mac → Kraken → Mac):
1. `sync-vault.sh` (pull Mac) → `process-thumbs --apply``sync-vault.sh` (push Mac)
2. SSH Kraken: `sync-vault.sh` (pull) → `resolve --recheck --apply``sync-down --apply --batch 5``sync-up --apply``sync-vault.sh` (push)
## Discover — Фильтрация