From 24ae62fc4384da89710c4cb25f773f93f94312e7 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 22 Aug 2026 13:40:24 +0000 Subject: [PATCH] audit(ui): revalider correctifs P1 sur VM --- docs/ui-audit/BUGS.md | 29 +++++++++++++++++++++++++++ docs/ui-audit/CREATED_TEST_DATA.md | 24 +++++++++++++++++++--- docs/ui-audit/PAGES_MATRIX.md | 13 ++++++------ docs/ui-audit/PROGRESS.md | 32 ++++++++++++++++++++---------- docs/ui-audit/REPORT.md | 31 +++++++++++++++++++++++++++++ 5 files changed, 110 insertions(+), 19 deletions(-) diff --git a/docs/ui-audit/BUGS.md b/docs/ui-audit/BUGS.md index 64f6702..5a26e41 100644 --- a/docs/ui-audit/BUGS.md +++ b/docs/ui-audit/BUGS.md @@ -346,3 +346,32 @@ La VM et sa base `TEST_UI_*` ne sont pas accessibles depuis cet environnement. Les résultats ci-dessus sont des tests automatisés locaux uniquement ; ils ne valident pas la base distante ni le rendu sur la VM d'audit. + +## Revalidation sur la VM de test — 22 août 2026 + +Passe exécutée séquentiellement sur `http://82.64.101.239/` avec `chatgpt`. +La base existante et les données `TEST_UI_*` ont été conservées ; aucun +watchdog, intégration externe ou utilisateur `alban` n'a été modifié. + +| Bug | Résultat VM | Scénario et données | +|---|---|---| +| UI-003 | **VALIDÉ SUR VM** | `/equipments/rooms/new` propose les bâtiments existants ; création de `TEST_UI_REVALIDATION_SALLE` ; bâtiment 2 + zone 1 est refusé en HTTP 400. | +| UI-017 | **TOUJOURS REPRODUCTIBLE** | `/interventions/` reste en HTTP 500 avec l'intervention ID 1 sans salle/équipement. | +| UI-019 | **VALIDÉ SUR VM** | `/` renvoie 200 et affiche « Aucun équipement », sans `None`, `null` ni `undefined` visibles. | +| UI-001 | **VALIDÉ SUR VM** | `/cleaning/transvasement` 200 ; transvasement test de 0,1 L enregistré et quantité impossible refusée proprement. | +| UI-002 | **VALIDÉ SUR VM** | `/cleaning/forecast-config` 200 ; coefficient non numérique renvoyé en 400 avec message, sans 500. | +| UI-022 | **VALIDÉ SUR VM** | `/cleaning/stock` 200 après lots, réceptions, sortie, transfert et correction ; produits, lots et emplacements visibles. | +| UI-015 | **VALIDÉ SUR VM** | POST vide `/companies/new` en 400 avec formulaire ; `TEST_UI_REVALIDATION_ENTREPRISE` créé (ID 2). | +| UI-016 | **VALIDÉ SUR VM** | POST vide `/interventions/new` en 400 ; `TEST_UI_REVALIDATION_INTERVENTION` créé (ID 2). | +| UI-024 | **VALIDÉ SUR VM** | `stock_minimum=abc` sur le produit ID 1 renvoie 400 et conserve le formulaire. | +| UI-030 | **VALIDÉ SUR VM** | PDF artificiel `TEST_UI_REVALIDATION_DOCUMENT.pdf` visible dans le détail de l'intervention 1 et téléchargeable (document ID 2). | +| UI-012 | **CORRIGÉ PARTIELLEMENT — PROBLÈME RÉSIDUEL** | Le bouton global `/logs/` reste visible alors que l'URL renvoie 403. Les comptes `TEST_UI_USER_MULTI` et `TEST_UI_USER_NONE` n'ont pas pu être reconnectés : leurs mots de passe ne sont pas documentés. | + +### UI-031 — nouveau blocage observé + +Les groupes `TEST_UI_EQ_CHAISES` (30 individuels) et +`TEST_UI_EQ_CHAISE_UNITAIRE` créés dans `TEST_UI_CLASSE_101` apparaissent dans +`/equipments/` et dans la salle, mais `/equipments/1` et `/equipments/2` +renvoient HTTP 500. `/equipments//hierarchy` renvoie une liste de zones +vide. Les déplacements et cycles de vie restent donc bloqués. Anomalie +documentée uniquement, sans correction pendant cette passe. diff --git a/docs/ui-audit/CREATED_TEST_DATA.md b/docs/ui-audit/CREATED_TEST_DATA.md index 0e51670..92e318a 100644 --- a/docs/ui-audit/CREATED_TEST_DATA.md +++ b/docs/ui-audit/CREATED_TEST_DATA.md @@ -81,8 +81,26 @@ Mot de passe commun temporaire des comptes de test : non documenté dans Git. ## Non créés -La création des salles a été bloquée par UI-003. Aucun équipement, -intervention liée à un local, utilisateur ou rôle `TEST_UI_*` supplémentaire -n'a été créé pendant cette reprise. +Lors de la passe initiale, la création des salles était bloquée par UI-003 ; +aucun équipement ou intervention liée à un local n'avait alors été créé. `alban` n'a jamais été modifié. + +## Données ajoutées lors de la revalidation VM — 22/08/2026 + +- Salle `TEST_UI_REVALIDATION_SALLE` (ID 1), puis `TEST_UI_CLASSE_101` + (ID 2), `TEST_UI_CLASSE_102` (ID 3), `TEST_UI_CIRCULATION_1` (ID 4), + `TEST_UI_ESCALIER_A` (ID 5), `TEST_UI_LOCAL_TECH` (ID 6) et + `TEST_UI_SANITAIRES` (ID 7), dans `Bâtiment audit` / `TEST_UI_ZONE_PEDAGO`. +- Entreprise `TEST_UI_REVALIDATION_ENTREPRISE` (ID 2). +- Intervention `TEST_UI_REVALIDATION_INTERVENTION` (ID 2). +- Document `TEST_UI_REVALIDATION_DOCUMENT.pdf` (document ID 2), attaché à + l'intervention ID 1 ; PDF artificiel sans donnée personnelle. +- Groupe `TEST_UI_EQ_CHAISES` (ID 1, 30 individuels) et groupe + `TEST_UI_EQ_CHAISE_UNITAIRE` (ID 2, 1 individuel), catégorie Mobilier, + dans `TEST_UI_CLASSE_101`. +- Mouvement de transvasement de 0,1 L sur `TEST_UI_DETERGENT_SOL` depuis + `TEST_UI_STOCK_CENTRAL`. + +Le détail direct des groupes d'équipements répond 500 (UI-031) ; aucune +suppression ni tentative de réparation n'a été effectuée. diff --git a/docs/ui-audit/PAGES_MATRIX.md b/docs/ui-audit/PAGES_MATRIX.md index 1ce9872..078352f 100644 --- a/docs/ui-audit/PAGES_MATRIX.md +++ b/docs/ui-audit/PAGES_MATRIX.md @@ -4,10 +4,10 @@ Matrice initiale issue du smoke test authentifié avec `chatgpt`. | Domaine | URL | Résultat | Commentaire | |---|---|---:|---| -| Dashboard | `/` | 500 | UI-019 : `interv.equipment` nul dans une intervention de test | +| Dashboard | `/` | 200 | Revalidé VM ; affiche « Aucun équipement » si la relation est absente | | Alertes | `/alerts` | 200 | Accessible | | Messagerie | `/messagerie` | 200 | Accessible | -| Interventions | `/interventions/` | 200 | Smoke test | +| Interventions | `/interventions/` | 500 | UI-017 toujours reproductible avec intervention sans salle/équipement | | Nouvelle intervention | `/interventions/new` | 200 | Formulaire affiché | | Planning | `/planning/` | 200 | Smoke test | | Horaires | `/planning/time` | 200 | Formulaire affiché | @@ -25,11 +25,12 @@ Matrice initiale issue du smoke test authentifié avec `chatgpt`. | Export DUERP | `/prevention/duerp.csv` | 200 | CSV généré avec en-tête UTF-8 et téléchargement | | Formations | `/training/` | 200 | Smoke test | | Équipements | `/equipments/` | 200 | Smoke test | +| Équipement détail groupe | `/equipments/1` | 500 | UI-031 observé après création de `TEST_UI_EQ_CHAISES` | | Catégories | `/equipments/categories` | 200 | Accessible | | Bâtiments | `/equipments/buildings/` | 200 | Confusion Site/Bâtiment | | Zones | `/equipments/zones/` | 200 | Accessible | | Salles | `/equipments/rooms/` | 200 | Liste accessible | -| Création salle | `/equipments/rooms/new` | 200 | Select bâtiment vide | +| Création salle | `/equipments/rooms/new` | 200 | Revalidé VM : bâtiments visibles, validation croisée serveur | | Entreprises | `/companies/` | 200 | Accessible | | Entreprise détail | `/companies/1` | 200 | Détail de l'entreprise de test accessible | | Téléversement document intervention | `/documents/upload/intervention/1` | 302 | PDF artificiel accepté | @@ -39,19 +40,19 @@ Matrice initiale issue du smoke test authentifié avec `chatgpt`. | Nettoyage | `/cleaning/` | 200 | Accessible | | Produits | `/cleaning/products` | 200 | Accessible | | Références | `/cleaning/references` | 200 | Accessible | -| Stock | `/cleaning/stock` | 500 | UI-022 après réception de lots de test | +| Stock | `/cleaning/stock` | 200 | Revalidé VM après lots, mouvements et correction d'inventaire | | Emplacements | `/cleaning/locations` | 200 | Formulaire/liste accessibles | | Réceptions | `/cleaning/receive` | 200 | Accessible | | Sorties | `/cleaning/issue` | 200 | Accessible | | Transferts | `/cleaning/transfer` | 200 | Formulaire accessible | | Mouvements | `/cleaning/movements` | 200 | Journal accessible | | Inventaires | `/cleaning/inventory` | 200 | Écran accessible | -| Transvasement | `/cleaning/transvasement` | 500 | UI-001 | +| Transvasement | `/cleaning/transvasement` | 200 | Revalidé VM ; transvasement 0,1 L et refus quantité impossible | | Fiches papier | `/cleaning/requests` | 200 | Accessible | | Nouveau profil de demande | `/cleaning/requests/new` | 200 | Création de profil validée | | Impression fiche | `/cleaning/requests/print/1` | 200 | Fiche accessible avec agent TEST_UI | | Matériel durable | `/cleaning/material` | 200 | Accessible | -| Prévision | `/cleaning/forecast-config` | 500 | UI-002 | +| Prévision | `/cleaning/forecast-config` | 200 | Revalidé VM ; validation numérique testée | | Prévision produit | `/cleaning/forecast/1` | 200 | Résultat consultable pour le produit TEST_UI | | Documents produits | `/cleaning/documents` | 200 | Écran accessible, aucun document de test créé | | Étiquette mouvement | `/cleaning/labels/1` | 200 | Étiquette consultable à partir d'un mouvement avec lot/référence | diff --git a/docs/ui-audit/PROGRESS.md b/docs/ui-audit/PROGRESS.md index 3fa7ee1..05688df 100644 --- a/docs/ui-audit/PROGRESS.md +++ b/docs/ui-audit/PROGRESS.md @@ -4,8 +4,8 @@ Dernière mise à jour : 22 août 2026 — reprise après interruption. ## État global -État : **en cours**. Les tests doivent continuer ; l'audit n'est pas déclaré -terminé. +État : **en cours**. Revalidation VM P1 effectuée ; l'audit fonctionnel doit +continuer sur les scénarios encore testables. ## Phases @@ -15,9 +15,9 @@ terminé. | Menu et smoke test | Partiel | Pages principales testées séquentiellement | | RBAC | Partiel avancé | multi-rôles, retrait/deny et accès directs testés ; menu non filtré | | Établissement | Partiel | Sites, bâtiments et zones créés ; confusion site/bâtiment | -| Salles | Bloqué | Select bâtiment vide sur `/equipments/rooms/new` | -| Équipements | Partiel | Création guidée/avancée et assistant inventaire testés ; salles bloquées | -| Interventions | Partiel | Création, détail, édition et erreur liste testés | +| Salles | Partiel avancé | Sélection bâtiment/zone corrigée et création/rejet croisé revalidés | +| Équipements | Bloqué partiel | Groupes créés, mais détail `/equipments/` en 500 (UI-031) | +| Interventions | Partiel | Création/validation et dashboard revalidés ; liste encore en 500 (UI-017) | | Planning | Partiel | time/availability/tâches testés ; disponibilité semble dupliquée | | Prévention | Partiel | Validation invalide et création d'un agent TEST_UI vérifiées | | Stock / produits | Partiel avancé | Produit/référence/conditionnement, emplacements, lots, réception, sortie FEFO, transfert et inventaire testés ; état du stock 500, transvasement/prévision 500 | @@ -160,11 +160,23 @@ terminé. ## Prochaine étape -Revalider la disponibilité, puis poursuivre les contrôles de formulaires, -responsive/accessibilité et les scénarios stock non destructifs ; les -scénarios dépendant d'une salle étaient bloqués par UI-003 et les 500 UI-001, -UI-002, UI-017 et UI-019 ; les correctifs sont maintenant dans le dépôt et -doivent être revalidés sur la VM. +Qualifier ultérieurement UI-017 et UI-031 dans une passe de code dédiée, puis +reprendre les déplacements et cycles de vie d'équipements. Les contrôles +stock, formulaires et planning indépendants restent à poursuivre. + +## Revalidation VM — 22 août 2026 + +- **VALIDÉ SUR VM** : UI-001, UI-002, UI-003, UI-015, UI-016, UI-019, + UI-022, UI-024 et UI-030. +- **TOUJOURS REPRODUCTIBLE** : UI-017 (`/interventions/` en 500 avec relation + salle absente). +- **CORRIGÉ PARTIELLEMENT — PROBLÈME RÉSIDUEL** : UI-012 (lien global + Journaux encore visible malgré le 403). + +Le dashboard est revenu en 200 et affiche « Aucun équipement ». Six salles, +deux groupes d'équipements, une entreprise, une intervention, un PDF +artificiel et un mouvement de transvasement ont été ajoutés et laissés dans la +base ; aucune donnée antérieure n'a été supprimée. ## Passe de corrections locales P1 — 2026-08-22 diff --git a/docs/ui-audit/REPORT.md b/docs/ui-audit/REPORT.md index 4ec1aca..3e03f4b 100644 --- a/docs/ui-audit/REPORT.md +++ b/docs/ui-audit/REPORT.md @@ -120,3 +120,34 @@ La page `/planning/` a répondu en environ 5,5 secondes pour une réponse de 347 Ko. Ce n'est pas qualifié comme panne sur la VM de test, mais la taille et le temps perçu justifient une optimisation ou une pagination si le calendrier grandit. + +## Revalidation VM des correctifs P1 — 22 août 2026 + +La VM `82.64.101.239` a été rejointe avec `chatgpt` et la base existante a +été réutilisée sans réinitialisation. Les pages cleaning, le formulaire de +salle, les validations entreprise/intervention/produit, le dashboard et les +documents ont été retestés avec des données `TEST_UI_*`. + +### Résultats + +- **VALIDÉ SUR VM** : UI-001, UI-002, UI-003, UI-015, UI-016, UI-019, + UI-022, UI-024 et UI-030. +- **TOUJOURS REPRODUCTIBLE** : UI-017 ; `/interventions/` répond encore HTTP + 500 lorsqu'une intervention n'a pas de salle/équipement. +- **CORRIGÉ PARTIELLEMENT — PROBLÈME RÉSIDUEL** : UI-012 ; le bouton global + `/logs/` reste affiché alors que cette URL est refusée en 403. Les comptes + de test à permissions réduites n'ont pas pu être reconnectés car leurs + mots de passe ne sont pas documentés, sans modification de ces comptes. + +Le dashboard est désormais HTTP 200 et le remplacement « Aucun équipement » +est visible. La sélection bâtiment → zone fonctionne et une association +croisée est rejetée côté serveur en 400. + +### Scénarios débloqués puis nouveau blocage + +Six salles ont été créées et la hiérarchie est consultable. Un groupe de 30 +chaises et un groupe unitaire ont été créés dans `TEST_UI_CLASSE_101`. +Toutefois, leur détail direct (`/equipments/1` et `/equipments/2`) répond HTTP +500 et l'endpoint de hiérarchie renvoie une liste de zones vide (UI-031). Les +déplacements, la casse et le cycle de vie restent donc non revalidés. Cette +anomalie n'a pas été corrigée pendant cette passe de revalidation.