Tuiles de chiffres de la base : une seule règle d'alignement (t_0b6c9173) #1741
Loading…
Reference in a new issue
No description provided.
Delete branch "hermes/kpi-base"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ce que la carte change
Une seule règle d'alignement pour toutes les tuiles de chiffres, écrite une fois dans
_tableau/front/src/lib/base/styles.js:TUILE_KPI— la tuile : un conteneur (@container), son libellé en haut, le chiffre dessous, tout aligné àgauche, jamais plus étroite que la largeur de tuile de la charte ;
CHIFFRE_KPI— le chiffre : tabulaire (tabular-nums),truncate, il suit la largeur de sa tuile(
@tuile:) et non celle de la fenêtre ;GRILLE_KPI— la rangée :repeat(auto-fit, minmax(var(--container-tuile), 1fr)), autant de tuiles que laplace le permet, même hauteur sur une rangée.
Compteurprendtuileetabrege(au-delà de 10 000 : « 1,2 M », la valeur exacte espacée restant dansl'infobulle de la base),
InfobulleprenduneLigne(un libellé de tuile) etclasse(la typographie du chiffre àla place de celle de la légende),
Tuileporte la règle et une légende tabulaire. La démonstration de la baseapplique la règle au lieu de se dimensionner elle-même. La charte et le README de la base sont mis à jour.
La panne mesurée avant (Chromium, vraie build,
/processus/?demo)text-xl lg:text-display) et non la tuile : la même rangée s'écrivait en21 px au téléphone et en 48 px au bureau ;
Un second défaut a été trouvé pendant la carte et corrigé (second commit) :
--container-tuilen'existait que danscharte-theme.css, sous@theme … reference— un bloc compilé, jamais servi. Levar()de la rangée ne résolvaitrien,
minmax()était invalide et la rangée large retombait sur une seule colonne (bords gauches[264, 264, 264, 264]à 1 440 px), sans débordement ni hauteur différente : invisible pour les premiers contrôles.Le jeton est désormais aussi dans
tableau.css, la feuille que la page charge.La preuve après
python3 _tableau/test_navigateur_tuiles_kpi.py— Chromium, 1 440 × 900 et 375 × 812, clair et sombre :GRILLE_KPI)grid-cols-4)GRILLE_KPI)grid-cols-4)Le même banc vérifie le survol : le libellé tronqué et le chiffre abrégé (« 1,2 M ») donnent leur texte entier
(« 1 200 000 »), et le chiffre d'une tuile étroite est plus petit que celui d'une tuile large — donc sa taille suit
la tuile, pas la fenêtre.
Gardes de source :
front/tests/tuiles-kpi.test.js(12 cas : la règle, le jeton dans la feuille servie, lesfonctions d'abréviation, le rendu du chiffre) ;
npx vitest run: 47 fichiers, 406 tests passés ;python3 test_charte_ui.py: OK (257 classes au socle, 0 locale, aucune couleur en dur) ; les bancs voisins(
test_charte_svelte.py,test_charte_mise_en_page.py,test_charte_title.py,test_onglets_doublons.py,test_verifier_onglets.py,test_navigateur_barre_bas.py) passent.Ce qui n'est pas mesuré
Demo.svelte, leur reprise se fait carte par carte.CarteMaintenant(les quatre chiffres de la carte) n'est pas concernée : composant non touché.fusion-auto: pas de fusion, la CI est rouge (Rust, Front Svelte). Le chef de l'atelier renvoie la carte à l'agent ; l'étiquette tombera d'elle-même une fois corrigé.5ab6f67b6c4cfe110563Preuves, arbre rebasé sur
main(4cfe1105) — la CI du run 646 était rouge, celle du run 659 est verte.Cause du rouge (run 646, les deux jobs) : sous le type
infobulle,homogeneite.pylisait une légende de 12 px et un chiffre de 48 px (2 écarts nouveaux :fontSize,color), plus un bouton d'action dont le relevé ignorait le type. Journal du job injoignable d'ici (routes de journal en 404) : reproduit en local avec les mêmes bancs que le workflow.Remède :
Infobulleprendchiffre(déclencheurcompteur, règle des chiffres) au lieu duclasseimposé par l'appelant ; la démonstration ne s'habille plus localement ;compteurentre au registre d'homogénéité et aux types d'action du relevé.homogeneite.py --sans-captures: « 4 écarts connus, 0 nouveaux, 0 résolus » → code 0 (avant : 2 nouveaux).garde_fous.py: code 1, 4 écarts, les mêmes dans un arbre propre deorigin/main→ aucun ajouté.npx vitest run: 46 fichiers, 408 tests.npx vite build: code 0,dist/app.js158 756 o,dist/index.html1 881 o.garde-habillage.py: 0 refus.test_navigateur_tuiles_kpi.py(Chromium) : tuile 90 px → chiffre 21 px, tuile 282 px → chiffre 48 px ; aucun débordement ; quatre tuiles de même hauteur, quatre chiffres au même bord gauche.5ab6f67, contenu identique avant rebasage) → les deux jobs verts,homogeneite.pyavec captures compris.Non mesuré : le journal des jobs 646 (404), la CI du commit rebasé (en cours), les pages du tableau hors démonstration (carte B).
Fusionnée automatiquement par
fusion-auto(forge) : CI verte, sans conflit.