Files
open-school/SESSION_NOTES_2026-05-12.md
2026-05-12 23:44:30 +02:00

3.7 KiB

Notes de fin de session - 2026-05-12

Objectif traite

Validation de l'architecture des contenus pedagogiques et remise en ordre des lecons CM1 Nombres entiers et Fractions, avec focus fort sur la qualite des SVG fractions et l'ergonomie de l'onglet Programme global.

Architecture pedagogique retenue

Chaque lecon doit etre auditable, consultable et chargeable par le modele avec la meme structure :

  • README.md : notes editoriales et statut de la lecon ;
  • lecon.md : lecon complete, contexte general du modele ;
  • fiches/<fiche>/fiche.md + fiche.svg ;
  • cards/<fiche>/card_XX.md + card_XX.svg ;
  • exercices/<fiche>/exercices.md + exercices.svg ;
  • tests/* : diagnostics et tests de validation ;
  • exercices/parcours_adaptes/* : remediations apres tests ;
  • sources/* : contenus de reference migres ou documents originaux utiles.

Les dossiers kit_adaptatif, svg/, card_contexts/ et exercices_svg/ sont legacy.

Migrations effectuees

  • 01B_fractions est range dans l'arborescence canonique cote backend et cote Programme.
  • 01A_nombres_entiers est range dans l'arborescence canonique cote backend et cote Programme.
  • Les tests et parcours de l'ancien kit adaptatif Nombres entiers ont ete deplaces dans tests/, exercices/parcours_adaptes/ et sources/.
  • Le loader backend sait lire les nouveaux types lesson, fiche, card, exercice, test, support.

Sources et audit

Regle confirmee : tout contenu pedagogique doit pouvoir indiquer sa source.

Chaque Markdown de production doit garder une section Sources ou equivalent :

  • document PDF officiel ou extraction locale ;
  • cycle, niveau, matiere et theme ;
  • page, chapitre ou section si connu ;
  • date de generation ou validation si connue.

Reference principale actuelle : Programme/pdf_collecteur/state/synthese_cycle3_cm1_mathematiques.md.

SVG fractions

Probleme important corrige : les fractions semblaient valides automatiquement alors que les denominateurs chevauchaient visuellement la barre.

Cause : dans SVG, la coordonnee y d'un <text> est une baseline, pas le bord visible du chiffre. Un test base seulement sur bar_y - text_y peut donc donner un faux vert.

Regle retenue :

  • tester la clairance visible estimee des glyphes ;
  • utiliser fraction-g, data-math="fraction" et data-box ;
  • recalcule des data-box apres changement d'espacement ;
  • refuser les fractions obliques visibles dans les SVG eleve ;
  • lancer le validateur strict avant revue humaine.

Outils importants :

  • backend/tools/validate_svg_quality.py
  • backend/tools/regenerate_fraction_exercise_svgs.py
  • backend/tools/compact_fraction_svg_spacing.py

Validation obtenue :

  • backend/.../01B_fractions : 42 SVG, 0 erreur, 0 warning ;
  • Programme/.../01B_fractions : 42 SVG, 0 erreur, 0 warning.

UI Programme global

Changement ergonomique :

  • le panneau de droite partage mieux l'espace entre SVG et contexte Markdown ;
  • le SVG utilise object-fit: contain pour rester visible entier ;
  • l'ancien panneau Validation centralisee est supprime ;
  • le bouton Ouvrir dans Validation contenus flotte discretement en bas a droite ;
  • le bouton plein ecran reste disponible sur le SVG.

Fichiers concernes :

  • frontend/src/App.jsx
  • frontend/src/styles.css

Build frontend valide avec npm.cmd run build.

Points a reprendre ensuite

  • Continuer la deduction des arborescences depuis les PDF officiels pour cycle 3 et cycle 4.
  • Generaliser l'arborescence canonique aux prochaines lecons.
  • Ajouter a terme une validation raster/screenshot pour detecter les chevauchements visuels que le XML ne capte pas parfaitement.
  • Inspecter visuellement le premier SVG de chaque nouvelle famille malgre le validateur, surtout pour les fractions.