gmao/docs/ui-audit/IMPLEMENTATION_PHASE16.md

128 lines
4.9 KiB
Markdown
Raw Normal View History

# Phase 1.6 — UI, UX et navigation
Date de reprise : 23 août 2026
Base : copie locale MariaDB issue de la VM
Périmètre : navigation métier et améliorations UX réversibles ; aucune Phase 2.
## Baseline
- Commit de départ : `f78cddf`.
- Version de départ : `0.1.0-dev.5`.
- Working tree propre avant les changements Phase 1.6.
- Docker : `gmao-flask` 0.1.0-dev.5, MariaDB et Adminer sains.
- URL locale : `http://127.0.0.1:5080/`.
- `/health/` : HTTP 200, base connectée, Pronote/watchdogs désactivés.
- Baseline globale connue : 129 passed, 1 failed, 1 error ; l'échec et
l'erreur sont le test historique de lookback/contexte GMAO hors périmètre.
- Un lancement local isolé des tests avec des identifiants DB génériques a
échoué à l'initialisation (`Access denied`) ; la configuration de test
documentée reste inchangée et ce n'est pas une régression applicative.
## Inventaire et matrice
L'inventaire repository-wide des liens de `base.html`, y compris les entrées
conditionnelles et les liens techniques historiques, est consigné dans
[`MENU_MIGRATION_MATRIX.md`](MENU_MIGRATION_MATRIX.md).
- Entrées uniques inventoriées : **70**.
- MIGRÉ : **25**.
- REGROUPÉ : **20**.
- ADMIN UNIQUEMENT : **25**.
- DOUBLON : **0**.
- OBSOLÈTE À CONFIRMER : **0**.
- NON MIGRÉ : **0**.
- ROUTE CASSÉE constatée dans le template : **0**.
## Nouveau menu métier
La navigation est désormais organisée par intention :
```text
Accueil
Tableau de bord
Mon travail
Interventions
Planning des salles
Planning unifié
Tâches préventives / planifiées
Tâches administratives
Disponibilités
Prévention
Patrimoine
Bâtiments, Zones, Salles / locaux, Équipements
Catégories, Types de salles, Cycle de vie
Produits & stocks
Produits, Références commerciales, Stock, Emplacements
Mouvements, Réceptions, Sorties, Transvasements / dilutions
Fiches de demande, Prévisions
Entreprises
Entreprises, Contrats, Services, Pièces
Documents
Centre documentaire, FDS accessibles
Administration
Utilisateurs, Rôles et permissions, État du système, Journaux
Ancien menu (transitoire)
```
Les rubriques sont conditionnées par les permissions effectives. Un parent
sans enfant autorisé n'est pas rendu. Les URLs et les contrôles backend ne
sont pas remplacés par un contrôle de template.
## Ancien menu
**ANCIEN MENU CONSERVÉ : OUI**
**VISIBLE UNIQUEMENT ADMIN : OUI**
L'ancien inventaire complet est accessible dans `Administration → Ancien
menu`, sous forme de référentiel temporaire. Il inclut aussi les entrées
techniques et intégrations conservées pour comparaison. Il ne possède pas de
nouveau mécanisme d'autorisation et ne doit être retiré qu'après validation
humaine.
## UX appliquée
- Tableau de bord : phrase d'orientation courte ajoutée sans ajouter de
nouvelles métriques ni de moteur de planning.
- Centre documentaire et FDS : états vides explicites, origine des documents,
actions textuelles de téléchargement et lien vers le produit.
- Planning des salles : caption de tableau, en-têtes accessibles, messages
d'état vide actionnables et provenance/protection déjà exprimées en français.
- Administration RBAC : libellés issus de `permission_metadata` et explication
du comportement des administrateurs ; les clés techniques restent
secondaires.
- Aucun changement de modèle, de RBAC, d'intégration ou de données métier.
Les propositions lourdes (checklist d'onboarding, refonte graphique complète,
nouveau dashboard et Phase 2) restent documentées dans `UX_PROPOSALS.md`.
## Responsive et accessibilité
Les contrôles statiques montrent l'usage des composants responsive existants,
des labels associés, des boutons textuels et des captions de tableau. Aucun
navigateur instrumenté n'est disponible dans l'environnement courant : la
validation visuelle 1366×768, 768×1024 et 390×844 reste explicitement à faire
avant une livraison distante. Cette limitation n'est pas présentée comme une
validation visuelle réussie.
## Tests Phase 1.6
- `tests/integration/test_phase16_navigation.py` : menu administrateur,
masquage non-administrateur et destinations principales.
- Les suites documentaires/planning Phase 1 et Phase 1.5 sont conservées.
- Résultat ciblé de navigation : 3 tests passants avec la configuration DB de
test normale.
## Version et livraison
La version sera incrémentée séparément en `0.1.0-dev.6` car la réorganisation
de navigation est visible et substantielle. Ce changement restera dans un
commit `chore(release)` distinct. Aucun changement n'a été fait à `alban`, aux
watchdogs, aux intégrations protégées ou aux données `TEST_UI_*`.
## Limites restantes
- validation visuelle réelle sans navigateur ;
- suppression de l'ancien menu après validation humaine ;
- checklist d'onboarding et enrichissement du dashboard ;
- moteur d'optimisation et replanification Phase 2 non commencés.