DOCS/kanban/cards/4-a-tester/100-mediatheque-codee-de-bout-en-bout-checklist-a.md
2026-09-03 14:00:51 +02:00

2.7 KiB

title, area, horizon, tags, flag, src
title area horizon tags flag src
Médiathèque codée de bout en bout — checklist à passer au navigateur manager v1 manager-app, manager-service, UX warn | vert au compilateur, jamais ouvert dans un navigateur v1-mediatheque-plan.md — les 8 étapes sont codées

Les 8 étapes de v1-mediatheque-plan.md sont codées : Resource.Width/Height (migration AddResourceDimensions), fileName dans ToDTO(), ResourceUsageService + GET /usages et GET /usage-map, 409 sur la suppression d'une ressource utilisée et DELETE /bulk à rapport partiel ; côté front, renommage en Médiathèque, rail de facettes cumulables à compteurs (type · usage · configuration), tri, groupement par mois, bascule grille/liste, sélection multiple, compteur d'usages sur la vignette, et le panneau latéral qui remplace la popup de 520 px. Les deux bugs sont corrigés : un PNG se télécharge en .png, et FileName est exposé. Deux corrections apportées à la spécification, vérifiées dans le code. Le « piège 1 » (union sur toutes les langues) était faux : GetReferencedResourceIds(null) rend déjà toutes les langues — appeler la méthode sans argument suffit. Et un quatrième piège manquait : un GuidedPath peut pendre d'un SectionEvent, dont GetReferencedResourceIds ne descend pas dans les parcours ; les parcours sont donc parcourus séparément, et volontairement pas chargés sur SectionParcours pour éviter le double comptage. Les deux sont figés par des tests (ImageUsedOnlyInDutch_IsNotOrphan, GuidedPathOnEvent_IsWalked). Piège 3 assumé et testé tel quel : GuidedStep.ImageUrl reste une URL, donc comptée orpheline — le tooltip de la facette « Jamais utilisées » l'écrit. ⚠️ Ce qui reste, et pourquoi cette carte est ici. dotnet test 236/236 et flutter build web passent — la checklist de 15 points du plan n'a été passée dans aucun navigateur. Le point le plus coûteux d'abord : ouvrir un champ image d'une section, choisir une ressource, enregistrer. showSelectResourceModal monte ResourcesScreen, donc une régression y touche les 13 types de section, les POI et les étapes d'un coup. Hors périmètre, laissé tel quel : la jauge de stockage du menu (quota_bars_widget.dart:23).