autotag: do not sync joined artist to artists field

This commit is contained in:
Šarūnas Nejus 2026-01-07 08:58:33 +00:00
parent 6173fa7f79
commit 08531ee9cb
No known key found for this signature in database
2 changed files with 13 additions and 1 deletions

View file

@ -70,7 +70,15 @@ def correct_list_fields(input_data: JSONDict) -> JSONDict:
def ensure_first_value(single_field: str, list_field: str) -> None:
"""Ensure the first ``list_field`` item is equal to ``single_field``."""
single_val, list_val = data.get(single_field), data.get(list_field, [])
single_val, list_val = (
data.get(single_field) or "",
data.get(list_field, []),
)
if single_val not in list_val and set(single_val.lower().split()) & set(
map(str.lower, list_val)
):
return
if single_val:
data[list_field] = unique_list([single_val, *list_val])
elif list_val:

View file

@ -258,6 +258,10 @@ class TestOverwriteNull:
("1", ["1", "2"], ("1", ["1", "2"])),
("1", ["2", "1"], ("1", ["1", "2"])),
("1", ["2"], ("1", ["1", "2"])),
("1 ft 2", ["1", "1 ft 2"], ("1 ft 2", ["1 ft 2", "1"])),
("1 FT 2", ["1", "1 ft 2"], ("1 FT 2", ["1", "1 ft 2"])),
("a", ["b", "A"], ("a", ["b", "A"])),
("1 ft 2", ["2", "1"], ("1 ft 2", ["2", "1"])),
],
)
def test_correct_list_fields(