[2026-09-22] eagle: personal/plans/kraken-media-inventory-cleanup.md personal/tech/lampac-deployment.md personal/tech/skill-lampac-kraken-deploy.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-22 20:21:20 +06:00
1 parent 5249bddf8f
commit 3ae71671e7
3 files changed
+330 -51

No files matched your search

+159 -47
View File
@@ -5,7 +5,7 @@ related:
- '[[personal/plans/lampac-watchlist-plugin]]'
- '[[personal/plans/lampac-kraken]]'
- '[[personal/tech/lampac-deployment]]'
status: in-progress
status: inventory-done-awaiting-decision
tags:
- kraken
- media
@@ -19,64 +19,176 @@ updated: '2026-09-22'
---
# Кра́кен — инвентаризация медиа под удаление
> Составлен 2026-09-22. Утверждён Alex: «вообще все. нужна полная инвентаризация что можно сносить, а что нельзя».
> Составлен 2026-09-22. Alex: «вообще все. нужна полная инвентаризация что можно сносить, а что нельзя».
> Итог: **802 файла, 233 позиции, 1 236 ГБ.** В watchlist (Lampa покажет) — 29 позиций / 456 ГБ.
> Не в watchlist — 204 позиции / 780 ГБ. **Точных дублей — 46 групп, зря занято 89,2 ГБ.**
## Задача
## Метод
Полная инвентаризация **всех** видеофайлов на диске Кра́кена → таблица «что можно сносить / что нельзя».
Нельзя сносить = есть в watchlist (доступно в Lampa) **или** нужно по другим причинам.
Цель — освободить место на диске (сейчас свободно 477 ГБ из 1.8 ТБ).
1. `find` по `/srv/...6194539b.../media` → 802 видеофайла с размерами.
2. Группировка в «позиции»: папка первого уровня + подпапка; файлы в корне — каждая своя позиция;
`downloads/*` — по полному пути папки-раздачи (сезонные паки).
3. Сверка с `watchlist.json` (376 позиций) — **строгое равенство** нормализованных названий
(убраны год, качество, релиз-группа, расширение, транслит-шум). Подстрочный матч давал ложные
срабатывания: единственный файл 1.46 ГБ «Вивариум» склеивался в группу на 135 ГБ.
4. TMDB-ID брался из `href` вида `https://www.themoviedb.org/movie/NNN` — в `watchlist.json`
его отдельным полем нет.
## Факты (собраны 2026-09-22)
Артефакты на Mac: `/Users/admin/kraken-inventory.json` (полные данные),
`kraken-inventory.csv` (таблица), `kraken-dupes.json` (дубли), `kraken-table-AB.md`.
**Один физический диск:** `6194539b-03e0-4f33-986b-4da09834e82f`, 1.8 ТБ, занято 1.3 ТБ, свободно **477 ГБ**.
`49e8f586-3839-4c5d-a1e1-58bfc3579ade` — **symlink** на него, не отдельный диск
(проверено `docker inspect`: radarr/sonarr/transmission смотрят на `49e8f586` → тот же диск).
## Сводка
**802 видеофайла, 1 236 ГБ.** Разбивка:
| Папка | В watchlist | Не в watchlist |
|---|---|---|
| `movies` | 14 / 163.0 ГБ | 37 / 146.7 ГБ |
| `movies-radarr` | 8 / 108.8 ГБ | 3 / 67.4 ГБ |
| `series-sonarr` | 3 / 105.0 ГБ | 1 / 11.1 ГБ |
| `downloads` | 1 / 13.8 ГБ | 4 / 64.8 ГБ |
| `documentaries-series` | 0 | 20 / 235.6 ГБ |
| `documentaries` | 0 | 25 / 71.9 ГБ |
| `cartoons-series` | 1 / 51.3 ГБ | 17 / 53.3 ГБ |
| `cartoons` | 2 / 14.0 ГБ | 96 / 125.8 ГБ |
| `series` | 0 | 1 / 3.6 ГБ |
| Папка | Файлов | ГБ | Индексируется Radarr/Sonarr |
🔴 **Radarr/Sonarr индексируют только 252 ГБ из 1 236.** Этой рухляди нет в стеках.
## 🔴 Главная находка: дубли `downloads/complete` (89,2 ГБ)
`downloads/complete/sonarr/` — **завершённые раздачи, не удалённые после импорта**.
Файлы совпадают с библиотекой **по имени и размеру байт-в-байт**:
| Раздача в `downloads/complete` | ГБ | Копия в библиотеке |
|---|---|---|
| `Stranger Things.s04...` | 13.06 | `series-sonarr/Stranger Things/Season 4` |
| `Очень странные дела.S03...` | 21.33 | `series-sonarr/Stranger Things/Season 3` |
| `Our.Flag.Means.Death.S01` | 19.31 | `series-sonarr/Our Flag Means Death/Season 1` |
| `Our.Flag.Means.Death.S02` | 13.81 | `series-sonarr/Our Flag Means Death/Season 2` |
| `Kiberderevnya.S01` | 11.11 | `series-sonarr/The Cyberfarm/Season 1` |
| `Life.Is.Beautiful.1997` | 10.62 | `movies-radarr/Life Is Beautiful (1997)` × `cartoons/life is beautiful` |
🔴 **`Life Is.Beautiful` лежит ТРИ раза** — `movies-radarr` + `cartoons` + третья копия.
Это уже не staging, а свалка: фильм в `cartoons` — ошибка раскладки.
→ `downloads/complete` (78,6 ГБ) — **удалять целиком, если в библиотеке 24 ГБ S03 не нужны**
(см. ниже про ложный дубль S03).
## Ложный дубль: Stranger Things S03
`downloads/complete/.../Очень странные дела.S03...` и `series-sonarr/Stranger Things/Season 3`
совпадают байт-в-байт. Но в `series-sonarr` **отсутствует S01** и есть только S02–S04 —
то есть S03 в библиотеке **начал формироваться из этой же раздачи**. Удалять `downloads`-копию
можно, но только убедившись, что Sonarr видит S03 как отсутствующий/присутствующий.
## A. В WATCHLIST — Lampa покажет (29 позиций, 456.0 ГБ) — НЕ сносить
| Тайтл на диске | Папка | Файлов | ГБ | TMDB | Название в watchlist |
|---|---|---|---|---|---|
| Stranger Things | `series-sonarr` | 25 | 67.92 | 66732 | Очень странные дела |
| смешарики webrip 1080p | `cartoons-series` | 210 | 51.32 | 107, 402 | сборник (ложный матч по частям) |
| Our Flag Means Death | `series-sonarr` | 18 | 33.12 | 109939 | Наш флаг означает смерть |
| Whiplash (2014) | `movies-radarr` | 1 | 23.66 | 244786 | Одержимость |
| секретный агент | `movies` | 1 | 21.51 | 1220564 | Секретный агент |
| семья в аренду | `movies` | 1 | 19.91 | 1208348 | Семья в аренду |
| The Drama (2026) | `movies-radarr` | 1 | 19.16 | 1325734 | Вот это драма! |
| отпуск на двоих | `movies` | 1 | 17.85 | 1034716 | Отпуск на двоих |
| They Will Kill You (2026) | `movies-radarr` | 1 | 17.24 | 1292695 | Они придут за тобой |
| под огнём | `movies` | 1 | 16.50 | 1241436 | Под огнём |
| я ругаюсь | `movies` | 1 | 15.82 | 1317149 | Я ругаюсь |
| Our.Flag.Means.Death.S02 (дубль) | `downloads` | 8 | 13.81 | 109939 | Наш флаг означает смерть |
| гадкая сестра | `movies` | 1 | 13.50 | 1284120 | Гадкая сестра |
| сират | `movies` | 1 | 13.39 | 1151272 | Сират |
| охота на воров 2: пантера | `movies` | 1 | 13.28 | 604685 | Охота на воров 2: Пантера |
| американская история x | `movies` | 1 | 12.80 | 73 | Американская история X |
| Scream (1996) | `movies-radarr` | 1 | 12.39 | 4232 | Крик |
| Dead Poets Society (1989) | `movies-radarr` | 1 | 12.28 | 207 | Общество мёртвых поэтов |
| Leave No Trace (2018) | `movies-radarr` | 1 | 11.06 | 443463 | Не оставляй следов |
| the.iron.giant.1999... | `cartoons` | 1 | 10.61 | 10386 | Стальной гигант |
| Funhouse (2019) | `movies-radarr` | 1 | 8.87 | 590009 | Эксперимент «За стеклом» |
| смерть единорога | `movies` | 1 | 7.97 | 1153714 | Смерть Единорога |
| список заветных желаний | `movies` | 1 | 5.88 | 1254786 | Список заветных желаний |
| Mortal Kombat II (2026) | `movies-radarr` | 1 | 4.15 | 931285 | Мортал Комбат 2 |
| Rick and Morty | `series-sonarr` | 4 | 3.98 | 60625 | Рик и Морти |
| Тайна третьей планеты (1981) | `cartoons` | 1 | 3.38 | 49802 | Тайна третьей планеты |
| Van Helsing (2004) Fullscreen DVDRip | `movies` | 1 | 2.94 | 7131 | Ван Хельсинг |
| Death.on.the.Nile.2022.HDRip | `movies` | 1 | 1.46 | 505026 | Смерть на Ниле |
| гладиатор | `movies` | 1 | 0.22 | 98 | Гладиатор |
⚠️ **«смешарики webrip 1080p»** — 210 файлов в одной папке. Это сборник; совпадения с watchlist
(TMDB 107/402) — артефакт нормализации по отдельным файлам, не реальный матч.
Разобрать отдельно, если позиция пойдёт под нож.
⚠️ **В watchlist нет ни одного тайтла из `documentaries*`** — 45 позиций / 307 ГБ лежат вне списка.
## B. НЕ В WATCHLIST (204 позиции, 780.1 ГБ)
Полная таблица всех 204 строк — в артефактах (`kraken-inventory.csv`).
Здесь — верхушка по размеру, остальное `cartoons` по 0,04–3 ГБ (советская анимация).
### B1. Дубли `downloads/complete` — 78,6 ГБ (удалять первыми)
| Раздача | ГБ | Копия есть? |
|---|---|---|
| `Очень странные дела.S03.WEB-DL.1080.HDR` | 21.33 | ✅ в `series-sonarr` |
| `Our.Flag.Means.Death.S01.2022...` | 19.31 | ✅ в `series-sonarr` |
| `Our.Flag.Means.Death.S02.WEBDL...` | 13.81 | ✅ в `series-sonarr` |
| `Stranger Things.s04.WEB-DL(HEVC)...` | 13.06 | ✅ в `series-sonarr` |
| `Kiberderevnya.S01.2023...` | 11.11 | ✅ в `series-sonarr` (`The Cyberfarm`) |
### B2. Не в watchlist, не дубли — крупное (кандидаты)
| Тайтл | Папка | ГБ | Комментарий |
|---|---|---|---|
| `movies` | 51 | 309.7 | ❌ нет |
| `movies-radarr` | 11 | 176.2 | ✅ да |
| `series-sonarr` | 57 | 116.1 | ✅ да |
| `documentaries-series` | 72 | 235.6 | ❌ нет |
| `cartoons` | 102 | 139.8 | ❌ нет |
| `cartoons-series` | 433 | 104.6 | ❌ нет |
| `downloads` | 45 | 78.6 | ❌ нет (staging Transmission) |
| `documentaries` | 25 | 71.9 | ❌ нет |
| `series` | 6 | 3.6 | ❌ нет |
| Prehistoric.Planet.2022.S01 + S02 | `documentaries-series` | 37.45 + 17.36 | доксериал |
| пингвины. шпион в толпе | `documentaries-series` | 34.75 | доксериал |
| Oldboy (2003) | `movies-radarr` | 28.65 | в Radarr, не в watchlist |
| Project Hail Mary (2026) | `movies-radarr` | 28.12 | в Radarr, не в watchlist |
| смешарики. новый сезон. 2020 | `cartoons-series` | 26.43 | 113 эпизодов |
| жизнь птиц 1998 | `documentaries-series` | 20.59 | доксериал |
| маленькие гиганты 2014 | `documentaries` | 20.57 | |
| кот в сапогах 2011 | `cartoons` | 19.92 | |
| the secret life of elephants | `documentaries-series` | 19.90 | доксериал |
| Bram.Stoker's Dracula.1992 | `movies` | 18.04 | |
| The.Crow.1994 | `movies` | 17.45 | |
| гиганты моря 2011 | `documentaries-series` | 16.40 | доксериал |
| tiger spy in the jungle s01 | `documentaries-series` | 16.30 | доксериал |
| it was just an accident | `movies` | 12.78 | |
| F1.The.Movie.2025 | `movies` | 11.99 | |
| король лев (1994) | `cartoons` | 11.97 | |
| The Cyberfarm | `series-sonarr` | 11.11 | в Sonarr, не в watchlist |
| Life Is Beautiful (1997) | `movies-radarr` + `cartoons` | 10.62 × 2 | 🔴 дубль |
| Brassic S01 | `series` | 3.62 | |
| ну, погоди! | `cartoons-series` | 3.74 | 18 выпусков |
🔴 **Сканируется только 252 ГБ из 1 236.** Остальные ~984 ГБ — вне индексации arr-стека.
### B3. `cartoons` — 96 позиций, 125,8 ГБ
## Шаги
Советская и зарубежная анимация, преимущественно 1944–1990, файлы 0,04–3 ГБ.
В watchlist их нет. Список целиком — в CSV.
1. **Выгрузить список** 802 файлов (путь + размер) с Кра́кена на Mac.
2. **Сгруппировать в тайтлы** — файл ≠ тайтл. `cartoons-series` = 433 файла по ~0.2 ГБ
(сезонные сборники мультфильмов). Группировка по папке + разбор имени
(`S01E04`, `01.`, `ну погоди 07`). Ожидаемо ~150–250 уникальных позиций.
3. **Сверить с watchlist** — источник истины `family/documents/movies-watchlist.md`
+ `watchlist.json` (369 с tmdb_id, 24 в `missing.json` с `❓`).
Матч по нормализованному названию, при наличии — по `tmdb_id`.
4. **Выделить «недоступно из-за отсутствия в TMDB»** — это 24 позиции из `missing.json`.
5. **Собрать таблицу** (этот документ) — колонки: тайтл · размер · в watchlist · доступно в Lampa · вердикт.
6. **Удаление — только после просмотра таблицы Alex'ом и явного «удаляй эти».**
## Что дальше
## Правила
- Ничего не удалять без явного подтверждения по конкретным позициям.
- Стект Radarr/Sonarr: удаление записи и файла — **разные** действия, оговариваются отдельно.
- 🔴 При удалении `deleteFiles=true` в Radarr — сначала проверить, что файл реально в `movies-radarr`,
а не в общей `movies` (иначе снесёт чужое).
- Backup перед удалением: дамп `radarr`/`sonarr` API в файл.
Удаление — **отдельный шаг, ждёт решения Alex'а по конкретным позициям.**
Правила при удалении:
1. `downloads/complete` — самый безопасный первый кандидат (78,6 ГБ, всё есть в библиотеке).
2. `Life Is Beautiful` — снести две лишние копии из трёх, оставить одну.
3. `movies-radarr`/`series-sonarr` — если удалять, то через API (иначе Radarr будет держать
фантом). `deleteFiles=true` проверять, что путь внутри библиотеки.
4. Дамп `radarr`/`sonarr` API в файл перед любой операцией.
## Статус
- [x] Ответ Alex: «вообще все»
- [x] План записан
- [ ] Шаг 1 — выгрузка списка
- [ ] Шаг 2 — группировка в тайтлы
- [ ] Шаг 3 — сверка с watchlist
- [ ] Шаг 4 — выделить missing
- [ ] Шаг 5 — таблица
- [x] Шаг 1 — выгрузка списка (802 файла)
- [x] Шаг 2 — группировка (233 позиции)
- [x] Шаг 3 — сверка с watchlist (29 в списке / 204 нет)
- [x] Шаг 4 — `missing.json`: **0 совпадений** среди файлов (те 30 позиций — рукописные заметки)
- [x] Шаг 5 — таблица (этот документ)
- [ ] Шаг 6 — удаление (ждёт решения)
## Документация разложена
| Что | Где |
|---|---|
| Эта таблица, метод, цифры | `personal/plans/kraken-media-inventory-cleanup.md` |
| Методика + переиспользуемые факты | `personal/tech/lampac-deployment.md`, раздел «Полная инвентаризация диска Кра́кена» |
| Скилл (питфоллы 12–18) | `devops/lampac-kraken-deploy`, раздел «Pillar: disk inventory & deletion candidates» |
| Зеркало скилла | `personal/tech/skill-lampac-kraken-deploy.md` |
+145
View File
@@ -3251,8 +3251,153 @@ else{Lampa.Listener.follow('app',function(e){if(e.type=='ready')patchCubMain();}
Проверка в шаге 7 валидирует именно ключ `watchlist` и предупреждает,
если в `/catalog` остался русский ключ.
## 🔴 Полная инвентаризация диска Кра́кена (2026-09-22, вечер)
Alex: *«проверь все что скачано сейчас из сериалов и фильмов (не только в sonarr/radarr папках)
составь табличку что из этого есть в списке watchlist (и соответственно доступно в lampa)
и то чего нет в lampa»* → *«вообще все. нужна полная инвентаризация что можно сносить,
а что нельзя»*.
**Отдельный план с таблицей: [[personal/plans/kraken-media-inventory-cleanup]].**
Здесь — только методика и переиспользуемые факты.
### Цифры
```
802 видеофайла · 233 позиции · 1236.1 ГБ занято
A. в watchlist (Lampa покажет): 29 поз. / 456.0 ГБ
B. не в watchlist: 204 поз. / 780.1 ГБ
точных дублей (имя+размер): 46 групп / 89.2 ГБ зря
```
| Папка | Файлов | ГБ | Индексируется arr |
|---|---|---|---|
| `movies` | 51 | 309.7 | ❌ |
| `documentaries-series` | 72 | 235.6 | ❌ |
| `movies-radarr` | 11 | 176.2 | ✅ |
| `cartoons` | 102 | 139.8 | ❌ |
| `series-sonarr` | 57 | 116.1 | ✅ |
| `cartoons-series` | 433 | 104.6 | ❌ |
| `downloads` | 45 | 78.6 | ❌ staging |
| `documentaries` | 25 | 71.9 | ❌ |
| `series` | 6 | 3.6 | ❌ |
🔴 **Radarr/Sonarr индексируют только 252 ГБ из 1236** (21%). Остальные ~984 ГБ —
ручные закачки, невидимые в UI стека.
### 🔴 `downloads/complete` — раздачи не удаляются после импорта
`downloads/complete/sonarr/` держит **завершённые раздачи, которые Sonarr уже
скопировал в библиотеку и не убрал**. Дубли подтверждены совпадением имени файла
И размера байт-в-байт:
```
downloads/complete/sonarr/Очень странные дела.S03.WEB-DL.1080.HDR 21.33 ГБ -> series-sonarr S03
downloads/complete/sonarr/Our.Flag.Means.Death.S01.2022... 19.31 ГБ -> series-sonarr S01
downloads/complete/sonarr/Our.Flag.Means.Death.S02.WEBDL... 13.81 ГБ -> series-sonarr S02
downloads/complete/sonarr/Stranger Things.s04.WEB-DL(HEVC)1080p.xz 13.06 ГБ -> series-sonarr S04
downloads/complete/sonarr/Kiberderevnya.S01.2023.WEB-DL.1080p 11.11 ГБ -> The Cyberfarm S01
```
= **78.6 ГБ чистого дубля.** Sonarr настроен «копировать», а не «перемещать»
(или `Remove Completed` выключен) — отсюда двойной расход.
⚠️ `Life.Is.Beautiful.1997.BDRip.1080p.mkv` (10.62 ГБ) лежит **трижды**:
`movies-radarr/Life Is Beautiful (1997)/` + `cartoons/life is beautiful/` + ещё копия.
Фильм в `cartoons` — ошибка раскладки, не случайность импорта.
### ⚠️ Ложный дубль: Stranger Things S03
`downloads/.../Очень странные дела.S03` и `series-sonarr/Stranger Things/Season 3`
совпадают байт-в-байт, но в `series-sonarr` **нет S01** (только S02–S04) — библиотека
формировалась из этой же раздачи. Перед удалением `downloads`-копии проверить,
что Sonarr видит S03 как присутствующий.
### Метод: как группировать файлы в «позиции»
Плоский `find` даёт 802 строки — бесполезно. Группировка:
```python
# movies / cartoons / documentaries — файлы в корне = каждая своя позиция
# (иначе единственный «Вивариум» 1.46 ГБ склеивается в группу на 135 ГБ)
if top in ("movies", "cartoons", "documentaries"):
return (top, dirs[0]) if dirs else (top, r["file"])
# downloads/complete/sonarr/<Pack Name>/... — по полному пути пака (сезонный пак)
if top == "downloads" and len(dirs) >= 3 and dirs[0] == "complete":
return (top, "/".join(dirs[:3]))
# сериалы — первый подкаталог = шоу
return (top, dirs[0]) if dirs else (top, r["file"])
```
### 🔴 Матч с watchlist — только СТРОГОЕ равенство
Подстрочный матч (`c in e["name"]`) даёт мусор: короткие нормализованные строки
вроде `гладиатор` совпадают со множеством позиций, счётчик «в watchlist» раздувается
до неверного. Рабочее правило:
```python
if c == e["n"] or (e["o"] and c == e["o"]): # точное равенство, len(c) >= 4
```
Порядок эффекта: наивный подстрочный матч → 42 позиции / 811 ГБ «в watchlist»;
строгий → 29 позиций / 456 ГБ. Разница — целиком ложные срабатывания.
**Нормализация** (обе стороны сравнения, обязательна): снять расширение → `[...]` → `(...)` →
год → не-буквы → шум-слова (качество, релиз-группа, `web-dl`, `bdrip`, `x264`, `megapeer`,
`bluebird`, `hdrezka`, транслит-хвосты) → сжать пробелы. Для сериалов дополнительно
`strip_ep`: `S01E04`, `N серия`, `N выпуск`, `сезон N`.
🔴 **TMDB-ID в `watchlist.json` отдельным полем НЕ лежит.** Он в `href`:
`https://www.themoviedb.org/movie/424781` → `re.search(r"/(\d{2,9})/?$", href)`.
Попытка читать `item["tmdb_id"]` даёт `null` по всем 376 позициям.
### `missing.json` не пересекается с диском
Все 30 позиций из `missing.json` (маркер `❓`) — **рукописные заметки в списке**
(`Солярис Тарковский`, `Идиот Бортко`, `Замок Балабанов`, `Спрут сериал`),
а не скачанные файлы. Совпадений с диском — **0**.
Вывод: «недоступно в Lampa» для файлов на Кра́кене вызывается **отсутствием в watchlist**,
а не отсутствием в TMDB. Это разные причины, не смешивать.
### Где что лежит
```
Диск: /srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e82f/media/
(49e8f586 — symlink на него; отдельного диска нет, проверено docker inspect)
Артефакты инвентаризации на Mac:
/Users/admin/kraken-inventory.json — 233 позиции, полные поля
/Users/admin/kraken-inventory.csv — таблица для Excel
/Users/admin/kraken-dupes.json — 46 групп дублей
/Users/admin/kraken-table-AB.md — markdown A/B таблицы
```
Скрипты инвентаризации: `/tmp/kraken_inventory3.py` (финальный),
`/tmp/kraken_final.py` (дубли + сводка), `/tmp/kraken_break.py` (разбор папки).
### Кандидаты на удаление (по риск-уровню)
1. **`downloads/complete` (78.6 ГБ)** — нулевой риск, всё есть в библиотеке.
2. **Дубли `Life Is Beautiful`** — оставить одну из трёх копий.
3. **`documentaries*` вне watchlist (307 ГБ)** — доксериалы, нужен просмотр глазами.
4. **Всё не из watchlist (780 ГБ)** — включает `Oldboy`, `Project Hail Mary`, `F1`,
`The Cyberfarm`, `Brassic` — возможно нужное.
## ⏳ Осталось добить (2026-09-22)
### 0. 🔴 Удаление медиа на Кра́кене — ждёт выбора Alex
Инвентаризация сделана: [[personal/plans/kraken-media-inventory-cleanup]].
802 файла / 233 позиции / 1236 ГБ. Свободно 477 ГБ.
Предложены 3 варианта, ответа нет:
1. Только `downloads/complete` — **78.6 ГБ**, нулевой риск (всё есть в библиотеке).
2. + доксериалы вне watchlist — ~390 ГБ.
3. Всё не из watchlist — 780 ГБ.
**Порядок действий при любом варианте:** дамп `radarr`/`sonarr` API в файл →
удаление → проверка сырьём. Стект-директории (`movies-radarr`, `series-sonarr`)
удалять только через API, иначе Radarr держит фантом.
### 1. 5 фильмов с Кинопоиск-ID — «здесь пусто», без постера
`film/12432920/`, `film/5454868/`, `film/11888712/`, `film/11825624/`, `film/8184798/`
+26 -4
View File
@@ -45,6 +45,25 @@ related:
10. 🔴 **`luna-send` по SSH печатает хелп вместо ответа** — обернуть в `script -q -c "..." /tmp/o.txt`.
11. Фактический appId Lampa на ТВ — **`com.lampac.tv`** (не `org.lampa.tv` из запроса установки).
## Инвентаризация диска и удаление (добавлено 2026-09-22)
Полная таблица: [[personal/plans/kraken-media-inventory-cleanup]].
12. 🔴 **arr индексирует только 252 ГБ из 1236** (21%). Остальное — ручные закачки,
невидимые в UI Radarr/Sonarr. «Нет в Radarr» ≠ «нет на диске».
13. 🔴 **`downloads/complete/sonarr/` — завершённые раздачи, не удалённые после импорта.**
Байт-в-байт дубли библиотеки = **78,6 ГБ зря**. Самый безопасный кандидат на снос.
14. 🔴 **Матч с watchlist — только СТРОГОЕ равенство** нормализованных названий, `len >= 4`.
Подстрочный матч раздувает счёт: 42 позиции / 811 ГБ вместо реальных 29 / 456 ГБ.
15. 🔴 **В `watchlist.json` нет поля `tmdb_id`** — он в `href`
(`.../movie/424781`), вынимать регексом `/(\d{2,9})/?$`.
16. 🔴 **`missing.json` (30 позиций с `❓`) не пересекается с диском** — это рукописные
заметки в списке. «Недоступно в Lampa» для файлов = **нет в watchlist**, не «нет в TMDB».
17. Группировка 802 файлов: файлы в корне `movies`/`cartoons`/`documentaries` — каждая своя
позиция (иначе «Вивариум» 1,46 ГБ склеивается в группу на 135 ГБ).
18. Удаление только через API arr-стека; `deleteFiles=true` — проверять, что путь внутри
библиотеки. Дамп API в файл перед операцией.
## Установка Lampa на ТВ (сжато)
```bash
@@ -81,13 +100,16 @@ ssh kraken 'sudo rm -rf /srv/dev-disk-by-uuid-6194539b-03e0-4f33-986b-4da09834e8
## Не закрыто
- Лимит кэша TorrServer — дефолт. Рекомендуется ~20 ГБ.
- `init.conf` не смонтирован — правки через `docker exec` не переживают пересоздание контейнера.
- 🔴 Удаление медиа на Кра́кене — ждёт выбора Alex (3 варианта в
[[personal/plans/kraken-media-inventory-cleanup]], раздел «Что дальше»).
- Шаг 7 — watchlist в UI Lampa: [[personal/plans/lampac-watchlist-plugin]].
- Секции Watchlist внутри CUB-фида — инжект залит, приёмка в UI не подтверждена.
## Реальный скилл (файл)
`~/.hermes/hermes-whale/skills/devops/lampac-kraken-deploy/SKILL.md`
⚠️ **Скилл в файловой системе отстал от этой заметки** — в нём нет пунктов 9–11
(установка Lampa на ТВ по SSH, питфолл `luna-send`+`script`, фактический appId `com.lampac.tv`).
При следующей загрузке скилла — подтянуть из [[personal/tech/lampac-deployment]].
✅ **Синхронизирован 2026-09-22 (вечер).** Пункты 9–11 (установка Lampa на ТВ по SSH,
питфолл `luna-send`+`script`, appId `com.lampac.tv`) и новые 12–18 (инвентаризация диска,
дубли `downloads/complete`, строгий матч с watchlist, `tmdb_id` в `href`) перенесены
в файл скилла, включая раздел «Pillar: disk inventory & deletion candidates».