Aller au contenu

PD-236 — Rétrospective

1. Contexte

Champ Valeur
Story ID PD-236
Titre Recherche tokens déterministes
Domaine backend-core
Projet backend
Date complétion 2026-01-XX
Verdict ACCEPTÉ

2. Métriques

Métrique Valeur
Suites de tests 10
Tests PASS 135
Couverture Statements 88.6%
Couverture Branches 84.13%
Couverture Lines 90.11%
Codes d'erreur 5 (ERR-BE-01 à ERR-BE-05)

3. Learnings clés

  • Annotations tests ≠ couverture : Une annotation TC-NOM-03 sur un test de doublons ne couvre pas le scénario d'inspection probatoire. La correspondance doit être vérifiée sémantiquement.

  • Tests INV sécurité = intégration : Les tests unitaires avec mocks ne permettent pas de vérifier l'absence de données sensibles dans les données réellement persistées.

  • Scénarios multi-requêtes distincts : Un test vérifiant qu'une requête est rejetée ne couvre pas le scénario Q1 (succès) puis Q2 (rejet) sur le même index.

  • Hors-périmètre explicite : Documenter ce qui n'est pas testable (INV-05 neutralité sémantique) évite les débats lors de la revue.

4. Patterns applicables

Nouveau pattern : Tests d'inspection probatoire

Pour vérifier INV-01 (aucun keyword en clair persisté) : 1. Créer un fichier .integration.spec.ts dédié 2. Persister réellement les données 3. Requêter la base pour vérifier l'absence de champs en clair

Pattern existant : Codes d'erreur contractuels

Cohérent avec PD-237 : enum d'erreurs avec mapping HTTP explicite.

5. Signal CLAUDE.md

Priorité moyenne : Documenter la convention d'annotation des tests contractuels.

### Annotation tests contractuels (2026-02-XX)

Chaque test contractuel (TC-*) DOIT :
1. Avoir une annotation explicite dans le nom du test ou commentaire
2. Correspondre SÉMANTIQUEMENT au scénario décrit dans PD-XX-tests.md
3. Être vérifié manuellement avant revue d'acceptabilité

Une annotation sur un test non correspondant est pire que pas d'annotation.

6. Conclusion

PD-236 a livré la consommation backend des tokens de recherche déterministes après résolution de 3 écarts. Les learnings sur les annotations de tests et les tests d'inspection probatoire sont applicables à toutes les stories avec invariants de sécurité. Le pattern Jest .integration.spec.ts nécessite une configuration explicite pour être reconnu.


Rétrospective générée 2026-02-19 (Étape 10 batch backend-core)