FOXA-3196 : le repli respecte la langue audio préférée #1013
No reviewers
Labels
No labels
montee-majeure
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
foXaCe/NuvioTV!1013
Loading…
Reference in a new issue
No description provided.
Delete branch "passe-20261018-174500-languerepli"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Résumé
FOXA-3196 — le remplacement de source après un rapport respecte la langue audio préférée.
dac8ecfc7FOXA-3196 : le repli respecte la langue audio prefereePourquoi
Le bouton rapport remplace la source via
basculerSurSignalement, qui passe par le classement durepli. Ce classement ne connaissait que
vffDevant— un départage entre variantes françaises(VFF avant VFQ) — et ignorait la langue choisie par l'utilisateur. La liste affichée, elle, la
respecte :
orderAddonStreams(..., prefereAudioFrancais).Conséquence : une source en VF pouvait être servie à la place d'une VO préférée après un
signalement. C'est « il choisit au hasard, sans respecter la langue ».
⚠ Rien n'est réinventé. La préférence se calcule avec
OrdreLangueAudio.demandeDuFrancais(déjà utilisée par les appelants) et l'ordre se fait avec
OrdreLangueAudio.reordonner— la mêmefonction que le tri des groupes d'addons. Ce qui manquait était le câblage : la préférence
n'était pas portée par
ReglesDuChoixAuto.Ce qui change
ReglesDuChoixAuto.prefereAudioFrancaisreglesDepuisdepuis les réglagesordonnerPourLeRepli(candidats, regles)List<Stream>.ordonneParLanguePreferee()Le tri est stable et ne retire rien : les règles du mode (qualité, motif, premier jouable)
s'appliquent ensuite, à l'intérieur de chaque groupe de langue.
Ce qui a été mesuré
5 tests :
assertSame— pas de réordonnancement fantômereglesDepuisavecpreferredAudioLanguage = "fr"→ vrai,"en"→ fauxSuite complète rejouée : verte en 8m37s. detekt : vert.
Ce banc mesure le choix, pas la boîte : la preuve « signaler puis vérifier la langue servie »
demande la Freebox. Le ticket la demandait aussi, et elle reste à faire côté opérateur.
Porte jouée par la forge : « Porte / porte* » est le seul contexte qu'exige la protection de
main.Scope boundaries
orderAddonStreams(la liste affichée) n'est pas modifié : son tri existait déjà, et le grouped'addons appelle maintenant la même fonction plate que le repli. Aucun autre mode de sélection n'est
touché.
Le bouton rapport remplace la source via `basculerSurSignalement`, qui passe par le classement du repli. Ce classement ne connaissait que `vffDevant` — un departage entre variantes FRANCAISES — et ignorait la langue choisie : une source en VF pouvait etre servie a la place d'une VO preferee. La liste affichee, elle, la respecte (`orderAddonStreams(..., prefereAudioFrancais)`). Rien n'est reinvente : la preference se calcule avec `OrdreLangueAudio.demandeDuFrancais` (deja utilisee par les appelants) et l'ordre se fait avec `OrdreLangueAudio.reordonner` (la meme fonction que le tri des groupes d'addons). Ce qui manquait etait le CABLAGE : la preference n'etait pas portee par `ReglesDuChoixAuto`. · `ReglesDuChoixAuto.prefereAudioFrancais`, rempli par `reglesDepuis` depuis les reglages ; · `ordonnerPourLeRepli` : la decision, nommee et mesurable ; · `List<Stream>.ordonneParLanguePreferee()` : la forme plate, une seule mise en oeuvre avec celle des groupes. 5 tests, dont l'ordre recu rendu TEL QUEL quand le francais n'est pas prefere (pas de reordonnancement fantome) et l'absence de retrait (le tri change l'ordre, jamais la population). Suite complete : verte en 8m37s. detekt : vert.