Repository navigation
Conversation
…couverture traduction Doctrine #9377 : supprimer la mesure, garder le predicat. Les CSV de traduction ont ete regeneres (29/10 19:26 pour gametheory, iit, probas-infer) et portent desormais 2321/2660/1013 enregistrements, tandis que la prose annoncait encore 1886/731/902 -- sans que rien ne la remette a jour. Ce qui part : le compte. Ce qui reste : la propriete falsifiable (extracteur deterministe, exclusion _output/_agent, saut des cellules sans id nbformat stable) et la commande de re-extraction deja citee dans chaque README. Markdown seul : aucune cellule de code, aucune re-execution due (C.2/H.3). See #17636 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Translation guard violation (#10332). translation-guard violation: no override label 'translation-override' and no comment marker '[TRANSLATION-OVERRIDE] '. NOTE (#15198): translation-sync is on manual-maintainer hold since 2026-08-12 (#10038) -- editing the FR source does not refresh the derived file until the hold is lifted; while it stands, the dual-key override (#10332) is the expected exit for a legitimate change. Three exits to clear this gate:
See #10332 for the override protocol. |
|
G-VAR-2 light cap reached (advisory, non bloquant). |
|
G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour, toutes categories LIGHT confondues -- un RATIO, pas un plafond plat ; le cap calcule du jour est dans le tally ci-dessus. G-VAR-3 interdit deux genres LIGHT consecutifs. Les signaux ci-dessus rendent le fait VISIBLE (labels |
|
Trivial-diff advisory (#15740, non bloquant). |
…ADME manuscrits Le filtre ALL_CHANGED retenait 'translations/**' entier : 36 CSV derives mais aussi 28 fichiers manuscrits (README.md de couverture, PERIMETER.md, translation_golden_set.json) -- aucun generateur de README dans scripts/translation/ (verifie). La PR #23401 (prose-counts sur les README de couverture, #17636) declenchait donc le garde sur son propre livrable. Recadrage : 'translations/**/*.csv'. Declencheur on.paths laisse large (hermeticite), le step de fond ne retient plus que les CSV. Glob valide sur un commit CSV reel (203199e) : CSV matches, .md exclu. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Grain: LIGHT/docs — lane myia-po-2025:CoursIA — prev: MED/notebook-python #23320
Ce que cette PR fait
Retire 6 compteurs d'artefact figés de la prose de couverture traduction, dans 5 README, en gardant le prédicat. C'est le volet 2 de #17636, sur une tranche mesurée et non sur un balayage du stock.
La mesure qui fonde le geste
Les CSV de traduction ont été régénérés (mtime
29/10 19:26pourgametheory,iit,probas-infer;26/10 15:38pourprobas-pymc,rl) et portent désormais bien plus d'enregistrements que la prose ne l'annonce. Rien ne remet cette prose à jour, et aucun organe ne le fera : le CSV est écrit par outil, le README à la main.translations/gametheory/README.mdtranslations/iit/README.mdtranslations/probas-infer/README.mdtranslations/probas-pymc/README.mdtranslations/rl/README.mdLe chiffre annoncé n'est donc celui ni du CSV, ni de la série : il date d'un run passé et a dérivé sans bruit.
Ce que je ne conclus pas. Ces lignes sont des récits au passé (« T1 — extraction LIVRÉ »). L'organe documente explicitement cet angle mort : un décompte figé dans un récit au passé est une preuve, et se garde. Je ne les déclare donc pas fausses en tant que témoignages. Ce qui est mesuré, c'est qu'elles ne décrivent plus l'artefact qu'elles désignent, et qu'un lecteur d'aujourd'hui les lit comme un état présent.
Les 6 gestes
Supprimer la mesure, garder le prédicat— doctrine #9377.gametheory_output/_agentiitprobas-inferprobas-inferprobas-pymcgametheoryrlLa commande de ré-extraction est déjà citée dans chaque README : c'est elle, et le CSV, qui portent le nombre vivant.
Preuve
Organe relancé après le commit, depuis le worktree de la branche (un
--rootdepuis le clone principal rend un faux vert :gity résout la plage dans le clone principal) :Diff :
5 files changed, 6 insertions(+), 6 deletions(-)— une ligne par geste, aucun reformatage.Hors périmètre — et je le dis plutôt que de le faire
Les tables « Couverture » de ces mêmes README sont fausses pour la même raison :
Notebooks source | **17**là où la série en porte 43. Je ne les corrige pas, pour deux raisons :nombre + nom, la table écritnom | nombre; les corriger ne ferait pas rougir le gate et ne relève donc pas de cette tranche ;C'est une décision de volet 2, pas une décision de lane : je la laisse au fil de #17636 plutôt que de la trancher ici.
Portée
Markdown seul, aucun
.ipynbtouché : aucune ré-exécution due (C.2 / H.3).See #17636
🤖 Generated with Claude Code
Rider (commit
9fe84795c9) : recadrage du gardetranslation-guardqui bloquait la PRLe check requis
No hand-edited translation files on feature branchrougissait sur cette PR sur son propre livrable : le filtreALL_CHANGEDretenaittranslations/**entier, donc aussi les README manuscrits que la PR corrige. Mesuré surorigin/main: l'arbretranslations/porte 36 CSV dérivés et vingt-huit fichiers manuscrits (27.md+translation_golden_set.json) — décompte de l'arbre entier (hors scope PR), pas une liste de fichiers de cette PR.grep -rln README scripts/translation/*.pyne trouve aucun générateur de README — la cible déclarée du garde (« sync CSVs, derived by T1/T3 ») est bien les CSV seuls.Périmètre effectif de la PR : 6 fichiers, à savoir
.github/workflows/translation-guard.ymlet les 5 README (gametheory,iit,probas-infer,probas-pymc,rl).Correctif :
'translations/**'→'translations/**/*.csv'dans le filtre de fond. Le déclencheuron.pathsreste large (herméticité #13196) ; un PR README-only déclenche puis passe « clean ».Dry-run du filtre sur le diff réel de cette PR (preuve de garde avant geste) :
git diff --name-only origin/main...HEAD -- 'translations/**/*.csv'→ 0 CSV ; le même sur**/*.md→ 5. Le garde passera vert à la nouvelle tête. Glob validé au préalable sur un commit CSV réel (203199ecb6) : CSV matchés,.mdexclu.Portée normative : aucune — ni durcissement ni élargissement ; le filtre est aligné sur la cible que le workflow lui-même déclare. La revue coordinateur s'applique (
.github/).