Files
av a2d8140e22 recognition: глобальный переключатель языка вывода [general].language
- новое поле [general].language (ru|en, дефолт en) — единый источник языка
  локализованного title детектора и локали запросов к метабазам; original_title
  всегда на языке оригинала
- локаль TMDB (поиск + credits) выводится из него, [metadata.tmdb].language убран
- промпт LLM явно задаёт язык title с fallback на оригинал
2026-07-24 14:09:04 +03:00

37 lines
2.6 KiB
Markdown

## MODIFIED Requirements
### Requirement: Локаль запроса к TMDB
Локаль запросов к TMDB SHALL выводиться из глобальной настройки `language`
(`ru`|`en`, дефолт `en`): `ru``ru-RU`, `en``en-US`. Отдельной настройки
локали у TMDB быть SHALL NOT — глобальный `language` единственный источник.
Эту локаль система SHALL передавать параметром `language` как в запрос поиска,
так и в запрос credits (режиссёр). На стороне поиска локаль влияет ТОЛЬКО на
локализованное поле `Title`/`Name`; поле `original_title`/`original_name`
остаётся на языке оригинала, поэтому оригинальная сторона сравнения не
затрагивается. На стороне credits передача локали — best-effort: имена людей
провайдер локализует не всегда, при отсутствии перевода имя остаётся на языке
оригинала, и это не проваливает выборку режиссёра.
#### Scenario: Локаль по умолчанию — английская
- **GIVEN** TMDB включён, глобальный `language` не задан в конфиге
- **WHEN** выполняется поиск фильма
- **THEN** запрос содержит `language=en-US`
- **AND** в кандидате `Title` приходит на английском, а `OriginalTitle` — на языке оригинала
#### Scenario: language=ru даёт русскую локаль
- **GIVEN** TMDB включён, глобальный `language` = `ru`
- **WHEN** выполняется поиск фильма с русской локализацией
- **THEN** запрос содержит `language=ru-RU`
- **AND** в кандидате `Title` приходит на русском, а `OriginalTitle` — на языке оригинала
#### Scenario: Локаль передаётся и в запрос режиссёра
- **GIVEN** подтверждённый матч TMDB и глобальный `language` = `ru`
- **WHEN** выполняется запрос credits за режиссёром
- **THEN** запрос содержит `language=ru-RU`
- **AND** при отсутствии локализованного имени режиссёр остаётся на языке оригинала, выборка не проваливается