130 lines
4.7 KiB
Markdown
130 lines
4.7 KiB
Markdown
# 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.
|