audit(ui): initialiser le suivi persistant
Some checks are pending
CI - Tests et Syntax / lint-and-test (push) Waiting to run

This commit is contained in:
root 2026-08-21 23:53:27 +00:00
parent 8754898b17
commit f0da5656e0
6 changed files with 231 additions and 0 deletions

56
docs/ui-audit/BUGS.md Normal file
View file

@ -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 à 830 secondes, puis
indisponibilité temporaire.
- Recommandation : surveiller CPU/RAM, Gunicorn, connexions MariaDB et
documenter les temps de réponse sans lancer de test de charge.

View file

@ -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é.

View file

@ -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.

45
docs/ui-audit/PROGRESS.md Normal file
View file

@ -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.

14
docs/ui-audit/README.md Normal file
View file

@ -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)

32
docs/ui-audit/REPORT.md Normal file
View file

@ -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.