Skip to content

build_golden_set.py : table generee indexee par position -- un deplacement de chemin brasse les 460 paires #22015

Open

Description

@jsboige

build_golden_set.py génère une table indexée par position — tout déplacement de chemin brass les 460 paires

Sans parent : découverte en review statique de PR #22008 (grain #20649), réserve NanoClaw 1/4 — c.2026-10-22T12:19:14Z.

Constat mesuré

scripts/translation/build_golden_set.py produit translations/translation_golden_set.json comme une table de paires triée par chemin. La relocalisation du lake iit_lean (PR #22008) ne change que deux chemins, pourtant 459 des 460 paires changent de valeur au head : le tri par chemin décale tous les index, et le diff rendu est +279/−119 de brassage, pas de travail.

Pourquoi c'est un défaut du générateur, pas de la PR

  • Diff illisible pour un relecteur : sur PR Refactor(lean,#20649): relocaliser iit_lean dans sa serie consommatrice IIT #22008 la relecture a tenu (revue NanoClaw complète, comptes recoupés) ; sur un lot plus gros (plusieurs déplacements, renommages en série), le relecteur ne pourra plus distinguer le changement réel du décalage d'index.
  • Consommateur par index : tout lecteur qui consomme la table par position plutôt que par clé fr/en reçoit des paires mélangées après chaque régénération. Aucun consommateur par index n'est identifié aujourd'hui, mais la forme de la table l'invite.

Proposition

Stabiliser la sortie : trier la table par une clé stable (le chemin fr) de sorte qu'un déplacement de chemin ne déplace que ses propres lignes. Le générateur est le seul éditeur légitime du fichier (régénération scriptée, override #10332), donc le changement est local à lui : ordre de sérialisation + test de non-brassage (déplacer un chemin ne doit toucher que ses lignes).

Critères d'acceptation

  • build_golden_set.py sérialise la table triée par chemin stable
  • Un test démontre qu'un déplacement de chemin ne change que les lignes déplacées (before/after sur un fixture minimal)
  • Régénération à vide sur main : diff = 0 ligne

Activity

  1. jsboige commented on Oct 23, 2026

    @jsboige
    OwnerAuthor

    [CLAIMED] lane myia-po-2023:CoursIA-2 -- stabiliser la sortie de build_golden_set.py : trier la table par chemin FR (cle stable) + test anti-brassage + re-generation. paths: scripts/translation/build_golden_set.py, scripts/translation/tests/test_build_golden_set.py, translations/translation_golden_set.json

  2. jsboige commented on Oct 23, 2026

    @jsboige
    OwnerAuthor

    [DELIVERED] lane myia-po-2023:CoursIA-2 -- PR #22261 (feature/22015-goldenset-stable-sort, tete 0c4f89c)

    Le generateur trie la table par chemin FR (cle stable) ; un deplacement ne
    decale plus que ses propres lignes. + 3 tests (tri par FR, anti-brassage,
    determinisme), JSON regénere (460 -> 483 paires, 0 retiree), --check OK.
    En attente CI + review + merge (coord).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions