Sync automatique en arrière-plan
Resolved 💬 2 comments Opened Nov 27, 2025 by Ziltosh Closed Nov 29, 2025
Contexte
La synchronisation entre appareils fonctionne mais nécessite d'aller dans les préférences et de cliquer sur "Synchroniser" manuellement. C'est trop contraignant pour une utilisation quotidienne.
Objectif
Implémenter une synchronisation automatique transparente pour l'utilisateur.
Spécifications
Sync automatique
- Intervalle minimum : toutes les 1 minute
- Déclencheurs additionnels :
- Au démarrage de l'app (si passphrase stockée)
- Après création/modification/suppression d'une tâche
- Quand l'app revient au premier plan (focus)
Stockage de la passphrase
- Stocker la passphrase en mémoire après la première saisie réussie
- Option pour "Se souvenir de la passphrase" (stockage sécurisé via Keychain/Keystore)
- La passphrase reste en mémoire pendant la session
UI/UX
- Indicateur de sync discret dans le header ou la barre de navigation
- Icône qui s'anime pendant la sync
- Point de notification si changements en attente
- Tap pour forcer une sync immédiate
- Pas de popup pour demander la passphrase à chaque sync
- Notification silencieuse en cas d'erreur de sync (pas de blocage)
Gestion d'erreurs
- Retry automatique avec backoff exponentiel en cas d'échec
- Après 3 échecs consécutifs, passer en mode "pending" et attendre la prochaine sync manuelle
- Logger les erreurs sans perturber l'utilisateur
Tâches techniques
- [ ] Modifier
useSyncManager.tspour démarrer l'auto-sync dès que la passphrase est disponible - [ ] Réduire l'intervalle de 5 minutes à 1 minute
- [ ] Ajouter un listener sur les événements de modification de tâches
- [ ] Ajouter un listener sur le focus de l'app
- [ ] Créer un composant
SyncIndicator.vuepour le header - [ ] Implémenter le stockage sécurisé de la passphrase (optionnel)
- [ ] Ajouter gestion d'erreurs silencieuse avec retry
Critères d'acceptation
- [ ] La sync se fait automatiquement sans intervention utilisateur
- [ ] L'utilisateur ne voit pas de popup après la configuration initiale
- [ ] Un indicateur visuel montre l'état de la sync
- [ ] Les erreurs ne bloquent pas l'utilisation de l'app
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗