Projet Test Specification
DéployéProjet de test créé pour valider le fonctionnement de bout en bout de l'agent SPECIFICATION. Idée fictive : un outil qui génère automatiquement des changelogs à partir des commits Git.
Source de l'idée : Créé manuellement pour tester specification-agent
Voir le dépôt de codePipeline
13/13 tickets terminés
Critères de validation : Verifier la qualite des PR ouvertes par l agent DEVELOPMENT et leur revue par l agent REVIEW.
Optionnel : les agents avancent sans attendre ce clic. Utilise ceci seulement pour corriger une décision d'agent.
Projet Test Specification (générateur de changelog automatique)
Problème et solution
Les équipes dev négligent souvent la rédaction de leurs changelogs : c'est perçu comme une corvée manuelle, source de changelogs incomplets ou mal rédigés. L'agent RESEARCH a validé la demande (concurrents GitSaga et AutoChangelog identifiés, discussion Hacker News active confirmant le besoin, aucun obstacle de faisabilité bloquant). La solution consiste en un outil qui lit automatiquement l'historique de commits Git d'un dépôt et en génère un changelog structuré, sans rédaction manuelle au moment de chaque release.
Fonctionnalités du MVP
- Connexion à un dépôt Git (via URL publique ou token d'accès pour dépôt privé) et lecture de l'historique de commits entre deux tags/versions.
- Extraction automatique (via LLM) des changements notables à partir des messages de commit, classés en catégories (Fonctionnalités, Corrections, Autres).
- Génération d'une page de changelog en Markdown, versionnée par tag/release.
- Interface web minimale pour déclencher une génération, visualiser le changelog généré et l'éditer manuellement avant publication.
- Publication d'une page changelog publique (URL dédiée par projet) accessible sans authentification.
- Gestion d'un seul dépôt par compte utilisateur en v1 (pas de multi-repos).
Hors périmètre (v1)
- Intégration multi-repos ou multi-organisations.
- Déclenchement automatique à chaque merge/release (webhook GitHub), en v1 génération à la demande uniquement.
- Personnalisation avancée du template de changelog (thèmes, branding client).
- Facturation / abonnement (le modèle de revenu par nombre de repos/seats n'est pas implémenté en v1, uniquement un usage gratuit à valider).
- Support d'autres plateformes que GitHub (GitLab, Bitbucket).
Modèle de données
| Entité | Champs principaux | Notes |
|---|---|---|
| User | id, email, motDePasseHash, githubToken | Authentification simple, un seul token GitHub par utilisateur |
| Repository | id, userId, url, nomComplet (owner/repo) | Un seul repo actif par utilisateur en v1 |
| Changelog | id, repositoryId, tagRange (ex. v1.0.0..v1.1.0), contenuMarkdown, statut (BROUILLON, PUBLIE), createdAt | Une entrée par génération |
| ChangelogEntry | id, changelogId, categorie (FEATURE, FIX, AUTRE), texte, commitSha | Lignes individuelles composant le changelog, éditables |
Flux utilisateur principaux
- L'utilisateur connecte son compte GitHub (token) et sélectionne un dépôt.
- Il choisit une plage de tags/versions, ou depuis le dernier changelog généré.
- L'outil récupère les commits de la plage, les envoie à un LLM pour extraction/classification, puis affiche un brouillon de changelog.
- L'utilisateur relit, édite si besoin, et publie la page de changelog.
- La page publique du changelog est accessible via une URL dédiée, consultable par les utilisateurs externes du produit.
Risques techniques et dépendances
- Dépendance à une API LLM tierce pour l'extraction des changements : coût par génération et qualité variable si les messages de commit sont mal nommés, risque déjà identifié en RESEARCH, à surveiller avec des cas réels lors du développement.
- Dépendance à l'API GitHub, rate limiting, gestion des tokens d'accès privés, pour la lecture des commits/tags.
- Pas de webhook en v1 : la fraîcheur du changelog dépend d'une action manuelle de l'utilisateur, à documenter clairement pour ne pas créer d'attente déçue.
Design — Projet Test Specification (generateur de changelog automatique)
Direction visuelle
Ton sobre et technique, pense pour un public de developpeurs habitues aux outils GitHub et Vercel : interface dense mais claire, priorite a la lisibilite du Markdown genere plutot qu a la decoration. Pas d univers ludique ni premium — l outil doit inspirer confiance et rigueur (proche d un outil de CI/CD ou de documentation technique).
Palette de couleurs
| Role | Couleur | Usage |
|---|---|---|
| Primaire | #2563EB | Boutons d action (Generer, Publier), liens |
| Fond | #F8FAFC | Arriere-plan de page (gris tres clair) |
| Texte | #0F172A | Texte principal (gris-bleu tres fonce) |
| Accent/etat | #16A34A (succes), #DC2626 (erreur), #D97706 (brouillon) | Statuts de changelog (PUBLIE/erreur/BROUILLON) |
Typographie
- Police principale : sans-serif systeme (ex. Inter ou stack systeme -apple-system, Segoe UI, Roboto)
- Police secondaire (blocs de code, diff de commits, contenu Markdown) : monospace systeme (ex. ui-monospace, Menlo, Consolas)
- Echelle de tailles : titres 24/20/16px (H1/H2/H3), corps de texte 14px, texte secondaire/metadata 12px
Ecrans cles (wireframe textuel)
Connexion et selection du depot
- Bandeau superieur : logo + nom du produit
- Formulaire central : champ Token GitHub (input masque) + bouton Connecter
- Une fois connecte : liste deroulante ou champ de recherche pour selectionner le depot (nom complet owner/repo), un seul depot actif affiche et selectionnable en v1
- Bouton Continuer desactive tant qu aucun depot n est selectionne
Generation du changelog
- En-tete : nom du depot selectionne, lien vers GitHub
- Deux selecteurs de tags cote a cote (De / A), pre-remplis avec le dernier changelog genere si disponible
- Bouton primaire Generer le changelog avec etat de chargement (spinner + texte Analyse des commits en cours)
- Zone d erreur sous les selecteurs si l appel LLM ou l API GitHub echoue
Brouillon d edition
- Titre de la plage (ex. v1.0.0 vers v1.1.0) + badge de statut (BROUILLON en orange)
- Contenu du changelog affiche en trois sections repliables : Fonctionnalites, Corrections, Autres
- Chaque ligne (ChangelogEntry) est editable en ligne (texte + petit lien vers le commit source par SHA), avec possibilite de supprimer une ligne
- Barre d actions en bas : Enregistrer le brouillon (secondaire) et Publier (primaire, vert)
Page publique du changelog
- Pas de barre de navigation applicative — page epuree, lisible par un visiteur externe non connecte
- Titre du produit et du depot en tete, puis liste des changelogs publies du plus recent au plus ancien
- Chaque entree de changelog : version et plage de tags en titre, date de publication, puis les trois categories (Fonctionnalites/Corrections/Autres) sous forme de listes a puces
- Pied de page minimal (mention Genere automatiquement)
Composants UI principaux
- Bouton : primaire (fond #2563EB, texte blanc), secondaire (contour gris, texte fonce), variante desactivee (opacite reduite)
- Champ de saisie : bordure fine, focus en primaire, variante masquee pour le token GitHub
- Badge de statut : BROUILLON (orange), PUBLIE (vert)
- Carte de changelog : bloc avec titre, metadonnees (date, plage de tags) et corps Markdown rendu
- Liste editable en ligne : ligne de texte + icone de suppression, utilisee pour les ChangelogEntry
Accessibilite et responsive
- Contraste minimum AA (4.5:1) entre texte et fond sur toutes les combinaisons de la palette, en particulier les badges de statut sur fond clair
- Desktop-first pour l interface de generation et edition (usage principal par les mainteneurs du depot sur poste de travail), mais la page publique du changelog doit rester pleinement lisible sur mobile (colonne unique, pas de tableau large)
- DONE
Modele de donnees : entites User, Repository, Changelog, ChangelogEntry
Creer les entites JPA et migrations pour User (id, email, motDePasseHash, githubToken), Repository (id, userId, url, nomComplet), Changelog (id, repositoryId, tagRange, contenuMarkdown, statut BROUILLON/PUBLIE, createdAt), ChangelogEntry (id, changelogId, categorie FEATURE/FIX/AUTRE, texte, commitSha). Un seul Repository actif par User en v1. Criteres : migrations appliquees, contraintes de cle etrangere en place, tests JPA de base.
Voir la Pull Request - DONE
Authentification : inscription/connexion + stockage du token GitHub
Endpoints d'inscription et connexion (email/mot de passe hashe) pour User. Ajouter un endpoint pour enregistrer/mettre a jour le token GitHub personnel (chiffre au repos, jamais renvoye en clair dans les reponses). Criteres : session/JWT valide apres connexion, token GitHub non expose dans les payloads de lecture.
Voir la Pull Request - DONE
Endpoint de connexion et selection du depot GitHub
POST pour valider le token GitHub fourni et resoudre le depot (owner/repo) associe au compte, en remplacant le depot actif existant (un seul depot par utilisateur en v1). Gerer les erreurs de token invalide ou depot introuvable. Correspond a l'ecran Connexion et selection du depot du design.
Voir la Pull Request - DONE
Endpoint liste des tags/versions d'un depot
GET qui proxy l'API GitHub pour lister les tags du depot actif de l'utilisateur, utilise pour pre-remplir les selecteurs De/A de l'ecran de generation. Gerer le rate limiting GitHub avec un message d'erreur clair.
Voir la Pull Request - DONE
Service d'extraction LLM des commits
Service backend qui recupere les commits GitHub entre deux tags donnes et les envoie a un LLM pour extraction/classification en categories FEATURE, FIX, AUTRE. Retourne une liste structuree (texte, categorie, commitSha) prete a devenir des ChangelogEntry. Criteres : gestion des erreurs d'appel LLM, tests avec des commits mal nommes (cas limite identifie en specification).
Voir la Pull Request - DONE
Endpoint POST generation d'un brouillon de changelog
Orchestration : appelle le service d'extraction LLM sur la plage de tags fournie, cree un Changelog (statut BROUILLON) et ses ChangelogEntry associees. Retourne le brouillon complet. Zone d'erreur si l'appel GitHub ou LLM echoue, correspond a l'etat de chargement/erreur de l'ecran de generation.
Voir la Pull Request - DONE
Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)
PATCH pour editer le texte d'une ChangelogEntry, DELETE pour en supprimer une, PUT pour enregistrer l'etat du brouillon (statut reste BROUILLON). Correspond aux actions d'edition en ligne et au bouton Enregistrer le brouillon de l'ecran Brouillon d'edition.
Voir la Pull Request - DONE
Endpoint de publication d'un changelog
POST qui fait passer un Changelog de BROUILLON a PUBLIE et fige son contenuMarkdown. Une fois publie, les ChangelogEntry ne sont plus editables via les endpoints de brouillon. Correspond au bouton Publier (primaire, vert) de l'ecran Brouillon d'edition.
Voir la Pull Request - DONE
Endpoint public de consultation des changelogs publies
GET sans authentification qui retourne la liste des Changelog au statut PUBLIE d'un depot, tries du plus recent au plus ancien, avec leurs ChangelogEntry groupees par categorie. Alimente la page publique du changelog.
Voir la Pull Request - DONE
Ecran : Connexion et selection du depot
Implementer le formulaire de connexion par token GitHub (input masque) et la selection du depot actif (recherche/liste deroulante), avec bouton Continuer desactive tant qu'aucun depot n'est selectionne. Suit le wireframe et la palette du design (#2563EB primaire).
Voir la Pull Request - DONE
Ecran : Generation du changelog
Implementer l'en-tete avec nom du depot et lien GitHub, les deux selecteurs de tags (De/A) pre-remplis si un changelog precedent existe, le bouton Generer le changelog avec etat de chargement (spinner + texte), et la zone d'erreur en cas d'echec GitHub/LLM.
Voir la Pull Request - DONE
Ecran : Brouillon d'edition
Implementer le titre de plage + badge de statut BROUILLON (orange), les trois sections repliables (Fonctionnalites/Corrections/Autres), l'edition en ligne de chaque ChangelogEntry (texte + lien vers commit SHA + suppression), et la barre d'actions Enregistrer le brouillon / Publier.
Voir la Pull Request - DONE
Ecran : Page publique du changelog
Implementer la page sans navigation applicative, epuree, listant les changelogs publies du plus recent au plus ancien avec leurs trois categories en listes a puces. Contraste AA et lisibilite mobile en colonne unique, conformement aux exigences d'accessibilite du design.
Voir la Pull Request
- 30/07/2026 09:17agentDépôt de code lié : http://187.55.228.139:3030/christian/forge-projet-test-specification.git
- 30/07/2026 09:17agentTicket "Ecran : Page publique du changelog" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/13
- 30/07/2026 09:17agentTicket "Ecran : Brouillon d'edition" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/12
- 30/07/2026 09:17agentTicket "Ecran : Generation du changelog" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/11
- 30/07/2026 09:17agentTicket "Ecran : Connexion et selection du depot" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/10
- 30/07/2026 09:17agentTicket "Endpoint public de consultation des changelogs publies" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/9
- 30/07/2026 09:17agentTicket "Endpoint de publication d'un changelog" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/8
- 30/07/2026 09:17agentTicket "Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/7
- 30/07/2026 09:17agentTicket "Endpoint POST generation d'un brouillon de changelog" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/6
- 30/07/2026 09:17agentTicket "Service d'extraction LLM des commits" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/5
- 30/07/2026 09:17agentTicket "Endpoint liste des tags/versions d'un depot" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/4
- 30/07/2026 09:17agentTicket "Endpoint de connexion et selection du depot GitHub" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/3
- 30/07/2026 09:17agentTicket "Authentification : inscription/connexion + stockage du token GitHub" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/2
- 30/07/2026 09:17agentTicket "Modele de donnees : entites User, Repository, Changelog, ChangelogEntry" mis à jour : PR : http://187.55.228.139:3030/christian/forge-projet-test-specification/pulls/1
- 30/07/2026 03:11agentProjet déployé : http://forge-projet-test-specification.187.55.228.139.sslip.io
- 30/07/2026 02:47systemEtat changé de DEVELOPMENT vers DEPLOYMENT (tous les tickets sont DONE)
- 30/07/2026 02:47agentTicket "Ecran : Page publique du changelog" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 22:07agentTicket "Ecran : Page publique du changelog" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/13
- 29/07/2026 22:06agentTicket "Ecran : Page publique du changelog" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 21:45agentTicket "Ecran : Brouillon d'edition" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 21:43agentTicket "Ecran : Brouillon d'edition" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/12
- 29/07/2026 21:40agentTicket "Ecran : Brouillon d'edition" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 21:32agentTicket "Ecran : Generation du changelog" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 21:27agentTicket "Ecran : Generation du changelog" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/11
- 29/07/2026 21:27agentTicket "Ecran : Generation du changelog" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 21:23agentTicket "Ecran : Connexion et selection du depot" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 21:02agentTicket "Ecran : Connexion et selection du depot" mis à jour : tentative de revue #1
- 29/07/2026 20:46agentTicket "Ecran : Connexion et selection du depot" mis à jour : statut TODO -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/10
- 29/07/2026 17:30systemTicket "Ecran : Connexion et selection du depot" remis à TODO : resté IN_PROGRESS plus de 45 min (run interrompu)
- 29/07/2026 16:41agentTicket "Ecran : Connexion et selection du depot" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 16:27agentTicket "Endpoint public de consultation des changelogs publies" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 16:24agentTicket "Endpoint public de consultation des changelogs publies" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/9
- 29/07/2026 16:20agentTicket "Endpoint public de consultation des changelogs publies" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 16:04agentTicket "Endpoint de publication d'un changelog" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 16:02agentTicket "Endpoint de publication d'un changelog" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/8
- 29/07/2026 16:00agentTicket "Endpoint de publication d'un changelog" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 15:52agentTicket "Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 15:49agentTicket "Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)" mis à jour : tentative de revue #1
- 29/07/2026 15:46agentTicket "Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/7
- 29/07/2026 15:40agentTicket "Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 15:28agentTicket "Endpoint POST generation d'un brouillon de changelog" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 15:26agentTicket "Endpoint POST generation d'un brouillon de changelog" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/6
- 29/07/2026 15:20agentTicket "Endpoint POST generation d'un brouillon de changelog" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 12:50systemTicket "Endpoint POST generation d'un brouillon de changelog" remis à TODO : resté IN_PROGRESS plus de 45 min (run interrompu)
- 29/07/2026 12:01agentTicket "Endpoint POST generation d'un brouillon de changelog" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 11:49agentTicket "Service d'extraction LLM des commits" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 11:46agentTicket "Service d'extraction LLM des commits" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/5
- 29/07/2026 11:42agentTicket "Service d'extraction LLM des commits" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 11:26agentTicket "Endpoint liste des tags/versions d'un depot" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 11:24agentTicket "Endpoint liste des tags/versions d'un depot" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/4
- 29/07/2026 11:20agentTicket "Endpoint liste des tags/versions d'un depot" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 11:09agentTicket "Endpoint de connexion et selection du depot GitHub" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 11:07agentTicket "Endpoint de connexion et selection du depot GitHub" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/3
- 29/07/2026 11:03agentTicket "Endpoint de connexion et selection du depot GitHub" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 10:49agentTicket "Authentification : inscription/connexion + stockage du token GitHub" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 10:47agentTicket "Authentification : inscription/connexion + stockage du token GitHub" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/2
- 29/07/2026 10:42agentTicket "Authentification : inscription/connexion + stockage du token GitHub" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 10:23agentTicket "Modele de donnees : entites User, Repository, Changelog, ChangelogEntry" mis à jour : statut IN_REVIEW -> DONE
- 29/07/2026 10:21agentTicket "Modele de donnees : entites User, Repository, Changelog, ChangelogEntry" mis à jour : statut IN_PROGRESS -> IN_REVIEW ; PR : http://localhost:3030/christian/forge-projet-test-specification/pulls/1
- 29/07/2026 10:21agentTicket "Modele de donnees : entites User, Repository, Changelog, ChangelogEntry" mis à jour : statut TODO -> IN_PROGRESS
- 29/07/2026 10:21agentEtat changé de BACKLOG vers DEVELOPMENT
- 29/07/2026 10:21agentDépôt de code lié : http://localhost:3030/christian/forge-projet-test-specification.git
- 28/07/2026 22:47agentEtat changé de DESIGN vers BACKLOG
- 28/07/2026 22:47agentTicket ajouté : Ecran : Page publique du changelog
- 28/07/2026 22:47agentTicket ajouté : Ecran : Brouillon d'edition
- 28/07/2026 22:47agentTicket ajouté : Ecran : Generation du changelog
- 28/07/2026 22:47agentTicket ajouté : Ecran : Connexion et selection du depot
- 28/07/2026 22:47agentTicket ajouté : Endpoint public de consultation des changelogs publies
- 28/07/2026 22:47agentTicket ajouté : Endpoint de publication d'un changelog
- 28/07/2026 22:47agentTicket ajouté : Endpoints d'edition du brouillon (modifier/supprimer une entree, enregistrer)
- 28/07/2026 22:47agentTicket ajouté : Endpoint POST generation d'un brouillon de changelog
- 28/07/2026 22:47agentTicket ajouté : Service d'extraction LLM des commits
- 28/07/2026 22:46agentTicket ajouté : Endpoint liste des tags/versions d'un depot
- 28/07/2026 22:46agentTicket ajouté : Endpoint de connexion et selection du depot GitHub
- 28/07/2026 22:46agentTicket ajouté : Authentification : inscription/connexion + stockage du token GitHub
- 28/07/2026 22:46agentTicket ajouté : Modele de donnees : entites User, Repository, Changelog, ChangelogEntry
- 28/07/2026 22:42humanValidation manuelle pour tester backlog-agent de bout en bout
- 28/07/2026 21:48agentEtat changé de SPECIFICATION vers DESIGN
- 28/07/2026 21:44humanRe-validation après fix ENUM, prêt pour design-agent réel
- 28/07/2026 21:44agentEtat changé de DESIGN vers SPECIFICATION
- 28/07/2026 21:44agentEtat changé de MAINTENANCE vers DESIGN
- 28/07/2026 21:20agentEtat changé de MARKETING vers MAINTENANCE
- 28/07/2026 21:20agentEtat changé de DEPLOYMENT vers MARKETING
- 28/07/2026 21:20agentEtat changé de REVIEW vers DEPLOYMENT
- 28/07/2026 21:20agentEtat changé de DEVELOPMENT vers REVIEW
- 28/07/2026 21:20agentEtat changé de BACKLOG vers DEVELOPMENT
- 28/07/2026 21:20agentEtat changé de SPECIFICATION vers BACKLOG
- 28/07/2026 21:20agentEtat changé de RESEARCH vers SPECIFICATION
- 28/07/2026 21:20agentEtat changé de SPECIFICATION vers RESEARCH
- 28/07/2026 21:11humanValidation manuelle pour test end-to-end de design-agent
- 28/07/2026 20:49agentEtat changé de RESEARCH vers SPECIFICATION
- 28/07/2026 20:41humanValidation manuelle pour test end-to-end de specification-agent
- 28/07/2026 20:41agentEtat changé de IDEA vers RESEARCH