Files
2026-05-30 08:32:08 +02:00

2.2 KiB

Règles — Évolutions API

Détection

Si une demande ne peut pas être implémentée avec les endpoints API existants (endpoint manquant, champ absent, comportement insuffisant), ne pas contourner le problème côté frontend.

Action requise

Créer un nouveau fichier dans le dossier api-issues/ à la racine du projet pour chaque besoin d'évolution API distinct. Ne jamais modifier un fichier existant : toujours créer un fichier supplémentaire.

Le nom du fichier est composé du numéro de ticket (extrait de la branche courante) suivi d'un slug explicite décrivant le changement demandé :

api-issues/<numéro>-<description-du-changement>.md

Exemple : ticket 30, besoin d'ajouter les dates de milestone → fichier api-issues/30-milestone-dates.md Exemple : ticket 30, besoin d'un endpoint de statistiques → fichier api-issues/30-statistiques-epic.md

Si plusieurs besoins distincts émergent pour le même ticket, créer autant de fichiers séparés.

Contenu du fichier

Le fichier est un prompt destiné à un agent ou développeur backend. Il doit être rédigé comme une instruction directe et suffisamment complète pour être exécutée sans contexte supplémentaire. Il doit décrire :

  1. Contexte — quelle fonctionnalité frontend nécessite cette évolution
  2. Problème — ce qui manque ou bloque dans l'API actuelle
  3. Besoin — le ou les endpoints à créer / modifier, avec le corps de requête et la réponse attendus
  4. Priorité — bloquant / important / nice-to-have

Exemple de fichier

# Filtrage des issues par milestone

## Contexte
La page Issues doit permettre de filtrer les issues déjà assignées à un milestone.

## Problème
L'endpoint `GET /issues` ne retourne pas le champ `milestoneId` dans la réponse.

## Besoin
Ajouter `milestoneId: number | null` dans le corps de réponse de `GET /issues` et `GET /issues/:id`.

## Priorité
Important

Comportement attendu

  • Implémenter tout ce qui est possible avec l'API actuelle.
  • Informer clairement que le fichier a été créé et son emplacement.
  • Ne pas bloquer le reste de l'implémentation : simuler la donnée manquante si cela permet d'avancer.