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_fractionsest range dans l'arborescence canonique cotebackendet coteProgramme.01A_nombres_entiersest range dans l'arborescence canonique cotebackendet coteProgramme.- Les tests et parcours de l'ancien kit adaptatif
Nombres entiersont ete deplaces danstests/,exercices/parcours_adaptes/etsources/. - 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"etdata-box; - recalcule des
data-boxapres 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.pybackend/tools/regenerate_fraction_exercise_svgs.pybackend/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: containpour rester visible entier ; - l'ancien panneau
Validation centraliseeest supprime ; - le bouton
Ouvrir dans Validation contenusflotte discretement en bas a droite ; - le bouton plein ecran reste disponible sur le SVG.
Fichiers concernes :
frontend/src/App.jsxfrontend/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.