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

48 lines
2.2 KiB
Markdown

# 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
```markdown
# 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.