feat: la page Santé montre la réponse complète des sondes, une console de lecture et une connexion de démonstration #180
No reviewers
Labels
No labels
auto-merge
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
AcadeNice/corentin_wakdo!180
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/health-console"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Demande de l'auteur : dans la page Santé, voir le JSON renvoyé, et pouvoir interroger ce qui est derrière une authentification (se connecter ou prendre le jeton). Arbitrage retenu : lectures et connexion, aucune écriture depuis la page.
Ce qui change
GETde la carte, un champ par paramètre du chemin, appelée avec la session de la page. Toute autre méthode est refusée par le code qui construit la requête, et pas seulement par le sélecteur ; chaque paramètre est encodé. Un bouton « Ouvrir dans la console » sur chaque routeGETde la carte.POST /admin/api/auth/login, envoyée aveccredentials: 'omit': la réponse et soncsrf_tokens'affichent (bouton de copie), sans remplacer le cookie de session de qui regarde la page. La page explique pourquoi le cookie de session est illisible (HttpOnly) et donne la séquencecurlavec un fichier de cookies. Le mot de passe n'est ni conservé ni réaffiché, et la séquencecurlporte des marqueurs à la place des identifiants.src/app/Core/routes.php).Sécurité
textContent. Trois tests injectent<img src=x onerror=...>dans une réponse simulée (sonde, console, connexion) et vérifient qu'aucun élément n'est créé.innerHTML(options du sélecteur) échappe l'étiquette, qui vient des données du serveur, et utilise un index numérique comme valeur.Un défaut trouvé par le test navigateur, corrigé ici
Les panneaux de réponse portaient
hidden, mais leur règledisplay: grid/flexl'emportait : ils s'affichaient vides avant tout appel. Les tests JavaScript, sur un faux DOM sans feuille de style, ne pouvaient pas le voir. Règle ciblée ajoutée, et le test navigateur vérifie désormais qu'ils sont fermés au chargement.Preuves
tests/e2e/admin-health-console.spec.jssur pile jetable : 5 sur 5. Il vérifie en particulier qu'après la connexion de démonstration avec le compte responsable,/admin/api/auth/merépond encorerole_code: admin.tests/e2e/run-a11y.sh), rejoué après la correction : 19 écrans, 946 mesures de contraste, 85 combinaisons, 0 violation. Notes 04 et 06 etpreuves/README.mdmises à jour.docs/journal/2026-09-27--console-page-sante.md.