# Кра́кен — медиа-инвентаризация: сводка фактов > Рабочий конспект к `personal/plans/kraken-media-inventory-cleanup.md`. > Создан 2026-09-22, потому что persistent memory переполнена (2977/3000 chars). ## Цифры | Показатель | Значение | |---|---| | Диск | `6194539b-03e0-4f33-986b-4da09834e82f` = 1,8 ТБ, занято 1,3 ТБ, свободно **477 ГБ** | | `49e8f586-3839-4c5d-a1e1-58bfc3579ade` | **symlink** на `6194539b`, не отдельный диск | | Файлов | 802 видеофайла | | Позиций (тайтлов) | 233 | | Всего | 1 236 ГБ | | Индексирует Radarr/Sonarr | **252 ГБ (21%)** | | В watchlist (до фикса матчинга) | 29 позиций / 456 ГБ | | В watchlist (после фикса) | ≥ 33 позиции / ~483 ГБ | | Не в watchlist | 204 позиции / 780 ГБ | | Точных дублей файлов | 46 групп / **89,2 ГБ** | | `downloads/complete` дубли | 64,8 ГБ | ### По папкам | Папка | Файлов | ГБ | В arr | |---|---|---|---| | `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 | ❌ | | `documentaries` | 25 | 71.9 | ❌ | | `series` | 6 | 3.6 | ❌ | ## Копии на TrueNAS — проверено | Папка TrueNAS (`/mnt/RED_2TB/storage/`) | Содержимое | |---|---| | `documentaries` | **1 файл** — `Храброе сердце.avi` (2,18 ГБ) | | `documentaries-series` | **ПУСТО** | | `cartoons-series` | **1 сборник** — `Kazaki` (2,62 ГБ) | | `Cartoons` | **966 файлов / 191 ГБ** | | `Movies` | 804 файла / 2 032 ГБ | | `series` | 71 файл / 55,8 ГБ | 🔴 **307 ГБ доксериалов/документалок на Кра́кене — единственная копия.** Копий на TrueNAS нет. 🔴 **Мультфильмы — частично.** TrueNAS `Cartoons` покрывает ~40 названий: Смешарики (DVDRemux 207 файлов/61,6 ГБ), Tom and Jerry (163/15,3), Pinky and the Brain (114/24,9), Малышарики (256/5,6), Мимимишки (120/5,2), Ну погоди (22/2,8), Леопольд (11/1,0), 38 Попугаев (10/0,6), Простоквашино (3), Винни Пух (3), Чебурашка (4), Котенок по имени Гав (4), Неуловимый Фунтик (4), Принцесса Мононоке, Ходячий замок, Мой сосед Тоторо, Книга Джунглей, Полярный экспресс, Король Лев, Аладдин ×3, Бэмби I–II, Ледниковый период, Золушка, Русалочка, Кунг-фу Панда, Мадагаскар 2, Белка и Стрелка, Труп невесты, Балерина, Аисты, Рапунцель, Тачки, Фердинанд, Роджер Рэббит, Аленький цветочек, Пиф-паф, Вовка, Жил-был пёс, Как львёнок и черепаха, Бобик в гостях у Барбоса. ~90 названий только на Кра́кене: ёжик в тумане, мойдодыр, снежная королева 1957, двенадцать месяцев, чиполлино, сказка сказок, золотая антилопа, дюймовочка, маугли 1973, остров сокровищ 1988, волшебник изумрудного города, Доктор Айболит, капитан Врунгель, кот в сапогах 2011, lightyear, inside out, luca, миграция, encanto, elemental, turning red, Super Mario, despicable me 4, король лев 1994 + ~80 короткометражек советской анимации. ## 🔴 Грабля матчинга `watchlist.json` item: `{name (рус), original, year, rating, image, href}`. **tmdb_id отдельным полем ОТСУТСТВУЕТ** — брать из `href` = `https://www.themoviedb.org/movie/NNN`. 🔴 Файлы названы по-английски (`Bram.Stoker's Dracula.1992.mkv`, `The.Crow.1994...`, `despicable.me.4.2024...`, `Вивариум_2019_BDRip`) → матчить **с `original`**, не только с русским `name`. Иначе «не в watchlist» ложно. Пропущено мной до фикса (в watchlist, а я их не нашёл): | Файл | ГБ | В watchlist | |---|---|---| | `Bram.Stoker's Dracula.1992` | 18.04 | Дракула / Bram Stoker's Dracula, TMDB 6114 | | `The.Crow.1994` | 17.45 | Ворон / The Crow, TMDB 9495 | | `despicable.me.4.2024` | 2.18 | Гадкий я 4, TMDB 519182 | | `Вивариум_2019_BDRip` | 1.46 | Вивариум / Vivarium, TMDB 458305 | 🔴 **Подстрочный/токенный матч даёт мусор:** - одиночный `Вивариум_2019_BDRip.avi` (1,46 ГБ) раздувался в группу 135 ГБ / 36 файлов; - `пингвины. шпион в толпе` → `Шпион` / Spy (2015); - `the secret life of elephants` → `Список заветных желаний` / The Life List. 🔴 **Год проверять ±1:** `inside out (2015)` vs watchlist `Головоломка 2` (2024) — РАЗНЫЕ фильмы. Oldboy (2003) и Project Hail Mary (2026) — **в watchlist отсутствуют**, хотя есть в Radarr. ## Артефакты (Mac) | Файл | Что | |---|---| | `/tmp/kraken_files.tsv` | сырьё: `size\tpath`, 802 строки | | `/Users/admin/kraken-inventory.json` | полные данные (top/title/files/size_gb/in_watchlist/wl_names/tmdb_ids/cands/path) | | `/Users/admin/kraken-inventory.csv` | то же таблицей | | `/Users/admin/kraken-not-in-watchlist.md` | список 204 позиций | | `/Users/admin/kraken-dupes.json` | 46 групп дублей | | `/Users/admin/kraken-vs-truenas.json` | сверка с TrueNAS | | `/Users/admin/kraken-table-AB.md` | таблица A/B | ## Скрипты | Скрипт | Назначение | |---|---| | `/tmp/kraken_inventory3.py` | группировка файлов в позиции + матч с watchlist | | `/tmp/kraken_fix2.py` | точный матч по `original` (латинская фраза из имени файла) | | `/tmp/kraken_final.py` | дубли по (имя файла, размер) | | `/tmp/tn_inv.sh` | инвентаризация TrueNAS `storage/*` | | `/tmp/tn_load.py load` | загрузка листинга TrueNAS | | `/tmp/tn_compare.py` | сверка Кра́кен ↔ TrueNAS (⚠️ медленный, только `cartoons*`/`documentaries*`) | ## Уроки 1. 🔴 **Токенный матч названий — не работает.** Только строгое равенство нормализованных строк либо сравнение с полем `original` + проверка года. 2. 🔴 **Одиночный файл в корне папки — отдельная позиция**, не часть группы. Иначе 1 файл 1,46 ГБ раздувается в 135 ГБ. 3. 🔴 **`downloads/complete` — staging, а не дубли «вообще».** Совпадение проверять по (имя файла + размер), не по названию тайтла. 4. 🔴 **Не подтверждать «копия есть» по папке с похожим именем.** TrueNAS `documentaries` (1 файл) ≠ Кра́кен `documentaries` (25 позиций). 5. 🔴 **Watchlist на Кра́кене проверять по хэшу**, не по дате. `watchlist.json` остался `f3ad677a0fdbf36104b708ec5b8dd114` после «обновил» → правка не залилась. Боевой `.md` = `$H/obsidian/family/documents/movies-watchlist.md` (НЕ внутри `$H/lampac/`).