[2026-09-26] eagle: personal/plans/tagwriter-container.md personal/tech/music-tags-final-review.md personal/tech/music-tags-repair-truenas.md
This commit is contained in:
1 parent
b22d3c7037
commit
7a99bd5110
3 files changed
+111
-33
No files matched your search
@@ -47,6 +47,16 @@ _Обновлено: 2026-09-26 (волна 38). Источник: `~/Downloads/
|
||||
> Скрипты `fix_wave38_p2p3.py`, `fix_wave38_p4.py` идемпотентны (повтор = 0);
|
||||
> `rebuild_summaries.py` идемпотентен (shasum совпал).
|
||||
> ⚠️ Открыто (решение Alex, не трогаем): 136 пар дублей `(album, track)` — папки не удалять/не переименовывать.
|
||||
>
|
||||
> ⏭ **СЛЕДУЮЩИЙ ШАГ — применение тегов:** контейнер `tagwriter`
|
||||
> ([[personal/plans/tagwriter-container]]): `python:3.12-alpine` + mutagen, uid `950:950`,
|
||||
> монтирует `/mnt/RED_2TB/storage/Music` → `/music`. Скрипт `apply_tags.py`
|
||||
> (`--backup` → `--dry-run` → `--apply` → `--readback`), ID3v2.3 UTF-16, аудио не пересжимается.
|
||||
> 🔴 **БЛОКЕР:** `/mnt/RED_2TB/docker/` принадлежит **root**, uid 950 туда не пишет,
|
||||
> `sudo` требует пароль. Ждёт решения Alex (создать папку / собирать в `/tmp`).
|
||||
> Факты окружения: python3 на хосте NAS есть (3.11.9), но **нет pip/ensurepip/venv**;
|
||||
> mutagen нет нигде; ffmpeg только в `immich-server` (музыки не видит); `/storage/Music` видят
|
||||
> `jellyfin`/`radarr`/`sonarr`/`transmission` — чужое не трогаем. Music = 48 ГБ, свободно 960 ГБ.
|
||||
|
||||
> ## 🔍 38-я волна — ФИНАЛЬНЫЙ АУДИТ CSV («список на переименование»)
|
||||
>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Music Tags Repair — TrueNAS 7906 файлов
|
||||
title: Music Tags Repair — TrueNAS 7906 → 7905 файлов
|
||||
created: '2026-09-26'
|
||||
updated: '2026-09-26'
|
||||
type: tech
|
||||
@@ -17,6 +17,8 @@ related:
|
||||
- '[[family/how-to/jellyfin-config]]'
|
||||
- '[[family/projects/media-toolbox-taiga]]'
|
||||
- '[[personal/tech/music-tags-rename-audit]]'
|
||||
- '[[personal/plans/music-tags-wave38-fixes]]'
|
||||
- '[[personal/plans/tagwriter-container]]'
|
||||
---
|
||||
|
||||
# Music Tags Repair — TrueNAS (7906 → 7905 файлов)
|
||||
@@ -41,6 +43,41 @@ related:
|
||||
> | P3. Техпапка в `new_album` | 1 | `Король и Шут/Танец гения`: `New` → пусто |
|
||||
> | P4. `new_title='Часть N'` | 25 | `Новые Бременские` 19 → `Серия N`; `Малыш и Карлсон` 6 → название сказки |
|
||||
>
|
||||
> ### ✅ ДОП. ПРАВКИ ТОЙ ЖЕ ВОЛНЫ
|
||||
>
|
||||
> | Класс | Объём | Фикс |
|
||||
> |---|---:|---|
|
||||
> | Строка `НАШЕСТВИЕ 2009` (нет файла на диске) | 1 | ✅ удалена (`fix_wave38_nashestvie.py`); **база 7906 → 7905** |
|
||||
> | `часть N` в `new_album` | 77 | ✅ убрано (`fix_wave38_chast.py`): `Избранное I/II`, `Сделано в России` (Ария 1–20), `Триллер`, Окуджава, Магомаев |
|
||||
>
|
||||
> ⚠️ **Побочная находка:** `ДДТ/Гори, гори.mp3` имел `cur_album='Сделано в России'` — **чужой тег
|
||||
> от граббера**, попадал в альбом Арии. Урок: `cur_album` при группировке проверять по папке файла.
|
||||
>
|
||||
> ### 🔴 `НАШЕСТВИЕ 2009` — «открытый вопрос», которого не было
|
||||
>
|
||||
> Ассистент вынес строку как «ждёт решения Alex». Alex: **«Нашествие блядь удалили!!! Тебе в 10й
|
||||
> над повторить надо?!»** Файла нет на диске (волна 35, `os.walk`), действие уже стояло
|
||||
> `dropped (file removed by user)` — Alex сказал удалить **ещё в 10-й волне**.
|
||||
> **Урок: перед любым «ждёт решения» — `grep` по техдоку. Повторный симптом = открыть ФАЙЛ.**
|
||||
>
|
||||
> ### 📊 ИТОГ 38-Й ВОЛНЫ (финальные числа)
|
||||
>
|
||||
> | Показатель | Значение |
|
||||
> |---|---:|
|
||||
> | `tag-fix-plan.csv` | **7905** строк (было 7906), 11 колонок, **0 битых** |
|
||||
> | `artists-single-track.csv` | **653** |
|
||||
> | `artists-multi-track.csv` | **7224** |
|
||||
> | Сумма со skip | **653 + 7224 + 28 = 7905** ✅ |
|
||||
> | Строк не в сводках | **0** |
|
||||
> | `часть` в album / `Часть N` в title / `New` в album | **0 / 0 / 0** |
|
||||
>
|
||||
> Скрипты (все идемпотентны): `fix_wave38_p2p3.py`, `fix_wave38_p4.py`, `fix_wave38_nashestvie.py`,
|
||||
> `fix_wave38_chast.py`, `fix_wave38_aria.py`, `fix_wave38_gorigori.py` + правка `rebuild_summaries.py`.
|
||||
> Бэкапы: `bak-wave38-p2p3`, `-p4`, `-nashestvie`, `-chast`, `-chast2`, `-gorigori`.
|
||||
>
|
||||
> ⏭ **Дальше:** применение тегов через контейнер `tagwriter` — [[personal/plans/tagwriter-container]].
|
||||
> Блокер: `/mnt/RED_2TB/docker/` root-owned, uid 950 не пишет, sudo требует пароль.
|
||||
>
|
||||
> ### 🔴 ПИТФОЛЛ: sentinel-группа собирается по КОРНЮ сборника, НЕ по ближайшей папке
|
||||
>
|
||||
> Первая версия правки группировала пустой `artist` по `parts[-2]` →
|
||||
|
||||
Reference in new issue
Block a user