capitalisation: triage 95_a_capitaliser + création domaine infra

Triage des 27 propositions du buffer de capitalisation (skill
capitalisation-triage), avec vérification des doublons contre la base.

Intégré dans knowledge/ (23 entrées):
- backend: redis (compensation incrBy non-atomique), nestjs (injection
  cassée sous tsx watch; guard write mode dégradé), async (test rollback
  pipeline multi-fichiers), contracts (idempotence POST), auth (disclosure
  comptes soft-deleted), prisma (index partial soft-delete), llm-providers
  (nouveau: OAuth vs API key, prompt caching).
- frontend: tests (garde-fous parking Later), navigation (fichiers
  non-route sous src/app Expo Router), general (type client vs payload
  backend), state (fallback catch-all mapping DB→UI).
- workflow: story-tracking (statut BMAD vs narratif obsolète).
- product: general (nouveau: doc feature store sans UI).
- infra: NOUVEAU DOMAINE (traefik, tailscale, docker, docker-networking,
  reverse-proxy-paths, sidecar tailscale) + 00_INDEX.md.

Autres:
- 90_debug_et_postmortem.md: post-mortem réseau Docker partagé hors compose.
- Rejeté 3 doublons (types enum contracts, getter PrismaService, $transaction).
- Buffer 95_a_capitaliser.md purgé et restauré à son état initial.
- _projects.conf: MAJ statuts epics + ajout app-rl799.
This commit is contained in:
MaksTinyWorkshop
2026-06-25 10:31:22 +02:00
parent 1c876309f1
commit ef24d85d57
31 changed files with 1042 additions and 27 deletions
+39
View File
@@ -0,0 +1,39 @@
---
title: Product — Risques & vigilance : Général
domain: product
bucket: risques
tags: [documentation, feature-scope, ui, store, guide-utilisateur]
applies_to: [product, review, documentation]
severity: medium
validated_on: 2026-06-25
source_projects: [app-alexandrie]
---
# Product — Risques & vigilance : Général
> Extrait de la base de connaissance Lead_tech. Voir `knowledge/product/risques/README.md` pour l'index complet.
---
<a id="risque-doc-feature-partiellement-implementee"></a>
## Documentation d'une feature partiellement implémentée (store sans UI)
### Risques
- Le guide utilisateur décrit une fonctionnalité câblée côté store/service mais jamais exposée dans l'UI écran
- L'utilisateur cherche une étape (ex. joindre une capture d'écran) qui n'existe pas réellement dans l'application
- Faux sentiment de complétion : la story semble livrée parce que le store/service existe, alors que le parcours utilisateur est inutilisable
### Symptômes
- Le store ou le service existe (ex. `uploadSupportAttachment`) mais l'écran ne contient aucun composant UI correspondant : pas d'`ImagePicker`, pas de bouton d'attachement
- Le guide mentionne une étape sans contrepartie visible à l'écran
- La story spec annonce la feature comme livrée alors que seul le câblage technique est présent
### Bonnes pratiques / mitigations
- **Règle** : avant de documenter une feature dans le guide utilisateur, vérifier que l'UI l'expose effectivement à l'utilisateur final — ne pas se fier aux seuls stores/services
- Croiser systématiquement la story spec (feature annoncée) avec l'implémentation écran réelle
- Si la fonctionnalité est dans le store mais pas dans l'écran : soit la documenter comme "disponible prochainement", soit ne pas la mentionner du tout
- Contexte technique : guide utilisateur / scope feature — app-alexandrie 13-04-2026