Skip to content

Gérer les tracks favoris #56

Description

@Noemie-Koelblen

Description 📝

En tant qu'utilisateur, je souhaite pouvoir ajouter ou retirer un track de mes favoris directement depuis Carmen, avec répercussion réelle sur mon compte Deezer — aujourd'hui isFavorite n'est qu'un miroir en lecture seule de l'état Deezer (mis à jour par syncFavoriteTracks/syncUserLibrary), aucune mutation ne permet d'agir dessus.

Dépendances ⚠️

Fait partie de 0N0K0/carmen#18

Critères d'acceptation ✅

  • Ajouter un track à mes favoris le marque favori sur Deezer ET localement (isFavorite: true), sans attendre une resynchro complète
  • Retirer un track de mes favoris le démarque sur Deezer ET localement
  • L'action est idempotente (ajouter un favori déjà favori ne plante pas)

Technique ⚙️

  • Identifier la mutation Pipe API Deezer pour (dé)favoriser un track (aucune mutation d'écriture n'existe actuellement dans src/services/deezer.ts, uniquement des queries)
  • Ajouter addFavoriteTrack/removeFavoriteTrack dans src/services/deezer.ts
  • Ajouter les mutations GraphQL correspondantes, mettant à jour Track.isFavorite en DB en même temps que l'appel Deezer
  • Gérer l'échec de l'appel Deezer sans désynchroniser l'état local (pas de mise à jour optimiste non confirmée)
  • Tests unitaires (service + resolvers)

Workflow 🔄

  • L'utilisateur clique sur l'icône favori d'un track
  • Le track est marqué favori sur Deezer, puis en local — l'icône se met à jour immédiatement
  • L'utilisateur reçoit une alerte si l'action échoue côté Deezer

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    • Status
      A faire

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions