feat(watch): séance guidée au poignet
Pendant natif du lecteur web. Bouton Démarrer par bloc : un exercice à la fois, décompte en anneau, passage auto, haptique à chaque transition, pause et navigation. Pendant une routine au sol, la montre est bien plus pratique que d'aller chercher le téléphone — c'est tout l'intérêt de la version watchOS. Chaque exercice écoulé est coché via RoutineStore.toggle, donc renvoyé à l'iPhone puis au serveur : à la fin le bloc est à jour sur les trois surfaces. La durée par exercice est désormais transmise dans le snapshot (duration_sec, optionnel pour rester compatible avec les snapshots déjà persistés) : la vue guidée utilise la vraie durée au lieu de répartir celle du bloc. RoutineGuidedView.swift est déjà référencé dans le pbxproj (target CoachWatch), aucun Add Files à faire. Backup : project.pbxproj.bak-guided NON COMPILÉ — à inclure au prochain build Xcode. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -119,6 +119,22 @@ blocs. Si ça persiste après avoir ouvert `/routine` sur l'iPhone :
|
||||
code HTTP en cas d'échec — un 401 signifie un `CoachAuth.kCoachWebToken`
|
||||
périmé).
|
||||
|
||||
## Séance guidée au poignet (2026-08-03)
|
||||
|
||||
`CoachWatch/RoutineGuidedView.swift` — bouton **Démarrer** sur chaque bloc :
|
||||
un exercice à la fois, décompte en anneau, passage automatique, haptique à
|
||||
chaque transition, pause / précédent / suivant.
|
||||
|
||||
Chaque exercice écoulé est coché via `RoutineStore.toggle`, donc renvoyé à
|
||||
l'iPhone puis au serveur : à la fin, le bloc est déjà à jour sur les trois
|
||||
surfaces sans un geste de plus.
|
||||
|
||||
Le fichier est **déjà référencé dans le pbxproj** (target CoachWatch), aucun
|
||||
« Add Files » à faire. Backup : `project.pbxproj.bak-guided`.
|
||||
|
||||
À tester au build : démarrer le bloc 1 sur la montre, laisser tourner deux
|
||||
exercices, vérifier que la page `/routine` de l'iPhone se coche toute seule.
|
||||
|
||||
## Reste à faire (hors périmètre de ce chantier)
|
||||
|
||||
- Complication watchOS « Routine » : la target `CoachWatchWidgets` n'existe
|
||||
|
||||
Reference in New Issue
Block a user