Activité récente par projet sur la carte (7 jours) #19

Open
opened 2026-10-11 22:36:44 -04:00 by bruno · 0 comments
Owner

Contexte

La seule « fraîcheur » affichée sur la carte est la date updated_at de Gitea : elle bouge pour un push ou un commentaire et ne reflète pas l'activité kanban du projet. Le journal local (board_events) sait pourtant exactement ce qui a bougé, projet par projet.

Proposition

Une ligne d'activité sur la carte, calculée sur les 7 derniers jours depuis le journal :

  • « 📈 3 fermées · 5 déplacements cette semaine » quand il y a de l'activité ;
  • « 💤 aucune activité depuis 23 j » quand le projet dort (dernier événement du journal) ;
  • rien (ou ligne neutre) pour un projet sans historique dans le journal.

Pistes d'implémentation

  • Une requête groupée sur board_events (par dépôt, par type, fenêtre 7 j + dernier événement) dans models.py — un seul passage pour tous les projets, pas de N+1.
  • Le journal ne couvre que l'activité vue par Kanbante (déplacements, fermetures, webhooks) : le libellé doit rester honnête (« activité kanban »), ne pas prétendre mesurer Git.

Critères d'acceptation

  • Carte d'un projet actif cette semaine : compteurs exacts d'après le journal.
  • Projet sans événement depuis > 7 j : mention « aucune activité depuis X j » exacte.
  • Aucune requête par projet (une seule requête agrégée).
  • Tests verts.

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 La seule « fraîcheur » affichée sur la carte est la date `updated_at` de Gitea : elle bouge pour un push ou un commentaire et ne reflète pas l'activité *kanban* du projet. Le journal local (`board_events`) sait pourtant exactement ce qui a bougé, projet par projet. ## Proposition Une ligne d'activité sur la carte, calculée sur les 7 derniers jours depuis le journal : - « 📈 3 fermées · 5 déplacements cette semaine » quand il y a de l'activité ; - « 💤 aucune activité depuis 23 j » quand le projet dort (dernier événement du journal) ; - rien (ou ligne neutre) pour un projet sans historique dans le journal. ## Pistes d'implémentation - Une requête groupée sur `board_events` (par dépôt, par type, fenêtre 7 j + dernier événement) dans `models.py` — un seul passage pour tous les projets, pas de N+1. - Le journal ne couvre que l'activité vue par Kanbante (déplacements, fermetures, webhooks) : le libellé doit rester honnête (« activité kanban »), ne pas prétendre mesurer Git. ## Critères d'acceptation - [ ] Carte d'un projet actif cette semaine : compteurs exacts d'après le journal. - [ ] Projet sans événement depuis > 7 j : mention « aucune activité depuis X j » exacte. - [ ] Aucune requête par projet (une seule requête agrégée). - [ ] Tests verts. --- *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:44 -04:00
bruno added the roadmap label 2026-10-11 22:36:44 -04:00
bruno added the kanban:in_progress label 2026-10-11 23:12:05 -04:00
bruno added kanban:qa and removed kanban:in_progress labels 2026-10-11 23:15:37 -04:00
bruno added kanban:review and removed kanban:qa labels 2026-10-11 23:17:41 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Projets/kanbante#19