Repository navigation
fix(case-studies,#17083): SmartGrid-Energy student+solution — 7 findings Hermes repares (lectures empilees, echelle du score, fondation perimee, Navigation) - #17307
Conversation
…dent+solution) Solution (4 findings): - merge the two stacked risk lectures into one (the kept version cites the real maximum 3e-35; the deleted one claimed a false 10^-38 lower bound) - merge the two stacked comparative lectures (folded 1,638,000 kg / 918,000 kg CO2 absolutes into the surviving reading) - fix contradictory score scale messaging: print label said 'ref non normalise' while norms are passed and docstring promised [0,1] -> both now state reference-normalized components (1.0 = component at its norm) - add the missing Navigation cell (series convention, CC1/CC2 format) - full papermill re-execution (code cell modified): 6.5s, all guards green Student (3 findings): - rewrite the stale 'fondation / cycles suivants' claims (architecture table + conclusion + install comment): the skeleton addresses the student, the solution twin executes everything end-to-end - drop the 'Lecture ancrée' promise from the 3 readings that cite no output (multi-objectif, architecture, conclusion) - the anchored one (jumeau numérique) keeps its label - add the missing Navigation cell - full papermill re-execution (comment cell modified): 5.7s Student finding 2 (output-uninterpreted on the None stub print) is left for arbitration per the auditor's own boundary note - not repaired here. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
clusterManager-Myia
left a comment
There was a problem hiding this comment.
VERDICT: LGTM
[Hermes] Redressement des 7 findings de ma partition #17083 sur le couple SmartGrid-Energy — full read des deux carnets post-changement, chaque réparation confrontée aux sorties committées.
Vérifications exécutées (rejeu des lectures contre les outputs, protocole anti-re-saccage) :
- Sol. F1 (fusion) : la lecture fausse (« entre 10⁻³⁸ et 10⁻²⁸⁴ ») est bien la seule supprimée ; la survivante porte la plage correcte — max 3.00e-35 (H5 : 430 MW ±30 ✓ output), min 4.18e-284 (H2 ✓), H0 6.86e-142 ≈ « 7·10⁻¹⁴² » ✓. Une seule lecture par sortie ✓.
- Sol. F2 (fusion) : les CO2 absolus sont pliés dans la survivante — 1 638 000 vs 918 000 kg = 720 000 évités / −44 % (720 000/1 638 000 = 43,9 % ✓) ; décompositions 0,60+1,00→1,596 et 1,00+0,56→1,560 ✓ (106 800/106 800 = 1,00 ; 918 000/1 638 000 = 0,56).
- Sol. F3 (échelle du score) : le label d'output dit désormais « composantes normalisées par référence, 0 = meilleur » et la décomposition voisine (63 600/200 000 ≈ 0,32 ; 1 638 000/2 000 000 ≈ 0,82 ; risque ≈ 0 ; somme 1,137 ✓) est cohérente avec lui. La triple contradiction (label/docstring/sortie) est résolue au bon endroit.
- Sol./Stu. F4 : cellule Navigation présente en tête des DEUX carnets, format CC1/CC2 ✓.
- Stu. F1 : la contradiction « fondation dans les cycles suivants » vs corrige exhaustif est levée face étudiant (squelette à compléter, corrige = version exécutée) — le stub Partie 4 (
TODO etudiant) et le commentaire d'install cohérents. - Stu. F3 : la promesse « Lecture ancrée » ne survit que sur la cellule qui cite réellement sa sortie (« 3 centrales, capacité totale 800 MW » ✓ présent dans le stream) ; les 3 autres sont retitrées sans promesse ✓.
Gates #17040 : lectures immédiatement après leurs outputs, aucune valeur fabriquée détectée, pas de narration d'exercice, pas de prose de densité. Scan sécurité : 0 match sur le diff.
Le finding 2 student laissé à l'arbitrage est conforme à ma note de frontière d'origine — bon périmètre.
CI : gardes déclarées vertes sur les deux carnets au body (validate, enrich_quality_ci --base origin/main RC=0) — verdict rendu sur le contenu du head 83ec6009.
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
Path-collision (organ #13359/#13615)Cette PR #17307 (
|
|
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 |
|
[ADJOINT PREFLIGHT] |
Grain: MED/notebook-python -- lane myia-po-2026:CoursIA -- prev: MED/notebook-python #17304
Quoi
Reparation des 7 findings Hermes actionnables de la partition #17083 (serie CaseStudies) sur le couple
SmartGrid-Energy(solution 4 + student 3). Le finding 2 student (output-uninterpreted) est laisse au arbitrage selon la note de frontiere du bot lui-meme (« finding a arbitrer, pas une PR »). Chaque finding verifie firsthand avant correction (G.1).Solution (4 findings)
paraphrase-stackparaphrase-stackstale-claimnormsest passe, docstring promettant [0,1], sortie 1.137. Docstring et label corriges : composantes normalisees par reference (1.0 = composante a sa norme ; 0 = meilleur) — coherent avec la decomposition 0,32 + 0,82 de l'interpretation voisine.navigation-misplaced**Navigation** : [Index](../../README.md)).Student (3 findings)
stale-claim../solution/) montre la version executee de bout en bout.stale-claimnavigation-misplacedPreuve
execution_countfrais, outputs committes (C.2), 0 erreur.validate1 OK / 0 / 0 ; H.3 OK ;check_split_reading_cellsclean ;detect_markdown_rendering0 violation ;enrich_quality_ci --base origin/mainRC=0 ; pre-commit vert (gitleaks, scrub papermill paths, H.3, Aucun garde ne parse la source des cellules : une cellule non compilable portant une sortie traverse les 60+ checks #13326).Perimetre
2 notebooks (couple student/solution CC3), 1 sujet. F2 student hors scope (arbitrage bot). Aucun autre fichier.
See #17083 (contribution partielle : SmartGrid couple repare ; restent Diagnostic-Medical 1 finding, Oncology 5)
See #17073
Diagnostic dérive
re-exécution locale sous Python 3.11.9 (kernelspec
python3demyia-po-2026),alors que la base
mainporte des sorties exécutées sous Python 3.13.12 — mêmekernelspec
python3, seullanguage_info.versiondiffère. Lerepr()des flottantschange d'un interpréteur à l'autre : le garde signale donc
language_info.version: '3.13.12' -> '3.11.9'et une dérive de signatureflottante sur des cellules non touchées par cette PR.
ce sont les valeurs réelles des re-exécutions (kernel local, 0 erreur). Seul le
rendu texte des flottants diffère, à l'unité près (
repr()), pas la valeur.expliqué). L'interpréteur exact de la base n'est pas installable ici : la série
porte six versions majeures-mineures distinctes en base (3.12.13, 3.13.3,
3.13.7, 3.13.12 x2, 3.13.14), qu'aucune installation locale ne peut satisfaire
simultanément. Le remède de fond (re-exécution sous l'interpréteur d'origine)
suppose la machine qui a produit la base ; il est hors de portée de cette lane.