chore(wip): consolidation intermédiaire multi-tickets (sprints Statistiques, UI, Bug resolution, Serveur-client)
Regroupe l'état de travail en cours réalisé dans un même worktree sur plusieurs tickets/sprints (#85, #136, #145, #155-160, #162-164), mélangeant des tickets QA et inProgress. Ne constitue pas une feature terminée : commit de sauvegarde avant triage/split par ticket en branches feature/* dédiées. Exclut les dossiers d'environnement de build locaux et le heap dump parasite (.gitignore mis à jour). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
6
.ideai/tickets/96/carnet.md
Normal file
6
.ideai/tickets/96/carnet.md
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
issueRef: "#96"
|
||||
version: 2
|
||||
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
|
||||
updatedAt: 1784992086885
|
||||
---
|
||||
22
.ideai/tickets/96/issue.md
Normal file
22
.ideai/tickets/96/issue.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
id: "90445962-af59-435b-b083-a33e3124806c"
|
||||
number: 96
|
||||
title: "#91-C [DevBackend] Routing des commandes montre vers les use cases d'exécution existants"
|
||||
status: "closed"
|
||||
priority: "medium"
|
||||
sprint: null
|
||||
links: [{"target":"#95","kind":"dependsOn"}]
|
||||
agentRefs: [{"agentId":"10ee045b-1c41-479e-ba03-dceed9edd495","role":"assigned"}]
|
||||
createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
|
||||
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
|
||||
createdAt: 1784991949120
|
||||
updatedAt: 1784992086885
|
||||
version: 2
|
||||
---
|
||||
Partie #91, dépend de #91-A et #91-B.
|
||||
|
||||
Recevoir les `WatchCommandEnvelope`, valider `expectedRevision == currentRevision` (garantie d'ordre + idempotence : un retry ou doublon ne doit jamais avancer deux fois une étape/passage/série). Traitement **séquentiel** côté téléphone. Router vers les **mêmes use cases d'exécution existants** que le téléphone (pas de duplication de logique). Renvoyer le `WatchCommandAck`.
|
||||
|
||||
Préserver côté use cases la règle : si première étape chrono + exercice sous chrono, le démarrage est commun (la commande `startCurrentExercise` lance les deux — pas de logique montre).
|
||||
|
||||
Définition de done : routing fonctionnel vers use cases existants, acks corrects, tests unitaires : commande nominal, révision stale → rejected, retry/doublon → acceptedNoOp (pas de double avance), commandes non applicables selon phase.
|
||||
Reference in New Issue
Block a user