PD-230 — Acceptabilité¶
📚 Navigation User Story
| Document | | | ---------- | -- | | 📋 [Spécification](PD-230-specification.md) | | | 🛠️ [Plan d'implémentation](PD-230-plan.md) | | | ✅ **Critères d'acceptation** | *(ce document)* | | 📝 [Retour d'expérience](PD-230-rex.md) | | [← Retour à site-vitrine](../PD-225-epic.md) · [↑ Index User Story](index.md)Objectif¶
Vérifier que l’implémentation est conforme à la spécification, respecte l’ensemble des invariants ProbatioVault et ne présente aucune incohérence ou oubli critique.
Périmètre de vérification¶
La revue d’acceptabilité vérifie explicitement :
- la conformité stricte à la spécification fonctionnelle
- le respect de tous les invariants applicables
- la couverture des scénarios de test définis
- l’absence d’incohérences, oublis ou régressions
Écarts identifiés¶
Classification des écarts¶
| Niveau | Définition |
|---|---|
| BLOQUANT | Violation d’un invariant, faille de sécurité, non-conformité majeure à la spec |
| MAJEUR | Fonction incomplète, comportement non conforme mais sans rupture de sécurité |
| MINEUR | Détail, dette acceptable, amélioration non critique |
Détail des écarts¶
| ID | Description | Référence | Gravité |
|---|---|---|---|
| E-01 | Outils de validation accessibilité absents : aucun eslint-plugin-astro/jsx-a11y, pas de pa11y.config.js ni de script CI npm run test:a11y, alors que la spec exige lint a11y + audit pa11y-ci et un « score AA validé ». | Spec §Critères d’acceptation (lint + pa11y-ci) ; Plan §Structure accessibilité (eslint a11y, pa11y-ci) ; repository (fichiers/CI manquants) | MAJEUR |
| E-02 | Navigation clavier incomplète : pas de skip link (SkipLink.astro absent), main sans id="main-content" ni rôle, nav sans aria-label et bouton mobile sans état ARIA (aria-expanded). Le flux clavier décrit dans le plan (SkipLink → header → main → footer) n’est pas implémenté. | Spec §Invariants 2 (navigation clavier) ; Plan §Structure sémantique / SkipLink ; src/layouts/BaseLayout.astro:77-82 ; src/components/Header.astro:37-80 | MAJEUR |
| E-03 | Styles accessibilité prévus non livrés : aucun accessibility.css (pas de réduction de mouvement, pas de cible tactile 48px pour les liens, pas de styles skip link). Les focus visibles existent dans design-system.css, mais le reste du socle décrit au plan est absent. | Plan §Styles accessibilité ; src/styles/design-system.css (focus visibles uniquement) ; absence de src/styles/accessibility.css | MINEUR |
Conclusion d’acceptabilité¶
⚠️ ACCEPTÉ AVEC RÉSERVES — Écarts majeurs à corriger (outillage a11y manquant, skip link/landmarks clavier non implémentés) avant de considérer la livraison conforme WCAG 2.1 AA.
Suivi des écarts (append-only)¶
[2025-12-21] — Suivi E-01¶
- Statut précédent : OUVERT
- Statut actuel : RÉSOLU
- Justification factuelle :
- Audit pa11y-ci intégré : script
test:a11yen CI, dépendance installée, configuration via.pa11yci.json(compatible ESM). - Lint a11y via
lint:html(html-validate preset a11y) sur le HTML généré, en remplacement du plugineslint-plugin-astro/jsx-a11ynon applicable aux fichiers.astro. - Référence vérification :
.gitlab-ci.yml(joba11y)package.json(scriptslint:html,test:a11y).pa11yci.json
[2025-12-21] — Suivi E-02¶
- Statut précédent : OUVERT
- Statut actuel : RÉSOLU
- Justification factuelle :
- Skip link présent (
SkipLink.astro) et injecté dansBaseLayout;mainavecid="main-content",navavecaria-label, bouton mobile avecaria-expanded/aria-controls. - Référence vérification :
src/components/SkipLink.astrosrc/layouts/BaseLayout.astrosrc/components/Header.astro
[2025-12-21] — Suivi E-03¶
- Statut précédent : OUVERT
- Statut actuel : RÉSOLU
- Justification factuelle :
- Styles accessibilité livrés (
src/styles/accessibility.css, importés dansdesign-system.css) couvrant skip link, prefers-reduced-motion, cibles tactiles 48px, taille texte minimale. - Référence vérification :
src/styles/accessibility.csssrc/styles/design-system.css
Verdict d’acceptabilité (courant)¶
- ✅ ACCEPTÉ
- Date : 2025-12-21
- Motif synthétique : E-01 à E-03 résolus (outillage a11y, navigation clavier, styles a11y).
Historique des verdicts¶
| Date | Verdict | Version | Commentaire |
|---|---|---|---|
| 2025-12-18 | ⚠️ ACCEPTÉ AVEC RÉSERVES | n/a | Verdict initial avec E-01 à E-03 ouverts |
| 2025-12-21 | ✅ ACCEPTÉ | n/a | E-01 à E-03 résolus (outillage a11y, navigation clavier, styles a11y) |