Les milestones sont le dernier objet Gitea que Kanbante ne fait que lire : boards par jalon, bandeau de progression, récit de sprint et prévisions en dépendent, mais créer un jalon ou poser son échéance oblige à ouvrir Gitea. Pour un outil de pilotage quotidien, c'est le détour de trop.
Proposition
Gestion minimale et sûre des jalons, depuis la page Projet (ou le board) :
créer un jalon (titre, description optionnelle, échéance optionnelle) ;
modifier titre/échéance d'un jalon ouvert ;
fermer un jalon ;
écritures dans Gitea via son API (POST/PATCH /repos/{o}/{r}/milestones) — Gitea reste la source de vérité, Kanbante ne stocke rien.
Pistes d'implémentation
gitea_client : create_milestone, update_milestone (le client sait déjà les lire, get_milestones).
Endpoints POST Kanbante avec CSRF, validation des dates, erreurs Gitea remontées proprement (page d'erreur existante).
Hors périmètre v1 : supprimer un jalon (destructif, Gitea suffit) et réassigner les issues entre jalons (le board par jalon couvre le besoin autrement).
Critères d'acceptation
Un jalon créé dans Kanbante est visible dans Gitea avec la bonne échéance.
Le board filtré et le bandeau de progression reflètent le nouveau jalon sans redémarrage.
Échéance invalide : refus propre, rien d'écrit.
Tests verts (faux Gitea étendu : milestones en écriture).
Issue de la feuille de route « Gestion de projets » (idées Spark du 2026-10-11, toutes retenues par Bruno) — à réaliser quand la carte sera dans « 📋 À faire ».
## Contexte
Les milestones sont le dernier objet Gitea que Kanbante ne fait que lire : boards par jalon, bandeau de progression, récit de sprint et prévisions en dépendent, mais créer un jalon ou poser son échéance oblige à ouvrir Gitea. Pour un outil de pilotage quotidien, c'est le détour de trop.
## Proposition
Gestion minimale et sûre des jalons, depuis la page Projet (ou le board) :
- **créer** un jalon (titre, description optionnelle, échéance optionnelle) ;
- **modifier** titre/échéance d'un jalon ouvert ;
- **fermer** un jalon ;
- écritures dans Gitea via son API (`POST/PATCH /repos/{o}/{r}/milestones`) — Gitea reste la source de vérité, Kanbante ne stocke rien.
## Pistes d'implémentation
- `gitea_client` : `create_milestone`, `update_milestone` (le client sait déjà les lire, `get_milestones`).
- Endpoints POST Kanbante avec CSRF, validation des dates, erreurs Gitea remontées proprement (page d'erreur existante).
- Hors périmètre v1 : supprimer un jalon (destructif, Gitea suffit) et réassigner les issues entre jalons (le board par jalon couvre le besoin autrement).
## Critères d'acceptation
- [ ] Un jalon créé dans Kanbante est visible dans Gitea avec la bonne échéance.
- [ ] Le board filtré et le bandeau de progression reflètent le nouveau jalon sans redémarrage.
- [ ] Échéance invalide : refus propre, rien d'écrit.
- [ ] Tests verts (faux Gitea étendu : milestones en écriture).
---
*Issue de la feuille de route « Gestion de projets » (idées Spark du 2026-10-11, toutes retenues par Bruno) — à réaliser quand la carte sera dans « 📋 À faire ».*
bruno
added this to the Gestion de projets — feuille de route milestone 2026-10-11 22:36:53 -04:00
bruno
added the roadmap label 2026-10-11 22:36:53 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Contexte
Les milestones sont le dernier objet Gitea que Kanbante ne fait que lire : boards par jalon, bandeau de progression, récit de sprint et prévisions en dépendent, mais créer un jalon ou poser son échéance oblige à ouvrir Gitea. Pour un outil de pilotage quotidien, c'est le détour de trop.
Proposition
Gestion minimale et sûre des jalons, depuis la page Projet (ou le board) :
POST/PATCH /repos/{o}/{r}/milestones) — Gitea reste la source de vérité, Kanbante ne stocke rien.Pistes d'implémentation
gitea_client:create_milestone,update_milestone(le client sait déjà les lire,get_milestones).Critères d'acceptation
Issue de la feuille de route « Gestion de projets » (idées Spark du 2026-10-11, toutes retenues par Bruno) — à réaliser quand la carte sera dans « 📋 À faire ».