-
Notifications
You must be signed in to change notification settings - Fork 0
[LOCKLITE-135] Create bugs plan #92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
19 commits
Select commit
Hold shift + click to select a range
4826ea2
feat: create BOGUES.md
vbetsch 493b630
feat: update BOGUES.md
vbetsch c0a034f
feat: add examples
vbetsch 8376eee
fix: rncp skills
vbetsch c2a28db
refactor: remove project
vbetsch afd008a
fix: references chapter
vbetsch 37099bd
fix: notion name
vbetsch c87b48b
fix: non scoping requests
vbetsch 9f0446c
fix: recipes book name
vbetsch a20da99
fix: remove ;
vbetsch 6b581cf
fix: scoping
vbetsch 2aaca56
fix: remove ;
vbetsch f1d5af7
fix: adapt RECETTES.md
vbetsch 0c86b91
fix: headline RECETTES
vbetsch 7901bde
feat: add doc in README
vbetsch 77fdbb6
feat: add rncp skill ref in doc
vbetsch aad5df2
style: format RECETTES.md
vbetsch 46a1685
fix: feedbacks
vbetsch 0210910
style: TODO
vbetsch File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,138 @@ | ||
| # Plan de correction des bogues | ||
|
|
||
| > Compétence RNCP : C2.3.2 | ||
|
|
||
| [//]: # (TODO: Modify when we will have accessibility reference -> ACCESSIBILITY) | ||
|
|
||
| [//]: # (TODO: Modify when we will have changelogs -> CHANGELOGS) | ||
|
|
||
| ### Références | ||
|
|
||
| - Cahier de recettes : [RECETTES.md](RECETTES.md) | ||
| - Configuration Jest : [jest.config.ts](../jest.config.ts) | ||
|
|
||
| ## 1. Objectif | ||
|
|
||
| Ce document décrit le processus mis en place pour détecter, qualifier, corriger et valider les anomalies et régressions | ||
| identifiées lors de la phase de recette, afin de garantir le fonctionnement du logiciel conformément à l’attendu. | ||
|
|
||
| ## 2. Méthodologie de détection et consignation | ||
|
|
||
| ### 2.1 Outils utilisés | ||
|
|
||
| - **Tests automatisés** : Jest pour les tests unitaires | ||
| - **Surveillance en développement** : logs applicatifs (loggers), console et monitoring. | ||
| - **Intégration continue** : GitHub Actions pour exécuter automatiquement les suites de tests. | ||
| - **Traçabilité** : Outil de suivi Notion qui référence les bogues découverts | ||
|
|
||
| ### 2.2 Sources de détection | ||
|
|
||
| - Échecs des scénarios du cahier de recettes. | ||
| - Alertes CI/CD lors des push ou pull requests. | ||
|
|
||
| ### 2.3 Fiche d’anomalie | ||
|
|
||
| Chaque anomalie est consignée dans l’outil de suivi interne sous le format : | ||
|
|
||
| - **ID unique** | ||
| - **Date** | ||
| - **Environnement** | ||
| - **Description** | ||
| - **Étapes de reproduction** | ||
| - **Résultat attendu** | ||
| - **Résultat obtenu** | ||
| - **Pièces jointes** (logs, captures d’écran) | ||
|
|
||
| ## 3. Qualification des anomalies | ||
|
|
||
| ### 3.1 Priorisation | ||
|
|
||
| - **Bloquant** : empêche l’utilisation de la fonctionnalité principale. | ||
| - **Majeur** : impact significatif mais contournement possible. | ||
| - **Mineur** : gêne légère ou esthétique. | ||
|
|
||
| ### 3.2 Catégorisation | ||
|
|
||
| - **Fonctionnelle** : non-respect d’une spécification. | ||
| - **Technique** : problème de performance, compatibilité ou sécurité. | ||
| - **Régression** : fonctionnalité précédemment validée qui échoue. | ||
|
|
||
| [//]: # (TODO: ACCESSIBILITY) | ||
|
|
||
| [//]: # (- **Accessibilité** : non-conformité avec le référentiel retenu ...) | ||
|
|
||
| ## 4. Analyse des points d’amélioration | ||
|
|
||
| Pour chaque test en échec : | ||
|
|
||
| 1. **Identifier la cause racine** via l’analyse des logs, reproduction contrôlée et revue de code. | ||
| 2. **Évaluer l’impact** sur les autres modules et fonctionnalités. | ||
| 3. **Proposer la solution technique** la plus adaptée. | ||
|
|
||
| ## 5. Processus de traitement et validation | ||
|
|
||
| ### 5.1 Workflow | ||
|
|
||
| 1. Création d’une branche Git dédiée au correctif. | ||
| 2. Implémentation du correctif en respectant les bonnes pratiques et normes de sécurité. | ||
| 3. Ajout ou mise à jour des tests unitaires. | ||
| 4. Exécution des tests en local. | ||
| 5. Création d’une Pull Request avec revue par IA. | ||
| 6. Validation automatique par la CI (GitHub Actions). | ||
| 7. Fusion et déploiement. | ||
| 8. Reproduction du scénario en production. | ||
|
|
||
| ### 5.2 Critères de validation | ||
|
|
||
| - Tous les tests du cahier de recettes sont passés. | ||
| - Aucune régression détectée. | ||
| - Code conforme aux règles ESLint et Prettier. | ||
|
|
||
| ## 6. Suivi et traçabilité | ||
|
|
||
| - Les bogues sont référencés dès leur détection dans l'outil de suivi interne. | ||
| - Ils sont étiquettés par les identifiants des | ||
| scénarios de recettes concernés. | ||
| - **Indicateurs de suivi** : | ||
| - % d’anomalies corrigées dans les délais. | ||
| - Nombre de régressions post-correction. | ||
| - Évolution des anomalies critiques. | ||
|
|
||
| [//]: # (TODO: CHANGELOGS) | ||
|
|
||
| [//]: # (- **Journal de versions** mis à jour pour chaque correctif.) | ||
|
|
||
| ## 7. Exemples représentatifs | ||
|
|
||
| > Les anomalies ci-dessous illustrent l’application de ce plan. Les autres sont consignées dans l’outil de suivi interne. | ||
|
|
||
| ### Bug #001 – Zone cliquable du bouton Logout trop restreinte | ||
| - Priorité : Mineur | ||
| - Catégorie : UX/Accessibilité | ||
| - Description : Le `onClick` était attaché au label au lieu de l’élément de liste, cliquer à côté du texte ne déclenchait pas la déconnexion. | ||
| - Cause racine : Gestionnaire d’événement positionné sur le mauvais composant MUI. | ||
| - Correction : Déplacer `onClick` sur `ListItem`/`ListItemButton` | ||
| - Validation : vérification manuelle du déclenchement sur toute la zone. | ||
|
|
||
| --- | ||
|
|
||
| ### Bug #002 – Incohérences de nommage dans la documentation API | ||
| - Priorité : Majeur | ||
| - Catégorie : Technique/Documentation | ||
| - Description : Les noms exposés dans la documentation (OpenAPI/Swagger) ne correspondaient pas toujours aux objets réellement retournés. | ||
| - Cause racine : Divergence entre DTO/schema et la génération de doc. | ||
| - Correction : Aligner les schémas OpenAPI avec les DTO réels, régénérer la doc | ||
| - Validation : Documentation régénérée et relue | ||
|
|
||
| --- | ||
|
|
||
| ### Bug #003 – Visibilité des coffres-forts entre utilisateurs | ||
| - Priorité : Bloquant (Sécurité) | ||
| - Catégorie : Sécurité/Fonctionnelle | ||
| - Description : Les utilisateurs voyaient les coffres-forts de tout le monde, de plus un coffre-fort créé n’était pas relié à l’utilisateur courant. | ||
| - Cause racine : Les requêtes ne sont pas filtrées par `userId` et absence de liaison propriétaire à la création. | ||
| - Correction : | ||
| - Lecture : filtrer systématiquement par `userId` côté serveur et non côté client. | ||
| - Création : relier le coffre-fort au propriétaire au moment de l’insert. | ||
| - Ajouter des tests unitaires : un utilisateur A ne doit jamais voir/éditer les coffres-forts de B, création doit lier le `ownerId`. | ||
| - Validation : Tests unitaires OK (list/read/update/delete), vérification manuelle en recette avec deux comptes distincts. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.