From 9aa1947568243b84e52993176a293bf672c45a34 Mon Sep 17 00:00:00 2001 From: Honey Date: Sun, 21 Jun 2026 16:44:26 +0200 Subject: [PATCH] Revert "fix(backend): keep source artist name as-is, no iTunes override" This reverts commit 1616d98fa61d2df2fc13aa049e0bb47ade427f05. --- backend/novasonic-server.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/backend/novasonic-server.js b/backend/novasonic-server.js index e7a4fd0..223e9a0 100644 --- a/backend/novasonic-server.js +++ b/backend/novasonic-server.js @@ -600,8 +600,8 @@ app.post('/api/download', async (req, res) => { if (!meta.trackNum && genreMeta.trackNum) { meta.trackNum = genreMeta.trackNum; } } } - // Keep source (Spotify) artist name as-is — no iTunes override - const result = await downloadTrack({ jobId, artist, rawArtist: artist, title, ...meta, sourceUrl: sourceUrl || sp.sourceUrl || undefined }); + const finalArtist = meta.itunesArtistName || artist; + const result = await downloadTrack({ jobId, artist: finalArtist, rawArtist: artist, title, ...meta, sourceUrl: sourceUrl || sp.sourceUrl || undefined }); if (result?.skipped) { updateJob(jobId, { status: 'done', progress: 100, message: 'Bereits vorhanden – übersprungen', skipped: true }); } else if (result?.notFound) { @@ -688,13 +688,14 @@ app.post('/api/download', async (req, res) => { log(jobId, `📋 iTunes: "${trackArtist} – ${trackTitle}"`); itunes = await lookupItunesTrackMeta(searchArtist, itunesTitle); } - // Keep source (Spotify) artist name as-is — no iTunes override. - // iTunes collectionArtistName is used as albumArtist for consistent album grouping. + // Prefer iTunes-resolved name (from server lookup or frontend enrichment) for sort tags / folders. + // trackArtist stays as rawArtist for main tags and YTM search. + const resolvedArtist = itunes.itunesArtistName || track.itunesArtistName || trackArtist; return downloadTrack({ jobId, - artist: trackArtist, - rawArtist: trackArtist, - albumArtist: itunes.albumArtist || trackArtist, + artist: resolvedArtist, // iTunes English name → used for sort tags + folder names + rawArtist: trackArtist, // original Spotify/Japanese name → used for main tag + YTM search + albumArtist: resolvedArtist, title: trackTitle, album: itunes.album || track.collectionName || track.album || '', year: itunes.year || (track.releaseDate ? new Date(track.releaseDate).getFullYear() : undefined) || track.year,