Repository navigation
feat(translation,#1650): complete EN coverage of Sector-Momentum -- 10 md cells + 2 rendered _en notebooks - #18966
Conversation
…0 md cells + 2 rendered _en notebooks Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
|
✅ No prose/output mismatch detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
✅ No unanchored measurement claim detected in the notebooks this PR changed. Scope = notebooks CHANGED in this PR, not the whole corpus. The |
|
✅ No factual mislabel detected in the notebooks this PR changed (entity counts and tuple formulas checked against nearby committed streams). Scope = notebooks CHANGED in this PR, not the whole corpus. The |
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
|
[TRANSLATION-OVERRIDE] remplissage EN manuel des CSV de sync (voie auditable #10332) pendant le hold translation-sync (#15198, #10038) et T3 gated (#10043) — tranche #1650 Cette PR modifie
Ce remplissage suit le précédent des pilotes ( |
…renders The pre-existing EN rows for the two Sector-Momentum notebooks were one-liner era stubs against full French section bodies, which tripped the md-content-loss gate (TRUNCATED_CELL on 10 cells). Re-extracted the CSV pivot fields (2 drifted FR rows refreshed first), then completed the 10 EN translations against current FR and re-rendered both _en notebooks (12/12 and 11/11 md translated, full coverage). Guards: md-content-loss 0 findings on both, parity 4 pairs 0 violation, nav-chain 0 NEW, sync rc=0, perimeter OK. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
md-content-loss TRUNCATED_CELL — cause racine traitée au commit 0ebef65. Les 10 cellules EN « tronquées » étaient des stubs d'époque pré-existants dans
Gardes locales sur la tête 0ebef65 : |
…stats 12->30 Scripts Tests (CPU) reddened on the tranche for the two designed counters: (1) EXPECTED_PAIR_COUNT is an EQ declaration of the pairs on main (hold i18n #10038) — this PR adds the FT-01/FT-03 pairs, so the declaration moves to 4; (2) the T3/T4 demo renders FT-01 from the repo CSV, now at full coverage (30 md translated, was 12). Both updated knowingly per the counters' own instruction. Verified locally: 5/5 passed. Sector-Momentum (#18966) and XGBoost (#18972) carry their own bumps; merge order fixes the final total (7). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…mentum pairs Scripts Tests reddened on the EQ declaration (hold i18n #10038): this PR adds the deep_research_optimization_en + research_robustness_en pairs, declaration moves to 4. The T3/T4 demo test passes unchanged on this branch (finetuning.csv untouched here). Verified locally: 5/5 passed. Note: this push re-arms the DWELL floor — accepted trade-off, the counter red was blocking while DWELL is a timer. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Scripts Tests reddens on the EQ declaration (hold i18n #10038): this PR adds the 02-ML-XGBoost research_en pair, declaration moves to 3. Demo test unchanged (finetuning.csv untouched on this branch). Verified locally: 5/5 passed. Sector-Momentum (#18966, 4) and FT (#18968, 4) carry their own bumps — merge order fixes the final total (7). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Path-collision (organ #13359/#13615)Cette PR #18966 (
|
|
Cette PR depasse le seuil de couverture review (par defaut 300 additions) et n'a recu aucune review -- ni bot, ni humaine. Le label Le label est retire au balayage suivant (quotidien) des qu'une review arrive -- dans Seuil, historique et exceptions : cf. |
|
[ADJOINT PREFLIGHT] note: Dossier c399 sur PR #18966 (feat(translation,#1650): complete EN coverage of Sector-Momentum). Lane porteuse myia-po-2025:CoursIA (tierce). MED/notebook, 4 fichiers MyIA.AI.Notebooks/QuantConnect/partner-course-quant-trading/examples/Sector-Momentum/{deep_research_optimization_en, research_robustness_en}.ipynb + scripts/translation/tests/test_check_translation_parity.py + translations/partner-course-quant-trading/partner-course.csv, +2047/-43 = +2004 net. PR gate SUCCESS 2026-10-03T11:35:25Z (gh pr checks confirme tous les check-runs pass). B.0 clear (rc=0, 0 nit non leve, 1 commentaire non evalué non bloquant). Scope pass (4 fichiers, PAS sous .claude/, .github/, ni CLAUDE.md). domain: pass (substance = EN coverage complete des carnets Sector-Momentum deep_research_optimization + research_robustness, parity test ajoute, catalogue CSV maj). Cible READY : substance prete, B.0 clear, gate SUCCESS. MED auto-merge eligible. Eligible merge direct ou APPROVED. |
…UNT (4+2=6) Conflit : scripts/translation/tests/test_check_translation_parity.py -- les deux cotes avaient bumpe la declaration (FT 2->4 sur l'ancienne main, main post-#18966 2->4). Resolution : les deux commentaires de provenance conserves, declaration re-bumpee au total reel de la branche fusionnee (6 = 4 sur main + FT-01 + FT-03). Tests : parity 35 passed, demo acceptance 4 passed. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…Lectures, nouveau rendu _en (#18972) * feat(translation,#1650): 02-ML-XGBoost EN complete — 6 partial cells + 7 Lectures, new render Six pre-existing EN rows were one-liner era stubs against full French section bodies, and the seven interpretation Lectures (benchmark, training set, R2 baseline, iteration 2, predictions, regime skip, calibration) had no translation at all. Re-extraction first (0 drifted rows), then completed all 13 EN against current FR and rendered the new research_en.ipynb (15/15 md translated, full coverage). Guards: md-content-loss 0 findings, parity 0 violation, nav-chain 0 NEW, sync rc=0, perimeter OK. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> * fix(translation-tests,#18972): EXPECTED_PAIR_COUNT 2->3 for XGBoost pair Scripts Tests reddens on the EQ declaration (hold i18n #10038): this PR adds the 02-ML-XGBoost research_en pair, declaration moves to 3. Demo test unchanged (finetuning.csv untouched on this branch). Verified locally: 5/5 passed. Sector-Momentum (#18966, 4) and FT (#18968, 4) carry their own bumps — merge order fixes the final total (7). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
…d + 2 rendus _en (#18968) * feat(translation,#1650): FT-01+FT-03 EN complete -- 23 md cells + 2 rendered _en notebooks finetuning.csv en fill 73->96; re-extract T1 adds 12 stale-gap FT-01 rows (all translated); 5 refreshed SRC_DRIFT rows re-aligned in EN where prose. Renders: FT-01_en 30/30 md, FT-03_en 23/23 md, 0 fallback, code verbatim. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> * fix(translation,#1650): complete partial EN cells, retranslate FT-03 on refreshed FR, nav baseline - 13 EN preexistantes partielles completees : lignes Navigation manquantes (headers FT-01/FT-03, convention nav anterieure a l'EN), corps Exercices FT-01 (55c->481c FR) et FT-03, sections 3-6 FT-01 tronquees. - FT-03 : re-extraction (15 FR rafraichis -- le CSV datait d'un run anterieur 20 paires/OPT-1.3B, le notebook tourne Qwen3.5-0.8B 227 paires) + les 5 Lectures dens* retraduites sur le FR rafraichi (nombres du run reel : 1,34->0,38, 205/22 split, 0,85% trainable). - baseline_nb_nav_chain.json regenere : orphelins _en (FT-01_en, FT-03_en) inscrits comme connus -- meme convention que les pilotes (FT-05_en, medical_chatbot_en). - gardes locales : md-content-loss 0 finding sur les 2 rendus, nav-chain 0 NEW, sync rc=0, perimeter 0 violation, parity 4 paires OK. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> * fix(translation-tests,#18968): EXPECTED_PAIR_COUNT 2->4 + demo FT-01 stats 12->30 Scripts Tests (CPU) reddened on the tranche for the two designed counters: (1) EXPECTED_PAIR_COUNT is an EQ declaration of the pairs on main (hold i18n #10038) — this PR adds the FT-01/FT-03 pairs, so the declaration moves to 4; (2) the T3/T4 demo renders FT-01 from the repo CSV, now at full coverage (30 md translated, was 12). Both updated knowingly per the counters' own instruction. Verified locally: 5/5 passed. Sector-Momentum (#18966) and XGBoost (#18972) carry their own bumps; merge order fixes the final total (7). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Grain: MED/notebook-python — lane myia-po-2025:CoursIA — prev: DEEP/research-code #18913
Achève la couverture EN du répertoire
examples/Sector-Momentum/(issue #1650, périmètre EN déclaré pourpartner-course.csv— #10032) : les 10 dernières cellules markdown non traduites des deux notebooks de recherche, et le rendu T4 des deux_en.ipynbcorrespondants. Suite directe des pilotes existants (medical_chatbot_en, FT-05_en) — même chemin, même contrat.Ce que la PR livre
translations/partner-course-quant-trading/partner-course.csv: 10 lignes remplies (text_en+hash_en= sha256[:16] du texte stocké, convention vérifiée par rejeu sur une ligne existante avant écriture) — 5 cellules d'interprétation par notebook (deepresearch-interp-*,robustness-fr-interp-*) : lecture des sorties, statistiques VIX, scores momentum, baseline et grid search ; régimes, Sharpe réel, sensibilité par régime, walk-forward, recommandations. Diff minimal vérifié : exactement 10 lignes CSV modifiées, aucune autre ligne touchée.deep_research_optimization_en.ipynb(nouveau) : rendu T4 — 18 cellules, 12/12 markdown traduites, 0 fallback FR, 6 code verbatim, 0 orphelin, 0 non-apparié.research_robustness_en.ipynb(nouveau) : rendu T4 — 17 cellules, 11/11 markdown traduites, 0 fallback FR, 6 code verbatim, 0 orphelin, 0 non-apparié.Traduction agent manuelle (T3 reste gated — premier
--apply= mandat user #10043) : fidèle aux nombres, verdicts et emphases du source ; code spans, noms de variables et valeurs numériques inchangés ; la coquille source « LaNaN » rendue par sens (« The initial NaNs »).Vérifications (relancées après la dernière écriture)
check_translation_sync.py: rc=0, aucune dérive sur les lignes touchées (lesORPHAN_ROWpréexistants deCrypto-MultiCanal/research.ipynb— cellules supprimées du source avant cette PR — sont inchangés et hors scope).check_perimeter.py: OK, 0 violation — remplissagepartner-course.csv:en99 → 109.check_translation_parity.py --langs en: OK, 4 paires scannées, 0 violation, 0 advisory (les 2 pilotes existants + les 2 nouveaux).--require-translated: garde anti-clone-FR (translation-sync T4 rend les 7 TARGET_LANGS alors que T3 ne traduit queen: 4170 fichiers _<lang> qui sont des copies FR non traduites #10349) passée par construction (0 fallback).Portée
Quatre fichiers : le CSV, les 2 rendus
_en.ipynb, etscripts/translation/tests/test_check_translation_parity.py(déclarationEXPECTED_PAIR_COUNT2→4 — compteur EQ du hold i18n #10038, bump knowingly, cf. mise à jour ci-dessous). Aucun notebook FR source modifié, catalogue non régénéré (byte-identique à main).Mises à jour post-livraison (têtes
0ebef65e15puis9feb4e8ce8)0ebef65e15— md-content-loss : les rendus initiaux reposaient sur des stubs EN d'époque (résumés une-ligne préexistants dans le CSV) qui faisaient rougirTRUNCATED_CELL(10 cellules). FR re-extrait d'abord (2 lignes dérivées rafraîchies), 10 EN complétées sur le FR courant, rendus regénérés (12/12 et 11/12→11/11 md traduits).detect_md_content_loss: 0 findings sur les deux.9feb4e8ce8— compteur de paires :EXPECTED_PAIR_COUNT2→4 (chaque paire T4 réintroduite rend le test rouge jusqu'au bump — même geste que feat(translation,#10038): render first 2 *_en.ipynb notebooks from genai CSV (T4 grain A) #12850). 5/5 tests locaux verts. Les PRs sœurs du corridor (feat(translation,#1650): FineTuning FT-01 + FT-03 EN -- 23 cellules md + 2 rendus _en #18968 FT, feat(translation,#1650): 02-ML-XGBoost EN complet — 6 partielles + 7 Lectures, nouveau rendu _en #18972 XGBoost) portent chacune leur bump ; l'ordre des merges fixe le total final (7).See #1650 · See #10038
🤖 Generated with Claude Code