diff --git a/docs/ui-audit/BUGS.md b/docs/ui-audit/BUGS.md new file mode 100644 index 0000000..c109140 --- /dev/null +++ b/docs/ui-audit/BUGS.md @@ -0,0 +1,56 @@ +# Bugs et anomalies + +## UI-001 — Transvasement inaccessible + +- Priorité : P1 +- Module : Matériel & Produits d'entretien +- URL : `/cleaning/transvasement` +- Compte : `chatgpt` / `super_admin` +- Résultat : HTTP 500, écran générique. +- Attendu : formulaire utilisable ou message métier explicite si le stock est + vide. +- Impact : dilution et transvasement impossibles. + +## UI-002 — Configuration des prévisions inaccessible + +- Priorité : P1 +- Module : Matériel & Produits d'entretien +- URL : `/cleaning/forecast-config` +- Compte : `chatgpt` / `super_admin` +- Résultat : HTTP 500. +- Attendu : coefficients par défaut affichés et modifiables. +- Impact : coefficients de permanence impossibles à configurer. + +## UI-003 — Création de salle bloquée + +- Priorité : P1 +- Module : Établissement +- URL : `/equipments/rooms/new` +- Résultat : le select « Bâtiment » est vide malgré des bâtiments visibles + dans `/equipments/buildings/`. +- Attendu : bâtiments proposés, puis zones filtrées par bâtiment. +- Impact : impossibilité de poursuivre les scénarios équipements/interventions. + +## UI-004 — Confusion Site/Bâtiment + +- Priorité : P2 +- URL : `/equipments/buildings/` +- Résultat : le formulaire principal crée un `Site` (Collège), tandis que le + véritable bâtiment se crée via `/equipments/buildings/new`. +- Recommandation : séparer les deux actions et afficher la hiérarchie + établissement → bâtiment → zone → salle. + +## UI-005 — Commit Docker non identifié + +- Priorité : P2 +- URL : `/health/`, setup +- Résultat : version `0.1.0-dev.2`, commit `unknown`. +- Recommandation : fournir `GIT_VERSION=$(git rev-parse HEAD)` au build. + +## UI-006 — Instabilité sous navigation séquentielle + +- Priorité : P1 à confirmer +- Résultat : temps de réponse parfois supérieur à 8–30 secondes, puis + indisponibilité temporaire. +- Recommandation : surveiller CPU/RAM, Gunicorn, connexions MariaDB et + documenter les temps de réponse sans lancer de test de charge. diff --git a/docs/ui-audit/CREATED_TEST_DATA.md b/docs/ui-audit/CREATED_TEST_DATA.md new file mode 100644 index 0000000..2b7b35d --- /dev/null +++ b/docs/ui-audit/CREATED_TEST_DATA.md @@ -0,0 +1,42 @@ +# Données TEST_UI_* laissées sur l'instance + +Le nettoyage final est volontairement interdit. Les objets suivants sont +laissés pour inspection manuelle. + +## Établissement + +- Collège issu du setup : `Collège audit RBAC`. +- Bâtiment issu du setup : `Bâtiment audit`. +- Catégories importées : 36. +- Lots importés : 91. + +## Sites créés via `/equipments/buildings/` + +- `TEST_UI_BAT_A` — site de test. +- `TEST_UI_BAT_B` — site de test. + +## Bâtiments créés via `/equipments/buildings/new` + +- `TEST_UI_BUILDING_A`. +- `TEST_UI_BUILDING_B`. + +## Zones + +- `TEST_UI_ZONE_PEDAGO`. +- `TEST_UI_ZONE_ADMIN`. +- `TEST_UI_ZONE_TECH`. +- `TEST_UI_ZONE_RESTAURATION`. +- `TEST_UI_ZONE_EXTERIEUR`. +- `TEST_UI_ZONE_CIRCULATION`. + +## Entreprises + +- `TEST_UI_COMPANY_MAINTENANCE`. + +## 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. + +`alban` n'a jamais été modifié. diff --git a/docs/ui-audit/PAGES_MATRIX.md b/docs/ui-audit/PAGES_MATRIX.md new file mode 100644 index 0000000..6a9a800 --- /dev/null +++ b/docs/ui-audit/PAGES_MATRIX.md @@ -0,0 +1,42 @@ +# Matrice des pages + +Matrice initiale issue du smoke test authentifié avec `chatgpt`. + +| Domaine | URL | Résultat | Commentaire | +|---|---|---:|---| +| Dashboard | `/` | 200 | Accessible super-admin | +| Alertes | `/alerts` | 200 | Accessible | +| Messagerie | `/messagerie` | 200 | Accessible | +| Interventions | `/interventions/` | 200 | Smoke test | +| Nouvelle intervention | `/interventions/new` | 200 | Formulaire affiché | +| Planning | `/planning/` | 200 | Smoke test | +| Horaires | `/planning/time` | 200 | Formulaire affiché | +| Prévention | `/prevention/` | 200 | Smoke test | +| Formations | `/training/` | 200 | Smoke test | +| Équipements | `/equipments/` | 200 | Smoke test | +| 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 | +| Entreprises | `/companies/` | 200 | Accessible | +| Lots | `/lots/` | 200 | Accessible | +| Pièces | `/parts/` | 200 | Accessible | +| Nettoyage | `/cleaning/` | 200 | Accessible | +| Produits | `/cleaning/products` | 200 | Accessible | +| Références | `/cleaning/references` | 200 | Accessible | +| Stock | `/cleaning/stock` | 200 | Accessible | +| Réceptions | `/cleaning/receive` | 200 | Accessible | +| Sorties | `/cleaning/issue` | 200 | Accessible | +| Transvasement | `/cleaning/transvasement` | 500 | UI-001 | +| Fiches papier | `/cleaning/requests` | 200 | Accessible | +| Matériel durable | `/cleaning/material` | 200 | Accessible | +| Prévision | `/cleaning/forecast-config` | 500 | UI-002 | +| Rôles | `/admin/roles` | 200 | RBAC vérifié | +| Utilisateurs | `/admin/users` | 200 | RBAC vérifié | +| Permissions | `/admin/permissions` | 200 | RBAC vérifié | +| Status | `/status/` | 200 | Accessible | +| Logs | `/logs/` | 403 | Incohérence à analyser | + +Les pages d'intégration et de configuration interdites ne sont pas testées +activement. diff --git a/docs/ui-audit/PROGRESS.md b/docs/ui-audit/PROGRESS.md new file mode 100644 index 0000000..03452d9 --- /dev/null +++ b/docs/ui-audit/PROGRESS.md @@ -0,0 +1,45 @@ +# Avancement de l'audit + +Dernière mise à jour : 21 août 2026 — reprise après interruption. + +## État global + +État : **en cours**. Les tests doivent continuer ; l'audit n'est pas déclaré +terminé. + +## Phases + +| Phase | État | Notes | +|---|---|---| +| Santé, connexion, version | Terminé | Version 0.1.0-dev.2, commit unknown | +| Menu et smoke test | Partiel | Pages principales testées séquentiellement | +| RBAC | Partiel | Catalogue et accès anonymes vérifiés | +| Établissement | Partiel | Sites, bâtiments et zones créés ; confusion site/bâtiment | +| Salles | Bloqué | Select bâtiment vide sur `/equipments/rooms/new` | +| Équipements | Non commencé | Dépend des salles | +| Interventions | Smoke uniquement | Création détaillée à reprendre | +| Planning | Smoke uniquement | Scénarios permanence à reprendre | +| Prévention | Smoke uniquement | Création à reprendre | +| Stock / produits | Partiel | Deux pages 500 bloquent transvasement/prévision | +| Personnel | Non commencé | À reprendre | +| Documents | Non commencé | À reprendre | +| Responsive/accessibilité | Non commencé | À reprendre | + +## Dernière action réussie + +- Connexion `chatgpt`. +- Vérification HTTP des pages principales. +- Création de données `TEST_UI_*` listées dans `CREATED_TEST_DATA.md`. + +## Blocages + +- `/cleaning/transvasement` → 500. +- `/cleaning/forecast-config` → 500. +- `/equipments/rooms/new` → aucun bâtiment dans le sélecteur. +- L'instance a déjà subi des indisponibilités temporaires lors d'un crawl trop + rapide ; reprendre avec une seule session et des délais longs. + +## Prochaine étape + +Revalider la disponibilité, puis tester les formulaires planning/prévention et +les contrôles d'erreur accessibles sans dépendre d'une salle. diff --git a/docs/ui-audit/README.md b/docs/ui-audit/README.md new file mode 100644 index 0000000..0915f2d --- /dev/null +++ b/docs/ui-audit/README.md @@ -0,0 +1,14 @@ +# Audit UI/UX GMAO + +Audit fonctionnel de l'instance de test `http://82.64.101.239/`. + +Les tests sont réalisés séquentiellement avec Playwright et des retries +progressifs pour limiter la charge de la VM. Les zones interdites (watchdogs, +intégrations, configuration GMAO/IA) et l'utilisateur `alban` sont hors +périmètre d'écriture. + +- [Avancement](PROGRESS.md) +- [Rapport](REPORT.md) +- [Bugs](BUGS.md) +- [Données de test](CREATED_TEST_DATA.md) +- [Matrice des pages](PAGES_MATRIX.md) diff --git a/docs/ui-audit/REPORT.md b/docs/ui-audit/REPORT.md new file mode 100644 index 0000000..d7b8e01 --- /dev/null +++ b/docs/ui-audit/REPORT.md @@ -0,0 +1,32 @@ +# Rapport d'audit — synthèse actuelle + +## Méthodologie + +Tests séquentiels avec Playwright et requêtes HTTP contrôlées, un seul compte +super-administrateur, délais longs et retries manuels après indisponibilité. +Aucune correction applicative, aucun nettoyage et aucune action sur les zones +interdites. + +## État actuel + +Le site est accessible après ajout de ressources VM. Le RBAC initialisé expose +les rôles système et les permissions attendues. Les accès anonymes aux API +retournent 401. Les pages métier principales répondent 200. + +## Priorités + +- P1 : corriger les deux 500 du module entretien. +- P1 : rétablir les bâtiments dans le formulaire de création de salle. +- P1 à confirmer : mesurer la stabilité sous navigation lente et surveiller + la base/Gunicorn. +- P2 : clarifier Site, Collège, Bâtiment et unités de produit. +- P2 : injecter `GIT_VERSION` dans les images Docker. + +## Limites + +Les équipements, déplacements, interventions liées à des salles, scénarios +FEFO, documents, multi-rôles avancés, responsive et accessibilité restent +marqués non testés tant que UI-003 n'est pas résolu et que les pages 500 ne +sont pas disponibles. + +Ce document est un checkpoint, pas une déclaration de fin d'audit.