b9ee016119
Signed-off-by: Gato <cedric@goutailler-olivier.fr>
43 lines
1.8 KiB
Markdown
43 lines
1.8 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 fichier dans le dossier `api-issues/` à la racine du projet, nommé d'après le **numéro de ticket** extrait du nom de la branche courante, suivi du slug de la branche :
|
|
|
|
```
|
|
api-issues/<numéro>-<slug>.md
|
|
```
|
|
|
|
> **Exemple** : branche `feat/30-ordre-statut` → fichier `api-issues/30-ordre-statut.md`
|
|
|
|
## 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.
|