beetbox/beets

tidal: honor manually entered artist and album search terms

开放

#6,795 创建于 2026年6月28日

 (2 条评论) (0 个反应) (0 位负责人)Python (1,837 个派生)batch import
good first issue

仓库指标

星标
 (12,133 个星标)
PR 合并指标
 (平均合并 26天 4小时) (30 天内合并 51 个 PR)

描述

Problem

The Tidal plugin ignores the artist and album entered through the importer's Enter search action. Beets passes these values to TidalPlugin.candidates(), but the plugin builds its queries from the existing item tags via _album_queries(items) instead.

This makes manual search repeat the original, incorrect search when users are trying to correct bad or missing tags. The singleton path has the same problem: item_candidates() ignores its artist and title arguments and uses _item_queries(item).

To reproduce:

  1. Enable the Tidal plugin and import an album with incorrect artist or album tags.
  2. Choose Enter search.
  3. Enter a different artist and album.
  4. Observe that Tidal searches using the original tags rather than the entered values.

Expected behavior

Tidal should use the manually entered artist and album or track title when Beets supplies explicit search terms.

Suggested fix

Build Tidal text queries from the artist and album/title arguments accepted by candidates() and item_candidates(), while retaining barcode and ISRC lookup precedence. Add focused regression tests proving that explicit search terms override item metadata for both albums and singletons.

贡献者指南