gmao/AUDIT_UI_2026-08-21.md

131 lines
4.7 KiB
Markdown
Raw Normal View History

2026-08-22 01:44:40 +02:00
# Audit UI/UX — environnement de test
Date : 21 août 2026
Instance : `http://82.64.101.239/`
Compte : `chatgpt`
`alban` n'a pas été modifié.
## Résumé
Après l'ajout de ressources VM, l'instance répond de nouveau. Les modules
principaux sont accessibles, mais trois anomalies sont reproductibles :
- `/cleaning/transvasement` renvoie HTTP 500 ;
- `/cleaning/forecast-config` renvoie HTTP 500 ;
- `/equipments/rooms/new` affiche un sélecteur de bâtiment vide alors que des
bâtiments existent.
La page Bâtiments mélange aussi la création d'un site/collège et celle d'un
bâtiment, ce qui est trompeur pour un utilisateur non technique.
## Santé et version
- `/health/` : HTTP 200, MariaDB connectée.
- Version : `0.1.0-dev.2`.
- Environnement déclaré : `development`.
- Commit affiché : `unknown` (image construite sans `GIT_VERSION`).
- Aucun watchdog ou intégration interdite n'a été actionné.
## Smoke test
HTTP 200 avec `chatgpt` : dashboard, alertes, messagerie, interventions,
planning, prévention, formations, équipements, catégories, bâtiments, zones,
logements, entreprises, contrats, lots, pièces, nettoyage, produits,
références, stock, réceptions, sorties, fiches papier, matériel durable,
rôles, utilisateurs, permissions et status.
| URL | Résultat |
|---|---:|
| `/cleaning/transvasement` | **500** |
| `/cleaning/forecast-config` | **500** |
| `/logs/` | 403 avec `chatgpt` |
| `/api/v1/status` sans session | 401 |
| `/api/v1/equipments` sans session | 401 |
| `/api/v1/interventions` sans session | 401 |
Playwright a confirmé les deux erreurs 500 dans la console navigateur. Les
pages d'intégration, de configuration et les watchdogs n'ont pas été écrites.
## Bugs prioritaires
### UI-001 — Transvasement inaccessible
- Priorité : P1
- URL : `/cleaning/transvasement`
- Résultat : écran générique 500.
- Attendu : formulaire ou message métier explicite avec stock vide.
- Impact : aucune dilution/transvasement possible.
### UI-002 — Prévisions inaccessibles
- Priorité : P1
- URL : `/cleaning/forecast-config`
- Résultat : écran générique 500.
- Attendu : coefficients par défaut modifiables.
- Impact : impossible de paramétrer la consommation des permanences.
### UI-003 — Création de salle bloquée
- Priorité : P1
- URL : `/equipments/rooms/new`
- Résultat : select « Bâtiment » vide malgré des bâtiments existants.
- Attendu : bâtiments proposés puis zones filtrées.
- Impact : impossible de créer les salles, donc de tester équipements et
interventions liés aux locaux.
### UI-004 — Site et bâtiment confondus
- Priorité : P2
- URL : `/equipments/buildings/`
- Résultat : le formulaire principal crée un `Site` (Collège), tandis que le
vrai bâtiment se crée via `/equipments/buildings/new`.
- Recommandation : deux blocs distincts et une aide établissement → bâtiment
→ zone → salle.
### UI-005 — Commit Docker inconnu
- Priorité : P2
- Résultat : version visible mais commit `unknown`.
- Recommandation : `GIT_VERSION=$(git rev-parse HEAD)` lors du build.
### UI-006 — Instabilité pendant le crawl
- Priorité : P1 à confirmer
- Plusieurs navigations ont dépassé 8 à 30 secondes et rendu l'instance
temporairement injoignable. Surveiller Gunicorn, RAM, CPU et MariaDB.
## RBAC vérifié
Le setup crée `super_admin`, `admin`, `responsable_gmao`, `technicien`,
`assistant_prevention`, `demandeur` et `lecture`. La matrice contient 71
permissions ; `admin` en possède 67 et ne possède pas `*`. `super_admin` a une
matrice fixe. Les API anonymes renvoient 401 et les pages métier redirigent
vers la connexion.
## Données de test laissées
Créées via l'interface :
- sites : `TEST_UI_BAT_A`, `TEST_UI_BAT_B` ;
- bâtiments : `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` ;
- entreprise : `TEST_UI_COMPANY_MAINTENANCE`.
Le setup a également laissé `Collège audit RBAC`, `Bâtiment audit`, 36
catégories et 91 lots. La création des salles a été bloquée par UI-003.
Le formulaire produit a été inspecté : `reference_unit` est un texte libre et
non une liste d'unités. Sa création de test a été interrompue pendant une
phase d'instabilité et doit être vérifiée avant réutilisation.
## Tests restant à reprendre
Équipements quantifiés et sérialisés, déplacements de chaises, cycle de vie,
interventions liées aux salles, FEFO, inventaires, transvasements, planning
des permanences, multi-rôles avancé, documents et responsive complet.
Aucun nettoyage n'a été effectué et aucun code applicatif n'a été corrigé
pendant cet audit.