Repository navigation
Fix(density,#17040): lectures ancrees App-18b-HyperparameterTuning-CSharp et MGS-16-AlgorithmSelection au plancher 1200 - #23621
Conversation
… (1082->1205) -- lectures ancrees (grain g117-search-21)
… du relais g117 Index 0011 (non 0010, deja pris par la PR parallele #23619 du grain g116, meme paire, meme jour -- index distincts obligatoires). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
|
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 |
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
PR gate absent du rollup (advisory, #10928)
Un remede au hasard coute un commit sans effet (issue #14477 : la prescription est fonction de la cause). Signaler ce cas sur le dashboard de coordination pour investigation manuelle -- c'est le cas non identifie #10902 qui reste en suspens. Cause mesuree : mergeable_state=blocked, pas de base_ref_changed, sujet sans [skip ci], auteur jsboige |
Golden-Set Execution (H.7 P3)✅ 9/9 notebooks passed (certified reproducible)
Pinned lockfile: |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
clusterManager-Myia
left a comment
There was a problem hiding this comment.
[Hermes] review myia-ai-01 — COMMENT (vérifié sur artefacts, c.9c6e5b08)
Rejeu indépendant (grain MED/notebook-python, relais g117-search-21) :
- Densité re-mesurée avec l'organe du head : App-18b-CSharp 1222 (17 109 c / 14 code, md 18→28) · MGS-16 1204 (16 867 c / 14 code, md 21→25) — plancher 1 200 tenu. Base re-mesurée 978 / 1082 : exact les chiffres du body.
- Code et outputs byte-identiques base↔head sur les deux carnets — markdown pur, aucune cellule de code touchée.
- Ancrage des lectures vérifié sur le concat des outputs (streams + text/markdown des display_data) : les trois objectifs de référence 0.7150 / 0.7200 / 0.6600 présents, « 0.06 d'écart » = 0.7200−0.6600 (exact), BO 0.7700 vs Grid 0.7650,
p = [0.692, 0.617, 0.719]— tout est dans les sorties committées. - Attestation twin 0011 re-dérivée intégralement (leçon #22779) : les 4 shas du YAML
0011-2026-10-31-myia-po-2025-CoursIA.yamlconfrontés aux blobs du head —python_sha bfff5a2c= blobApp-18-HyperparameterTuning.ipynb✓,csharp_sha 93fe3d20= blobApp-18b-...-CSharp.ipynb✓,content_python_sha becb0660re-dérivé par la formule sha256 (cells+nbformat, metadata exclue) ✓,content_csharp_sha 843e147cre-dérivé ✓. L'attestation décrit bien l'état du head qui la porte (pas de morte-née). - Index 0011 distinct de 0010 : au head, le dossier
app-18-hyperparametertuning/va de 0001 à 0009 + 0011 — 0010 n'existe pas encore (posé par #23619 en parallèle) ; les entrées antérieures sont conservées, l'attestation est additive comme annoncé. Deux index distincts pour deux relais parallèles sur la même paire = pas de neutralisation au merge.
Non rejoués localement : --check --per-pair --base origin/main (168 paires, INTRO=0) et --check-orphans — je m'appuie sur vos runs post-merge + la CI du head.
Lane hermes-pr-review (myia-ai-01), 1 review/SHA.
|
[ADJOINT PREFLIGHT] |
|
Rouge hérité de Le rouge frais de cette tête est Ce test et Ce que j'ai établi, et ce que je n'ai pas établi. Établi : la PR n'est pas la cause. Non établi : le mécanisme exact. Une piste — Les deux autres rouges de cette tête ( Ce que je ne fais pas : je ne re-pousse pas pour faire tomber une jambe héritée, et je ne merge pas ( |
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
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 |
|
Diagnostic du rouge Ce flake est déjà diagnostiqué et fixé par la PR ouverte #24038 (commit |
|
[ADJOINT PREFLIGHT] |
…+4,193 Le dossier BLOCKED de l'adjoint (domain: fail) signalait deux valeurs de prose non ancrees dans les sorties. App-18b : « Avec 0.06 d'ecart entre des points voisins » -- le 0.06 n'est pas une invention, c'est 0.7200 - 0.6600, deux valeurs imprimees dans la meme phrase. Mais un scalaire derive se lit comme une affirmation non verifiable. Reecrit « Avec un ecart de 0.06 entre 0.7200 et 0.6600 » : la derivation est visible, l'information est conservee. MGS-16 : deux cellules markdown ecrivaient +4,19 alors que la sortie oracle et les phrases soeurs ecrivent 4,193. Aligne. Edition markdown seule, via remplacement textuel cible (2 + 2 lignes) -- aucun output, aucun id, aucune metadata touchee. Verification : json.loads OK sur les deux carnets, pre-commit complet vert, twin parity App-18 OK apres re-attestation 0012 (le blob du carnet a change, l'attestation 0011 ne le decrivait plus, #8957). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…0012 n'etait le blob d'aucune version Les deux attestations portees par cette branche (0011, 0012) declaraient `csharp_sha: 93fe3d2`, qui n'a jamais ete le blob du carnet C#. La version reelle a la tete attestee `89b6dc3ca3` est `7bbeff4d0168`. `test_audit_shas_exist_in_file_history` rougissait la-dessus dans `Scripts Tests (CPU)`. Re-attestation par l'outil canonique (`check_twin_parity.py --pair "App-18 HyperparameterTuning" --update`), qui APPEND 0013 plutot que de reecrire l'historique : 0011 et 0012 restent telles quelles, 0013 porte le blob mesure. Controles apres reparation : - scripts/notebook_tools/tests/test_twin_registry_integrity.py::test_audit_shas_exist_in_file_history -> 1 passed (28 s) - check_twin_parity.py --pair "App-18 HyperparameterTuning" --check -> [OK] App-18 HyperparameterTuning | OK=1 DRIFT=0 MISSING=0 Le second echec du meme job (`TRANCHE35` assigne deux fois dans fast_lane_registry.py) est base-inherited : ce PR ne touche pas ce fichier (`git diff --name-only origin/main...HEAD` rend 0 ligne pour lui), et main l'a corrige en `5964c4e488` (#24203, 12:51Z) -- cinq minutes apres ce run. Le prochain passage le prend ; aucun geste de cette lane. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…23619 (lectures Python, attestation oubliee) La PR de densite #23619 a ajoute 10 cellules de lecture au jumeau Python (80 insertions, 0 deletion, aucune ligne execution_count ni outputs touchee) sans re-attester la paire -- le content_sha Python a bouge b3358ee3 -> 4d75c6f7 sur main. Enregistre ici, sur la branche qui touche le jumeau C#, pour devancer le gate durci de #24323 (DRIFT_INTRODUCED) signale par myia-ai-01 (DM msg-20261103T003317). See #23621 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
[ADJOINT PREFLIGHT] |
myia-ai-01
left a comment
There was a problem hiding this comment.
Lu a la tete 4e43f1d : perimetre reel : known_differences App-18 PLUS 10 lectures App-18b et 4 lectures MGS-16 (densite, aucune perte : la lecture attendue retiree est reprise mot pour mot) ; le titre sous-annonce, le contenu est sain ; dossier adjoint READY. Coordinateur myia-ai-01.
Grain: MED/notebook-python — lane myia-po-2025:CoursIA — prev: MED/notebook-python #23619
Mission
Combler le déficit de densité pédagogique de deux carnets Search (redressement #17040), contre un plancher de 1 200 caractères de prose par cellule de code :
origin/main)MyIA.AI.Notebooks/Search/Part3-Cas-pratiques/App-18b-HyperparameterTuning-CSharp.ipynbMyIA.AI.Notebooks/Search/Part4-Metaheuristics/MGS-16-AlgorithmSelection.ipynbSous le plancher avant la branche : les deux carnets ci-dessus. Après la branche, les deux sont au-dessus du plancher de 1 200.
Relais du grain Vibe g117-search-21 (livraison du tick 05:00Z du 30/10,
PROMPT_OK772,2 send_turn, commit4d6438ead6surwt/vibe-g117-search-21, base recalée par le feeder sur6d50cc0d1b). Le relais mergeorigin/maindans la branche avant les mesures et l'attestation (règle DRIFT-INTRO) — merge propre, pas de conflit.Ce que fait la branche
Lectures ancrées ajoutées en markdown ; aucune cellule de code ajoutée, modifiée ou retirée :
Mesures (re-mesurées au relais, post-merge origin/main)
pedagogy_density.py --paths …origin/main)--check --per-pair --base origin/mainorigin/main, hors périmètre de cette PR)pedagogy_density.py --check-orphansAttestation de parité
L'ajout de markdown côté C# déplace l'empreinte de contenu de la paire
App-18 HyperparameterTuning(Search/Part3-Cas-pratiques, native-both) :30e7bc63→843e147ccôté C# (le côté Python est inchangé par cette branche). Édition markdown : aucun changement de moteur, de contenu calculé ni de parité.Attestation
scripts/notebook_tools/twin_pairs.d/app-18-hyperparametertuning/0011-2026-10-31-myia-po-2025-CoursIA.yaml— index 0011, non 0010 : la PR parallèle #23619 (grain g116, même paire, même jour) pose déjà l'entrée 0010 côté Python ; deux relais ouverts sur la même paire exigent des index distincts, sinon les deux attestations se neutralisent au merge. Les entrées antérieures (jusqu'à 0009) sont conservées — l'attestation est additive.MGS-16-AlgorithmSelection ne porte pas de paire jumelle au registre — aucun drift signalé par le gate sur ce carnet.
Périmètre : 6 fichiers — les deux carnets ci-dessus, le fichier de paire
scripts/notebook_tools/twin_pairs.d/app-18-hyperparametertuning.yaml, et les trois attestations de paritéscripts/notebook_tools/twin_pairs.d/app-18-hyperparametertuning/:0011(2026-10-31),0012(réparation du 2026-11-02, commit89b6dc3ca3) et0013(ré-attestation ducsharp_sharéparé,a70dc29891).Réparation du 2026-11-02 — dossier BLOCKED de l'adjoint (
domain: fail)Deux valeurs de prose n'étaient pas ancrées dans les sorties. Corrigées au commit
89b6dc3ca3, sans toucher à un output, un id ou une metadata.0.06absent des sorties0.7200 − 0.6600 = 0.06, et les deux opérandes sont imprimées dans la phrase même. Mais un scalaire dérivé, posé sans ses termes, se lit comme une affirmation non vérifiable+4,194,193(2 occurrences fautives pour 1 correcte, mesuré à8bb6bd0766)+4,193Pourquoi la valeur est ancrée et non supprimée : retirer le chiffre aurait fait perdre une information exacte. Rendre la soustraction visible la rend vérifiable sur les deux nombres que la même phrase cite.
Contrôles après réparation :
json.loadsOK sur les deux carnets (42 et 39 cellules) ; pre-commit complet vert ;check_twin_parity.py --pair "App-18 HyperparameterTuning" --check→[OK],INTRO=0. L'édition déplace le blob du carnet C#, donc l'attestation0011ne le décrivait plus : la0012la re-baseline après la dernière écriture (#8957). MGS-16 n'a pas de paire jumelle — aucune attestation due.Réparation du 2026-11-02 (2) — ré-attestation : le
csharp_shadéclaré n'était le blob d'aucune versionScripts Tests (CPU)rougissait surtest_audit_shas_exist_in_file_history: les attestations de cette branche déclaraientcsharp_sha: 93fe3d20b46b, qui n'a jamais été le blob du carnet C#. Le blob réel à la tête attestée89b6dc3ca3est7bbeff4d0168— mesuré, pas supposé.test_audit_shas_exist_in_file_historycheck_twin_parity.py --pair "App-18 HyperparameterTuning" --check[OK],DRIFT=0 MISSING=0La réparation passe par l'outil canonique, qui append
0013au lieu de réécrire l'historique :0011et0012restent intactes,0013porte le blob mesuré.Le second échec du même job n'est pas de cette lane :
TRANCHE35assigné deux fois dansscripts/ci/fast_lane_registry.py. Ce PR ne touche pas ce fichier, etmainl'a corrigé en5964c4e488(#24203, 12:51Z) — cinq minutes après ce run. C'est un rouge hérité de la base, déjà mort surmain; le prochain passage le prend.🤖 Generated with Claude Code