[2026-09-27] eagle: personal/plans/music-artist-albumartist-repair.md personal/plans/music-artist-albumartist-repair.md.bak-verify-v3-20260927 personal/tech/music-tags-repair-truenas.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-27 21:14:41 +06:00
1 parent 82c99f2886
commit e177d11aac
3 files changed
+420 -5

No files matched your search

+14 -2
View File
@@ -26,13 +26,25 @@ related:
> ## 🔴 АКТУАЛЬНОЕ СОСТОЯНИЕ (2026-09-27, сессия 29-ОКТИ) — ЧИТАЙ ЭТО ПЕРВЫМ
>
> ✅ **КАНОННЫЙ ДИФФ v3 СОБРАН И ЗАКРЫТ:** `~/Downloads/music-tags/DIFF-base-vs-applyplan-v3.csv`
> — **945 записей**, `md5 bdb20c6ae00e7dfab4da2f76653fe084`. Поля: `album` 28 ·
> `albumartist` 6 · `genre` 427. `track` — **0** (весь блок убран как шум, см. ниже).
> — **945 записей** (`ПАПКА` 711 · `ТРЕК` 234), `md5 bdb20c6ae00e7dfab4da2f76653fe084`.
> Поля: `album` 28 · `albumartist` 6 · **`genre` 911 групп / 427 уникальных имён**.
> `track` — **0** (весь блок убран как шум, см. ниже).
> База 7861 ↔ план 7861, сопоставлено 7861, **не найдено 0** (фильтр `path NOT LIKE 'backup%'`).
> Источник: `/tmp/apply-plan-v3.csv` (7861, из `new_*` `APPLY-PLAN.csv` + правило корня;
> **31 правка**, лог с колонкой `reason` — `~/Downloads/music-tags/APPLY-PLAN-v3-changes.csv`).
> Сборщик: `/tmp/build_canon_diff_v3.py`.
>
> 🔴 **ВЕРИФИКАЦИЯ v3 (2026-09-27) — dry-run НЕ ЗАПУЩЕН, 3 расхождения.** Полный разбор —
> [[personal/plans/music-artist-albumartist-repair]] § ВЕРИФИКАЦИЯ v3 ПЕРЕД DRY-RUN.
> Коротко: (1) **лог `APPLY-PLAN-v3-changes.csv` УСТАРЕЛ** — писался до `fix_ruki.py`/
> `fix_rockopop_track.py`, 3 строки врут (`Руки` вместо `Руки вверх`, `!rock_o_pop` вместо
> `rock_o_pop`), **эталон — план**; (2) **`genre` в диффе не выдержан по `scope`** —
> 211 из 234 ТРЕК-строк дублируют `new_genre`, 7 одиночек в `!Radio/w 2008-07` не добраны,
> 711 ПАПКА-строк дают 585 ключей `(folder,field)` ⇒ 126 лишних; (3) 🔴 **цифры dry-run
> НЕ МОГУТ совпасть с диффом: дифф = ГРУППЫ (`genre 911`), dry-run = ФАЙЛЫ (`genre 4359`).**
> Вопрос к Alex: эталон — план или дифф; схлопывать ли 126 лишних строк. Скрипты:
> `/tmp/verify_v3.py` · `/tmp/verify_v3b.py` · `/tmp/verify_v3c.py`.
>
> 🔴 **ДЕФЕКТ СОРТИРОВКИ (найден Alex: «почему сортировки по филду нету в диффе») — ИСПРАВЛЕН.**
> Сортировка обязана быть **ПО АЛФАВИТУ**: `album → albumartist → artist → genre → title → track`,
> т.е. **`album` ПЕРЕД `albumartist`**. Скрипт писался с нуля и взял ЛОГИЧЕСКИЙ список