audit(ui): revalider correctifs et blocage équipements
Some checks are pending
CI - Tests et Syntax / lint-and-test (push) Waiting to run

This commit is contained in:
root 2026-08-22 14:45:28 +00:00
parent ce6d8ae9de
commit d4d80a35be
5 changed files with 88 additions and 3 deletions

View file

@ -419,3 +419,35 @@ reste **CORRIGÉ DANS LE CODE — À REVALIDER SUR VM**.
- Fichier : `app_new/templates/base.html`. - Fichier : `app_new/templates/base.html`.
- Tests : concordance vérifiée avec `required_permission('logs.index', 'GET')`. - Tests : concordance vérifiée avec `required_permission('logs.index', 'GET')`.
- Statut : **CORRIGÉ DANS LE CODE — À REVALIDER SUR VM**. - Statut : **CORRIGÉ DANS LE CODE — À REVALIDER SUR VM**.
## Revalidation VM après déploiement — 22 août 2026
Correctifs observés : `8c54f46`, `864f65d`, `f2783a0`, `ce6d8ae`.
### UI-017 — liste des interventions
**Statut : VALIDÉ SUR VM.** `/interventions/` répond HTTP 200 avec
l'intervention sans salle ni équipement et affiche « Localisation non
renseignée ». Les détails testés, le planning (redirigé vers `/planning/`) et
le dashboard répondent également 200. Aucun texte `None`, `null` ou
`undefined` n'est visible.
### UI-031 — détail et hiérarchie des équipements groupés
**Statut : TOUJOURS REPRODUCTIBLE (correction partielle).** Les détails
`/equipments/1` et `/equipments/2` renvoient encore HTTP 500 pour
`TEST_UI_EQ_CHAISES` (quantité 30) et `TEST_UI_EQ_CHAISE_UNITAIRE` (quantité
1). En revanche, les endpoints `/equipments/1/hierarchy` et
`/equipments/2/hierarchy` répondent HTTP 200 et contiennent la hiérarchie
`TEST_UI_ZONE_PEDAGO → TEST_UI_CLASSE_101`, avec les quantités 30 et 1. Les
déplacements, la casse et le cycle de vie n'ont pas été exécutés, car le
détail reste bloquant.
### UI-012 — lien Journaux
**Statut : VALIDÉ SUR VM pour le compte sans permission ; contrôle positif à
compléter.** Avec `chatgpt`, l'accès direct `/logs/` reste HTTP 403 et le
dashboard ne contient plus aucun lien `logs`. Les identifiants des anciens
comptes à permissions réduites ne sont pas documentés ; aucun compte n'a été
modifié et `alban` n'a pas été touché. Le contrôle positif avec
`watchdog_dnd.view` devra être réalisé lors d'une prochaine passe.

View file

@ -104,3 +104,10 @@ aucun équipement ou intervention liée à un local n'avait alors été créé.
Le détail direct des groupes d'équipements répond 500 (UI-031) ; aucune Le détail direct des groupes d'équipements répond 500 (UI-031) ; aucune
suppression ni tentative de réparation n'a été effectuée. suppression ni tentative de réparation n'a été effectuée.
## Revalidation VM du 22/08/2026
Aucune donnée supplémentaire n'a été créée pendant la revalidation des
commits `8c54f46`, `864f65d`, `f2783a0` et `ce6d8ae`. Les objets listés
ci-dessus ont été réutilisés ; aucune donnée `TEST_UI_*` n'a été supprimée ou
modifiée.

View file

@ -7,7 +7,7 @@ Matrice initiale issue du smoke test authentifié avec `chatgpt`.
| Dashboard | `/` | 200 | Revalidé VM ; affiche « Aucun équipement » si la relation est absente | | Dashboard | `/` | 200 | Revalidé VM ; affiche « Aucun équipement » si la relation est absente |
| Alertes | `/alerts` | 200 | Accessible | | Alertes | `/alerts` | 200 | Accessible |
| Messagerie | `/messagerie` | 200 | Accessible | | Messagerie | `/messagerie` | 200 | Accessible |
| Interventions | `/interventions/` | 500 | UI-017 corrigé dans le code, à revalider sur VM | | Interventions | `/interventions/` | 200 | UI-017 validé sur VM avec localisation absente |
| Nouvelle intervention | `/interventions/new` | 200 | Formulaire affiché | | Nouvelle intervention | `/interventions/new` | 200 | Formulaire affiché |
| Planning | `/planning/` | 200 | Smoke test | | Planning | `/planning/` | 200 | Smoke test |
| Horaires | `/planning/time` | 200 | Formulaire affiché | | Horaires | `/planning/time` | 200 | Formulaire affiché |
@ -25,7 +25,7 @@ Matrice initiale issue du smoke test authentifié avec `chatgpt`.
| Export DUERP | `/prevention/duerp.csv` | 200 | CSV généré avec en-tête UTF-8 et téléchargement | | Export DUERP | `/prevention/duerp.csv` | 200 | CSV généré avec en-tête UTF-8 et téléchargement |
| Formations | `/training/` | 200 | Smoke test | | Formations | `/training/` | 200 | Smoke test |
| Équipements | `/equipments/` | 200 | Smoke test | | Équipements | `/equipments/` | 200 | Smoke test |
| Équipement détail groupe | `/equipments/1` | 500 | UI-031 corrigé dans le code, à revalider sur VM | | Équipement détail groupe | `/equipments/1` | 500 | UI-031 toujours reproductible sur VM |
| Catégories | `/equipments/categories` | 200 | Accessible | | Catégories | `/equipments/categories` | 200 | Accessible |
| Bâtiments | `/equipments/buildings/` | 200 | Confusion Site/Bâtiment | | Bâtiments | `/equipments/buildings/` | 200 | Confusion Site/Bâtiment |
| Zones | `/equipments/zones/` | 200 | Accessible | | Zones | `/equipments/zones/` | 200 | Accessible |
@ -77,7 +77,7 @@ Matrice initiale issue du smoke test authentifié avec `chatgpt`.
| Utilisateurs | `/admin/users` | 200 | RBAC vérifié | | Utilisateurs | `/admin/users` | 200 | RBAC vérifié |
| Permissions | `/admin/permissions` | 200 | RBAC vérifié | | Permissions | `/admin/permissions` | 200 | RBAC vérifié |
| Status | `/status/` | 200 | Accessible | | Status | `/status/` | 200 | Accessible |
| Logs | `/logs/` | 403 | Résidu UI-012 corrigé dans le code ; bouton aligné sur `watchdog_dnd.view` | | Logs | `/logs/` | 403 | UI-012 : lien absent pour `chatgpt` sans `watchdog_dnd.view`, contrôle négatif validé |
| Export interventions | `/exports/interventions` | 200 | Page d'export accessible | | Export interventions | `/exports/interventions` | 200 | Page d'export accessible |
| Export coûts CSV | `/exports/costs/csv` | 200 | Réponse courte ; téléchargement non sauvegardé | | Export coûts CSV | `/exports/costs/csv` | 200 | Réponse courte ; téléchargement non sauvegardé |
| Logements | `/housing/` | 200 | Page accessible | | Logements | `/housing/` | 200 | Page accessible |

View file

@ -218,6 +218,33 @@ hiérarchie même sans enfant ; UI-012 aligne le bouton Journaux sur
Tests ciblés : **10 passed** ; suites demandées : **19 passed**. Tests ciblés : **10 passed** ; suites demandées : **19 passed**.
Suite complète : **120 passed, 2 failed, 1 error**. Le test historique de Suite complète : **120 passed, 2 failed, 1 error**. Le test historique de
lookback GMAO échoue toujours avec son teardown ; un test stock échoue aussi lookback GMAO échoue toujours avec son teardown ; un test stock échoue aussi
## Revalidation VM après déploiement — 22 août 2026
Correctifs vérifiés : `8c54f46`, `864f65d`, `f2783a0`, `ce6d8ae`.
| Élément | Statut | Résultat observé |
|---|---|---|
| UI-017 — liste interventions | **VALIDÉ SUR VM** | Liste, détails, planning et dashboard en 200 ; relations absentes affichées par un libellé humain. |
| UI-031 — détail équipements | **TOUJOURS REPRODUCTIBLE** | `/equipments/1` et `/equipments/2` en 500 ; hiérarchies JSON en 200 avec zone, salle et quantités. |
| UI-012 — lien Journaux | **VALIDÉ SUR VM (négatif)** | `chatgpt` n'a pas le lien et `/logs/` reste 403 ; contrôle positif à compléter. |
Les scénarios de déplacement, casse, réparation et mise au rebut restent
bloqués par UI-031. Aucun nouveau compte ni objet n'a été créé pendant cette
revalidation ; les données `TEST_UI_*` existantes ont été conservées. Les
zones interdites et l'utilisateur `alban` n'ont pas été touchés.
### Couverture de cette passe
- Contrôle santé et conservation de la base : terminé.
- UI-017 : terminé et validé sur VM.
- UI-031 : hiérarchie revalidée, détail encore bloqué.
- UI-012 : contrôle négatif terminé ; contrôle positif restant.
- Scénarios équipements dépendants du détail : non exécutables tant que le
500 persiste.
Prochaine étape : corriger UI-031 dans une passe de code distincte, puis
revalider sur la VM avant de reprendre les mouvements d'équipements.
après modification du rôle admin par les tests RBAC. Ces résultats sont hors après modification du rôle admin par les tests RBAC. Ces résultats sont hors
des trois correctifs ciblés. des trois correctifs ciblés.

View file

@ -191,3 +191,22 @@ Après déploiement des commits `8c54f46`, `864f65d` et `f2783a0`, vérifier ave
les données `TEST_UI_*` : `/interventions/`, `/`, `/equipments/1`, les données `TEST_UI_*` : `/interventions/`, `/`, `/equipments/1`,
`/equipments/2`, `/equipments/1/hierarchy`, et la visibilité de `/logs/` pour `/equipments/2`, `/equipments/1/hierarchy`, et la visibilité de `/logs/` pour
un compte sans `watchdog_dnd.view`. Aucune migration Alembic n'est nécessaire. un compte sans `watchdog_dnd.view`. Aucune migration Alembic n'est nécessaire.
## Revalidation VM après déploiement — 22 août 2026
- **UI-017 — VALIDÉ SUR VM** : `/interventions/`, les détails testés, le
planning et `/` répondent 200 avec les relations optionnelles absentes. Le
rendu utilise « Localisation non renseignée » et ne contient pas
`None/null/undefined`.
- **UI-031 — TOUJOURS REPRODUCTIBLE** : `/equipments/1` et `/equipments/2`
répondent encore 500. Les deux endpoints `/hierarchy` répondent 200 et
retournent bien `TEST_UI_ZONE_PEDAGO → TEST_UI_CLASSE_101` avec les
quantités 30 et 1. Les mouvements et cycles de vie ne peuvent donc pas
être testés dans cette passe.
- **UI-012 — VALIDÉ SUR VM (contrôle négatif)** : pour `chatgpt`, le lien
Journaux est absent et `/logs/` reste 403. Le contrôle positif avec
`watchdog_dnd.view` reste à compléter avec un compte de test disponible.
Aucune nouvelle donnée n'a été créée et aucune donnée `TEST_UI_*` n'a été
supprimée. `alban`, les watchdogs et les intégrations interdites n'ont pas été
touchés.