Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
57
.ideai/tickets/179/carnet.md
Normal file
57
.ideai/tickets/179/carnet.md
Normal file
@ -0,0 +1,57 @@
|
||||
---
|
||||
issueRef: "#179"
|
||||
version: 7
|
||||
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
|
||||
updatedAt: 1785408937070
|
||||
---
|
||||
## Clarifications utilisateur — 30 juillet 2026
|
||||
|
||||
### Portée fonctionnelle V1
|
||||
- Les graphes de statistiques sont **téléphone uniquement**.
|
||||
- Ils sont consultables **après la séance** et **dans l'historique**.
|
||||
- La navigation entre `étape`, `série`, `exercice`, `séance` se fera a priori via **un sélecteur de scope** ; UX devra confirmer la meilleure forme pour que cela tienne correctement sur un téléphone.
|
||||
|
||||
### Statistiques V1
|
||||
- V1 limitée à :
|
||||
- `FC`
|
||||
- `distance`
|
||||
- `calories`
|
||||
- Le système doit rester **hexagonal** et conçu pour permettre l'ajout simple d'autres métriques plus tard, sans recadrage structurel.
|
||||
|
||||
### Règles d'affichage des graphes
|
||||
- `FC` : affichage normal + lignes horizontales `min` / `max` quand pertinent.
|
||||
- `distance` et `calories` : même logique générale de graphe, **sans** lignes horizontales `min` / `max`, car métriques cumulatives.
|
||||
- Pour les métriques cumulatives (`distance`, `calories`), la valeur affichée est **relative au scope affiché** :
|
||||
- `étape` : départ visuel à `0` au début de l'étape
|
||||
- `série` : départ visuel à `0` au début de la série
|
||||
- `exercice` : départ visuel à `0` au début de l'exercice
|
||||
- `séance` : départ visuel à `0` au début de la séance
|
||||
- Cette remise à zéro est **uniquement une règle d'affichage** ; on ne duplique pas les données en stockage.
|
||||
|
||||
### Règles de stockage des données pour les graphes
|
||||
- On stocke une donnée **toutes les 15 secondes** pour alimenter les graphes.
|
||||
- Cela concerne **uniquement** les données historisées pour affichage/statistiques, pas le flux live complet.
|
||||
- Source unique : **uniquement les données envoyées par la montre**.
|
||||
- Aucune interpolation.
|
||||
- Pour une fenêtre de 15 secondes, on conserve **la dernière donnée montre non encore consommée** au moment de l'échantillonnage.
|
||||
- Les métriques calculées (ex. calories) ne sont calculées/enregistrées que si la montre a effectivement fourni les valeurs nécessaires.
|
||||
- Ordre de grandeur attendu : sur 2 heures, environ **480 valeurs maximum par statistique**.
|
||||
|
||||
### Trous de données
|
||||
- Si aucune donnée n'est reçue pendant plus de **2 minutes**, le graphe relie la dernière valeur connue à la suivante via un **segment en pointillé**.
|
||||
- Ce segment pointillé est **purement visuel**.
|
||||
- On ne stocke **aucune fausse valeur intermédiaire**.
|
||||
|
||||
### Marqueurs par scope
|
||||
- Vue `étape` : pas de marqueurs supplémentaires demandés.
|
||||
- Vue `série` : marqueurs de **début/fin d'étape**.
|
||||
- Vue `exercice` : marqueurs de **début/fin de série**.
|
||||
- Vue `séance` : marqueurs de **début/fin d'exercice**.
|
||||
|
||||
### Contraintes transverses — 30 juillet 2026
|
||||
- Les modifications doivent être prises en compte sur **toutes les couches de l'application**, **serveur inclus**, pour que la **sauvegarde** et la **synchronisation** fonctionnent correctement.
|
||||
- Il ne faut donc pas livrer une solution limitée au stockage local/UI si les données du ticket doivent voyager ou survivre correctement via les mécanismes de sync/historique.
|
||||
|
||||
### Hors périmètre V1
|
||||
- Aucun buffer/rejeu local côté montre pour compenser une déconnexion téléphone-montre.
|
||||
- Ce sujet pourra être réévalué plus tard, mais il est **hors périmètre V1**.
|
||||
Reference in New Issue
Block a user