fix(backend): Download-Filter konnte ohne Titel- oder Kuenstlermerkmal zugreifen
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
1432a960fb
commit
06b13caea9
3 files changed
+111
-15
No files matched your search
@@ -217,6 +217,28 @@ Die Android-App zählt eigenständig weiter (mehrere APKs pro Release). Welche d
|
||||
erreichbar war) und zählt für die Seitenleiste jetzt zur Bibliothek statt zu Entdecken.
|
||||
|
||||
### Fixed
|
||||
- **Der Download-Filter konnte den falschen Titel speichern — zwei Löcher, ein Grund (Backend)** —
|
||||
gemeldet mit „銀髪の少年" (Yoshihisa Hirano, HUNTER×HUNTER) und „Dearly Beloved" (TPR): beide Male
|
||||
kam etwas anderes an.
|
||||
- **Die Kaskadenschritte 3 und 4 lassen die Künstlerprüfung fallen** — bewusst, damit
|
||||
Label-Kanäle durchkommen. Übrig bleibt dann Titel + Dauer. Bei „Dearly Beloved" reicht das
|
||||
nicht: es gibt Rocksongs, die genau so heißen, und einer davon lag im Dauerfenster.
|
||||
- **Für japanische Titel gab es überhaupt keine Titelprüfung.** `buildTitleKeywords` lieferte
|
||||
dafür eine leere Liste (japanische Titel haben keine Wortgrenzen, und Art Tracks sind oft
|
||||
romanisiert). Zusammen mit Schritt 3/4 blieb damit **allein die Dauer** übrig — und auf einem
|
||||
Soundtrack-Album passt fast jedes andere Stück desselben Komponisten in dasselbe Fenster.
|
||||
Genau das ist bei „銀髪の少年" passiert.
|
||||
- **Behoben in drei Schritten:** japanische Titel bekommen ein Muster aus *Originaltitel oder
|
||||
Romaji-Fassung* (Art Tracks tragen üblicherweise das eine oder das andere; Leerzeichen und
|
||||
Bindestriche bleiben frei, weil Uploader sie unterschiedlich setzen). Ein Schritt **ohne**
|
||||
Titelprüfung läuft jetzt immer **mit** Künstlerprüfung, egal was die Kaskade lockern wollte.
|
||||
Und japanische Künstlernamen werden gegen das `artist`-Feld geprüft — der Kanalname steht kaum
|
||||
je in Kanji, das Feld der Art Tracks dagegen schon; vorher hatten sie gar keine Prüfung.
|
||||
- Bleibt am Ende weder ein Titel- noch ein Künstlermerkmal übrig, wird **gar nicht gesucht**:
|
||||
ohne Merkmal landet sonst der erste Treffer passender Länge auf der Platte. Der Direktlink im
|
||||
Importer ist dafür der vorgesehene Weg.
|
||||
- Fünf neue Prüfungen in `backend/test/ytdlp.test.js` (59 grün), darunter „anderes Stück
|
||||
desselben Albums darf nicht passen".
|
||||
- **Das Mischen-Symbol zeigte nie an, dass es an ist (Android)** — und der Grund lag nicht in der
|
||||
Anzeige. `toggleShuffle` baute den Rest der Warteschlange als Schleife aus `removeMediaItem` +
|
||||
`addMediaItem` um; dazwischen hatte der Controller vorübergehend weniger Titel als unsere Liste.
|
||||
|
||||
Reference in new issue
Block a user