---
id: "32c34fe8-d915-4bf3-8266-f0505760f6b4"
number: 101
title: "#91-E [DevFrontend] App Wear OS Flutter dédiée + navigation UX montre"
status: "closed"
priority: "medium"
sprint: null
links: [{"target":"#95","kind":"dependsOn"}]
agentRefs: [{"agentId":"9933c93a-b8a1-4164-a3bb-7063fdad747d","role":"assigned"}]
createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
createdAt: 1784991960336
updatedAt: 1784992086885
version: 2
---
Partie #91, dépend de #91-A.

Scaffold `watch_app/` (target/app Flutter Wear OS dédiée dans le mono-dépôt). Implémenter les surfaces UX décrites dans `gametime-ux-watch-companion` :
- `Aucune séance active` (+ variante téléphone indisponible).
- `Séance active` : hiérarchie SÉRIE X/Y -> exercice -> passage/étape -> chrono dominant -> chronos secondaires compacts -> CTA primaire unique.
- `Actions` (scrollable) : Passer l'étape / Passer le passage / Terminer la série / Passer la série / Passer le repos selon contexte.
- `Repos` : chrono de repos dominant, prochain exercice visible, Pause/Reprendre en primaire.

Gestes : tap CTA, swipe horizontal (Séance <-> Actions), scroll vertical / couronne. Confirmation seulement pour Passer la série et Passer le passage.

L'app montre consomme **uniquement** les DTO du package A et reste stateless vis-à-vis du domaine. Stub l'état en local pour permettre le dev UI avant branchement du client (F).

Définition de done : surfaces navigables conformes à la spec UX sur écran rond, `flutter analyze` propre, build Wear OS OK.
