[2026-09-26] eagle: personal/plans/music-tags-review/music-tags-review.md personal/tech/music-tags-repair-truenas.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-26 19:56:08 +06:00
1 parent b290eec03b
commit 8199307531
2 files changed
+115 -2

No files matched your search

@@ -11,6 +11,53 @@ updated: '2026-09-26'
**К правке:** 6773 файлов · **без изменений:** 1133
> **⚠️ 25-я волна (2026-09-26): ИДЁТ ПОСТРОЧНОЕ РУЧНОЕ ЧТЕНИЕ. Прочитано 1–1401 из 7906 (~18%).**
>
> **Найдено в блоке 802–1401:**
> - **Обрезанный `album` — 29**: `Love Sensuality Devotion The G` (18, Enigma) →
> `Love Sensuality Devotion: The Greatest Hits`; `Le Roi Est Mort, Vive Le Roi` (11, потерян `!`).
> - **Обрезанные title — 5**: `Principles Of Lust - C: Sadene`, `Principles Of Lust (Sadness ..`,
> `Ancient Person Of My Heart (Le`, `Age Of Loneliness (Carly's S..`, `Back To The Rivers Of Belief..`
> — восстановлены по официальным названиям Enigma.
> - **Битые поля тестового файла — 1**: `title='ст Сабвуфера ¹1 Edit'` + `artist='Т'` →
> `Тест Сабвуфера №1 Edit` / `Тест Сабвуфера`.
> - **Битые поля от запятой — 1**: Сектор Газа `30 лет.mp3` дал `title='лет'` + `track=30` → `30 лет`.
> - **Опечатки — 3**: `Секторр Газа` (двойная `р`, 2 строки), `Against Me` (потерян `!`, 1).
>
> 🔴 **Инцидент 25-й волны:** собственная правка `patch` строки 1187 дала **12 полей вместо 11**
> (`Газовая атака,,,fix` вместо `,,fix`). Скрипт `fix_block1300.py` корректно отказался
> (`ABORT source [1187]`); починено inline-заменой `,,,fix,`→`,,fix,`. Подробности —
> [[personal/tech/music-tags-repair-truenas|tech/music-tags-repair-truenas]], 25-я волна.
>
> **⏭ ГДЕ ПРОДОЛЖАТЬ:** строка **1402**. Читать блоками по 200, править, сверять `7906 / 0 битых`,
> бэкап перед каждым скриптом. Файл по-прежнему НЕ ГОТОВ к применению на NAS.
> **⚠️ 24-я волна (2026-09-26): ИДЁТ ПОСТРОЧНОЕ РУЧНОЕ ЧТЕНИЕ. Прочитано 1–801 из 7906 (~10%).**
> Alex после третьего отказа принять «всё готово»: «Проходить весь список руками и валидировать.
> Ты заебал меня туда сюда тыркать!!!» Заведён `todo` на 8 блоков по ~1000 строк.
>
> **Найдено в блоке 1–801 (то, что НЕ ловят детекторы):**
> - **`Сборка Песни для детей` в `new_artist` — 165 строк** (имя папки-сборки выдано за исполнителя) → artist пусто.
> - **`Филосовские` → `Философские` — 97 строк** (опечатка в album папки Высоцкого).
> - **Номер приклеен к названию — 35**: `Трое из Простоквашино 8` → `Серия 8`,
> `Новые Бременские 17` → `Часть 17`, `Малыш и Карлсон 3` → `Часть 3`.
> - **Потерянная `й` — 6**: `печкои`→`печкой`, `друзеи`→`друзей`, `арство`→`царство`.
> - **Транслит в title — 8**: `Shelkunchik`, `Babushka metelica`, `Spyashaya krasavica`,
> `Muzikalniy magazinchik`, `Bremen Musicians`, `Podi tuda ne znayu kuda`.
> - **Битые поля от незакавыченной запятой — 2**: `title='король'` + `artist='Том'` → `Том - король`.
> - **Срезанный `path` — 1** (Голубой щенок), восстановлен.
> - **Классика — 11**: артист в title, непарная скобка, имя файла в title, `Бетховен к Элизе`.
> - Мелочи: точки в конце title (12, `Рецидивист.`), `Али-баба`→`Али-Баба` (7), `б.`/`1б.` в title (2),
> `Мультрек` в artist (3).
>
> 🔴 **Инцидент:** скрипт правки открыл CSV на запись, упал на битой строке 4640 и **обрезал файл
> до 4640 строк** → восстановлено из бэкапа. Все скрипты переведены на безопасный паттерн
> `tmp + валидация + os.replace()`; при битой строке в исходнике скрипт делает `ABORT`. Подробности —
> [[personal/tech/music-tags-repair-truenas|tech/music-tags-repair-truenas]], 24-я волна.
>
> **⏭ ГДЕ ПРОДОЛЖАТЬ:** строка **802**. Читать блоками по 200, править, сверять `7906 / 0 битых`,
> бэкап перед каждым скриптом. Файл по-прежнему НЕ ГОТОВ к применению на NAS.
> **⚠️ 23-я волна (2026-09-26): CSV обработан глубже, но всё ещё НЕ ГОТОВ к применению.**
> Добито то, что предыдущая волна оставила как «осталось»:
> - **`album` = `ГГГГ - Название`** (`2002 - Живой`, `1989 - Сектор Газа`) — **504 строки**, год снят