From 751e63014c2dfa90ead130237f0e242224ee6898 Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Sun, 27 Sep 2026 13:53:54 +0600 Subject: [PATCH] [2026-09-27] eagle: personal/plans/music-artist-albumartist-repair.md --- .../plans/music-artist-albumartist-repair.md | 97 +++++++++++++++++-- 1 file changed, 91 insertions(+), 6 deletions(-) diff --git a/personal/plans/music-artist-albumartist-repair.md b/personal/plans/music-artist-albumartist-repair.md index 82d4fb0e..6fc25f62 100755 --- a/personal/plans/music-artist-albumartist-repair.md +++ b/personal/plans/music-artist-albumartist-repair.md @@ -4,7 +4,7 @@ created: '2026-09-27' updated: '2026-09-27' type: plan namespace: personal -status: session2-diff-3594-rows-album-normalized-sbornik-filled-kids-letters-open +status: session3-done-0-empty-fields-diff-3595-rows tags: - music - metadata @@ -49,8 +49,9 @@ related: > | `APPLY-PLAN2.csv` (12:03) | `archive/APPLY-PLAN-v0-20260927-1203.csv` | устаревший | > | `tag-fix-plan.csv` | — | ✅ **база 38-го прогона — источник для диффа, НЕ ПРАВИТЬ** | > -> ⚠️ MD5 боевого файла **изменился** после правок сессии 2 — актуальное значение -> в разделе «🔷 СЕССИЯ 2» в конце документа. Старый `245efb55...` более не верен. +> ⚠️ MD5 боевого файла **изменился** после правок сессий 2 и 3 — актуальное значение +> в разделе «🔷 СЕССИЯ 3» в конце документа: **`bb724716c7ffe45619b76abbb3deb5cc`**. +> Старые `245efb55…`, `8367084e…` более не верны. Пустых полей в плане — **0**. > > Снимок каталога перед переименованием: `/Users/admin/Downloads/music-tags/milestones/music-csv-BEFORE-RENAME-20260927-124542.tar.gz`. > @@ -2048,16 +2049,100 @@ c4634265… + fix_puhdys (18) `-puhdys`, `-fillall`, `-prefix`, `-subs`, `-2009-04`, `-radio2`, `-radiofmt`, `-retro`, `-rockopop`, `-klassika`. -### ⏳ НЕ ЗАКРЫТО +## 🔷 СЕССИЯ 3 (2026-09-27, ночь): ЗАКРЫТИЕ ПУСТЫХ ПОЛЕЙ + +### Задача Alex + +> «исправляй что не исправлено. `z Другое, Enigma, Ленинград` — такой альбом не нужен. +> там что в корне лежит, к чему это правка применяется?» +> Затем: «у всех треков из 7.8к теперь есть album/albumartist?» → «**блядь поправь пустые!**» + +### Вопрос Alex: «что в корне `z Другое, Enigma, Ленинград`?» + +**Ответ (факт из CSV):** в корне лежат **3 файла**, из них 2 затронуты правкой: +``` +Красная плесень - На дискотеку сельскую.mp3 cur_album='' → new_album=имя папки +Красная Плесень - Заебал мой кот.mp3 cur_album='Ñîñíè ïîïñà' (мойибаке) +!Дерьмо Моржа.mp3 не тронут (свой альбом) +``` +Папка `z Другое, Enigma, Ленинград` — **КАТЕГОРИЯ**, не альбом: внутри подпапки +`Сектор Газа/`, `Красная Плесень/`, `Саундтреки/`, `Pushnoy.ru/`, `Ленинград/`, `Классика/`. +Одноимённого альбома в дереве Красной Плесени НЕТ → первой правкой поставил `album=''`, +затем по указанию Alex заменил на **`Сосни попса`** (такой альбом есть у Красной Плесени). + +### 🔴 ПИТФОЛЛ: «пустой `new_artist`» — сначала сказал неверно + +Первая проверка печатала «new_artist: empty=1» по фильтру `not value.strip()`. Файл: +`!Pop, Club, Любэ/!Radio/t 2009-07 c6Or_NICK/10 Boom (Bimbo Jones Mix).mp3`, +`cur_artist = 'ÿþd'` — обрывок UTF-16 (BOM `ÿþ` + `d`). **Это не пусто, а мусор.** +Alex: «`(проверю какой именно — сейчас назову)` — шо??» — т.е. расплывчатый ответ раздражает. + +**Правило: не откладывать поиск. Назвать файл сразу, в том же ответе.** + +Позже (уже после правки `album`) фильтр `not value.strip()` дал `''` — потому что +предыдущий прогон этой же чистки уже записал туда `''`. Итог: `new_artist = 'Bimbo Jones'`. + +### Внесённые правки (сессия 3) + +| # | Что | Файлов | Значение | +|---|---|---:|---| +| 1 | Детские буквенные папки → `album` | **165** | `Сборка Песни для детей` | +| 2 | Корень `z Другое…` — Красная Плесень | 2 | `Сосни попса` | +| 3 | `!Radio/…/10 Boom (Bimbo Jones Mix).mp3` | 1 | `new_artist = 'Bimbo Jones'` | + +**Детские буквенные папки — раскладка (165):** +``` +M 30 · 2 28 · L 24 · 1 23 · Y 21 · C 12 · K 12 · P 12 · Les 3 +``` +Все → **одно общее значение `Сборка Песни для детей`** (решение Alex: одно значение на все буквы). + +### ✅ ИТОГ: пустых полей НОЛЬ + +``` +new_album 0 +new_albumartist 0 +new_artist 0 +new_title 0 +new_genre 0 +``` + +``` +APPLY-PLAN.csv 7861 строка md5 bb724716c7ffe45619b76abbb3deb5cc +DIFF-new-vs-38.csv 3595 строк md5 5d1349669a75261867ab27360aadca02 +tag-fix-plan.csv не тронут +``` + +**Цепочка MD5 (продолжение):** +``` +8367084e… конец сессии 2 +f2f893b8… + детские (165) + z Другое → пусто (2) +bb724716… ⬅ ТЕКУЩИЙ, + Сосни попса (2) + Bimbo Jones (1) +``` + +Бэкапы: `.bak-before-childfix-`, `.bak-before-finalempty-20260927-134959`, +`.bak-before-artistempty-20260927-135034`. + +Дифф вырос 3593 → **3595** строк: +2 = переезд двух файлов Красной Плесени +(`album=''` → `Сосни попса`); `artist d → Bimbo Jones` схлопнулся в запись папки. + +### 🔴 СЛЕДУЮЩИЙ ШАГ (назван Alex сам) + +> «открыть `DIFF-new-vs-38.csv` и глазами пройтись по `field=album` (87 папок) — +> там все осмысленные решения, остальное (`track` 1079, `genre` 840) это шум формата.» + +--- + +### ⏳ НЕ ЗАКРЫТО (обновлено конец сессии 3) | # | Вопрос | Статус | |---|---|---| -| 1 | **Детские буквенные папки** — `1`, `2`, `C`, `K`, `L`, `Les`, `M`, `P`, `Y` (165 файлов, `!Детские/Сборка Песни для детей`) — `album` = одна буква | ⏳ ждёт значения Alex (вероятно единый `Сборка Песни для детей`) | +| 1 | **Детские буквенные папки** — `1`, `2`, `C`, `K`, `L`, `Les`, `M`, `P`, `Y` (165 файлов) — `album` = одна буква | ✅ **закрыт в сессии 3** → единый `Сборка Песни для детей` | | 2 | `track = '238'` у 56 файлов (`Красная Плесень/Золушка`) | ⏳ верное значение неизвестно | | 3 | `track` пуст у 1438, из них **9 с непустым `cur_track`** → тег `TRCK` будет УДАЛЁН | ⏳ решение Alex | | 4 | `3 SHANSON` в библиотеке не встретился (0 файлов) — правило готово | — | -| 5 | `Rammstein/misc` — 3 файла, `album` стал `Rammstein - misc` | ✅ закрыт правкой #11 | +| 5 | `Rammstein/misc` — 3 файла, `album` стал `Rammstein - misc` | ✅ закрыт правкой #11 сессии 2 | | 6 | Боевой прогон `--apply --verify` | 🔴 не запущен | +| 7 | Контейнер `snapcur` на NAS (только чтение, `:ro`) | ⏳ не убран — Alex не подтвердил удаление | ### Прочие питфоллы сессии