Apparence
F5 — Déclaration & gestion des anomalies
| Attribut | Contenu |
|---|---|
| Objectif | Tracer un défaut constaté sur une étape en échec |
| Description | Une anomalie est liée à une étape (une seule par étape) et toujours rattachée à une campagne. Champs : description, gravité (Bloquant / Majeur / Gênant), statut, assigné à, responsable, lien Jira, déclarant, date, preuve |
| Utilisateurs | Déclaration : admin/consultant/testeur (sur campagne active) ; triage : idem |
| Règles métier | RG-04, RG-05, RG-07, RG-32 |
| Limitations | Statut par défaut « Nouveau », mais l'export Excel colore « Ouverte / Fermée / En cours » → jeu de statuts à unifier (voir Dette technique, Q12) |
| Critères d'acceptation | Quand je déclare une anomalie bloquante sur une étape alors l'étape est KO et l'anomalie apparaît dans /anomalies filtré sur la campagne |
🛠️ Détails techniques (v2)
| Attribut | Contenu |
|---|---|
| Scénario — déclarer | Depuis le détail → dialog ModalAnomalie (@recette/ui) → upload éventuel de la preuve d'abord (bloquant), puis mutation anomalies.upsert ; l'étape passe KO |
| Scénario — trier | Depuis /anomalies : édition inline (statut, assigné, responsable, lien Jira, description, gravité) via anomalies.updateField |
| Scénario — proposer un test de correction | Bouton « Proposer » → mutation proposeCorrectionTest recopie tout le flux d'origine (étapes incluses) dans la campagne cible comme flux « À rédiger » |
| Validations | Schéma Zod : gravité ∈ {Bloquant, Majeur, Gênant} ; etapeId, campaignId, testId requis ; réservé à la campagne active |
| Données | anomalies, etapes, evidence_files, tests (unicité anomalies.by_etape) |