chore(ideai): synchronise etat tickets et agents

Cloture le ticket #183 (QA), ajoute les tickets #186 et #187,
re-attribue les permissions MCP entre agents.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-31 16:58:07 +02:00
parent e7ff1c2a19
commit 9291f96730
12 changed files with 133 additions and 55 deletions

View File

@ -17,7 +17,7 @@
"profileId": "64be4281-545b-48d6-9b35-d8ae0fb3bb72", "profileId": "64be4281-545b-48d6-9b35-d8ae0fb3bb72",
"templateId": "84716ac6-ee09-4d5e-8790-3194148bedea", "templateId": "84716ac6-ee09-4d5e-8790-3194148bedea",
"synchronized": true, "synchronized": true,
"syncedTemplateVersion": 2 "syncedTemplateVersion": 3
}, },
{ {
"agentId": "10ee045b-1c41-479e-ba03-dceed9edd495", "agentId": "10ee045b-1c41-479e-ba03-dceed9edd495",
@ -59,7 +59,7 @@
"agentId": "7efa512f-3b3a-47b5-ade0-a2dd13073055", "agentId": "7efa512f-3b3a-47b5-ade0-a2dd13073055",
"name": "QA", "name": "QA",
"mdPath": "agents/qa.md", "mdPath": "agents/qa.md",
"profileId": "64be4281-545b-48d6-9b35-d8ae0fb3bb72", "profileId": "9dd61642-f10d-4fc2-a8f1-992d7e1c6940",
"templateId": "2629157e-21c6-4c4c-93ef-10dde69480b0", "templateId": "2629157e-21c6-4c4c-93ef-10dde69480b0",
"synchronized": true, "synchronized": true,
"syncedTemplateVersion": 1 "syncedTemplateVersion": 1
@ -75,7 +75,7 @@
"agentId": "aa1ae4f2-c78e-4481-8f96-64f77391d09a", "agentId": "aa1ae4f2-c78e-4481-8f96-64f77391d09a",
"name": "Coach", "name": "Coach",
"mdPath": "agents/coach.md", "mdPath": "agents/coach.md",
"profileId": "18173569-2d3b-4977-b800-b6219c479944", "profileId": "64be4281-545b-48d6-9b35-d8ae0fb3bb72",
"synchronized": false "synchronized": false
}, },
{ {
@ -86,6 +86,13 @@
"templateId": "9b854d15-de14-494f-a154-22ad06285d87", "templateId": "9b854d15-de14-494f-a154-22ad06285d87",
"synchronized": true, "synchronized": true,
"syncedTemplateVersion": 1 "syncedTemplateVersion": 1
},
{
"agentId": "f4dc4bde-c6a4-41b0-a1d2-a988d3c119a9",
"name": "DevOnline",
"mdPath": "agents/devonline.md",
"profileId": "d2603c4e-1ee5-51a3-8b61-99a9f03eec50",
"synchronized": false
} }
] ]
} }

View File

View File

@ -20,7 +20,6 @@ feature ou correction applicative, tu passes par les agents spécialisés :
- **DevBackend** pour le code côté serveur/domaine/données. - **DevBackend** pour le code côté serveur/domaine/données.
- **DevFrontend** pour le code d'interface. - **DevFrontend** pour le code d'interface.
- **QA** pour écrire et exécuter les tests, et produire les rapports d'échec. - **QA** pour écrire et exécuter les tests, et produire les rapports d'échec.
- **Context** pour les tâches mécaniques peu risquées et coûteuses en tokens : recherche de symboles, résumés de fichiers/logs/diffs, extraction d'échecs, repérage de fichiers candidats. Context n'arbitre rien et ne remplace jamais UX/Architect/Git/QA/dev.
**Exception limitée** : tu peux modifier toi-même les fichiers de contexte, de mémoire, **Exception limitée** : tu peux modifier toi-même les fichiers de contexte, de mémoire,
la documentation de pilotage et la configuration d'orchestration quand la demande porte la documentation de pilotage et la configuration d'orchestration quand la demande porte
@ -65,10 +64,6 @@ tomber par défaut dans les mains d'un dev. UX passe **avant** Architect quand l
conditionne les contrats, et **avec** lui quand une contrainte technique borne la conditionne les contrats, et **avec** lui quand une contrainte technique borne la
conception. UX ne bloque pas les lots sans surface utilisateur. conception. UX ne bloque pas les lots sans surface utilisateur.
**Quand solliciter Git — la règle.** Pour tout lot applicatif amené à modifier le code ou à relancer une feature existante, tu sollicites Git après UX/Architect et avant DevBackend/DevFrontend, même si le lot semble petit. Tu ne décides pas toi-même qu'un lot peut rester implicitement sur la branche courante.
**Quand solliciter Context — la règle.** Avant d'absorber toi-même une recherche volumineuse, un tri de logs ou un résumé de diff/fichiers sans arbitrage, tu envisages d'abord Context. Tu gardes les décisions et la synthèse finale, Context ne sert qu'à compresser de l'information factuelle.
--- ---
## 4. Répartition des responsabilités ## 4. Répartition des responsabilités
@ -87,8 +82,6 @@ spécialisé dans son domaine** :
l'utilisateur s'il faut brancher, committer ou merger** : sollicite Git, qui tranche. l'utilisateur s'il faut brancher, committer ou merger** : sollicite Git, qui tranche.
Aucune action sortante (push, publication, PR distante) sans validation explicite Aucune action sortante (push, publication, PR distante) sans validation explicite
de l'utilisateur. de l'utilisateur.
- **Context** compresse l'information brute mais ne prend aucune décision produit,
architecture, UI, QA ou git.
--- ---
@ -105,4 +98,6 @@ Si le contexte d'un agent manque une consigne qui relève de son rôle, **mets
contexte** au lieu de gonfler le tien. Ton contexte reste celui du pilotage ; les détails contexte** au lieu de gonfler le tien. Ton contexte reste celui du pilotage ; les détails
d'architecture, de conception et de test appartiennent aux agents propriétaires. d'architecture, de conception et de test appartiennent aux agents propriétaires.
Si une réflexion est récurrente et aboutit toujours à la même solution, créés en un skill réutilisable Si une réflexion est récurrente et aboutit toujours à la même solution, créés en un skill réutilisable
Mets a jours le status des tickets que tu traites in progress, closed, QA

View File

@ -2,40 +2,6 @@
"version": 1, "version": 1,
"projectDefault": null, "projectDefault": null,
"agents": [ "agents": [
{
"agentId": "57695b92-24d0-4876-837c-76116e70a6ae",
"policy": {
"allowedTools": [
"idea_list_agents",
"idea_context_read",
"idea_memory_read",
"idea_skill_read",
"idea_workstate_read",
"idea_ticket_read",
"idea_ticket_list",
"idea_ticket_read_carnet",
"idea_sprint_list",
"idea_template_list",
"idea_template_read",
"idea_ask_agent",
"idea_launch_agent",
"idea_stop_agent",
"idea_update_context",
"idea_context_propose",
"idea_memory_write",
"idea_ticket_create",
"idea_ticket_update",
"idea_ticket_update_status",
"idea_ticket_update_priority",
"idea_ticket_update_carnet",
"idea_ticket_link",
"idea_ticket_unlink",
"idea_run_in_background",
"idea_workstate_set",
"idea_create_skill"
]
}
},
{ {
"agentId": "a5da242f-e5f4-49b5-a29f-e0d4b7b49169", "agentId": "a5da242f-e5f4-49b5-a29f-e0d4b7b49169",
"policy": { "policy": {
@ -192,6 +158,39 @@
"idea_workstate_set" "idea_workstate_set"
] ]
} }
},
{
"agentId": "57695b92-24d0-4876-837c-76116e70a6ae",
"policy": {
"allowedTools": [
"idea_list_agents",
"idea_context_read",
"idea_memory_read",
"idea_skill_read",
"idea_workstate_read",
"idea_ticket_read",
"idea_ticket_list",
"idea_ticket_read_carnet",
"idea_sprint_list",
"idea_template_list",
"idea_template_read",
"idea_ask_agent",
"idea_launch_agent",
"idea_stop_agent",
"idea_update_context",
"idea_context_propose",
"idea_memory_write",
"idea_ticket_create",
"idea_ticket_update",
"idea_ticket_update_status",
"idea_ticket_update_priority",
"idea_ticket_update_carnet",
"idea_ticket_link",
"idea_ticket_unlink",
"idea_workstate_set",
"idea_create_skill"
]
}
} }
] ]
} }

View File

@ -1,8 +1,8 @@
--- ---
issueRef: "#183" issueRef: "#183"
version: 11 version: 12
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"} updatedBy: {"kind":"user"}
updatedAt: 1785424283717 updatedAt: 1785497678018
--- ---
## Clarification transverse — 30 juillet 2026 ## Clarification transverse — 30 juillet 2026

View File

@ -2,17 +2,17 @@
id: "6bbb4a4d-7c42-4658-9212-e86f3ff65684" id: "6bbb4a4d-7c42-4658-9212-e86f3ff65684"
number: 183 number: 183
title: "[Produit][UX] Permettre le choix de types d'exercice métier mappés vers les types Health Services" title: "[Produit][UX] Permettre le choix de types d'exercice métier mappés vers les types Health Services"
status: "qa" status: "closed"
priority: "medium" priority: "medium"
sprint: "d5c18b44-0eec-46db-b8ab-506cfee0bfea" sprint: "d5c18b44-0eec-46db-b8ab-506cfee0bfea"
links: [{"target":"#179","kind":"relatesTo"}] links: [{"target":"#179","kind":"relatesTo"}]
agentRefs: [] agentRefs: []
attachments: [] attachments: []
createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"} createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"} updatedBy: {"kind":"user"}
createdAt: 1785407800593 createdAt: 1785407800593
updatedAt: 1785424283717 updatedAt: 1785497678018
version: 11 version: 12
--- ---
Contexte au 30 juillet 2026 : sur certaines montres Wear OS, les métriques `distance` et `calories` ne semblent pas remonter selon le type d'exercice Health Services utilisé. Aujourd'hui, GameTime choisit en interne parmi `RUNNING`, `WALKING`, `HIGH_INTENSITY_INTERVAL_TRAINING`, `WORKOUT` sans que ce choix soit exposé à l'utilisateur métier. Or ce choix influence les métriques réellement fournies par la montre. Contexte au 30 juillet 2026 : sur certaines montres Wear OS, les métriques `distance` et `calories` ne semblent pas remonter selon le type d'exercice Health Services utilisé. Aujourd'hui, GameTime choisit en interne parmi `RUNNING`, `WALKING`, `HIGH_INTENSITY_INTERVAL_TRAINING`, `WORKOUT` sans que ce choix soit exposé à l'utilisateur métier. Or ce choix influence les métriques réellement fournies par la montre.

View File

@ -0,0 +1,6 @@
---
issueRef: "#186"
version: 1
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
updatedAt: 1785496152898
---

View File

@ -0,0 +1,17 @@
---
id: "df84c786-06d2-419e-871e-8e9bb67dcbca"
number: 186
title: "Correction URL de connexion serveur Android"
status: "open"
priority: "high"
sprint: null
links: []
agentRefs: []
attachments: []
createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
createdAt: 1785496152898
updatedAt: 1785496152898
version: 1
---
Le client Android utilise `http://10.0.2.2:8080` mais le serveur écoute sur `192.168.1.75:8090`. Corriger l'URL par défaut ou ajouter une configuration pour permettre de spécifier l'URL du serveur.

View File

@ -0,0 +1,6 @@
---
issueRef: "#187"
version: 5
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
updatedAt: 1785500801082
---

View File

@ -0,0 +1,17 @@
---
id: "37edea6f-a4d8-4aad-a290-182e9c453390"
number: 187
title: "Renforcer la QA serveur avec tests fonctionnels de synchronisation et fixtures versionnées"
status: "qa"
priority: "high"
sprint: null
links: []
agentRefs: [{"agentId":"10ee045b-1c41-479e-ba03-dceed9edd495","role":"assigned"},{"agentId":"7efa512f-3b3a-47b5-ade0-a2dd13073055","role":"assigned"}]
attachments: []
createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"}
createdAt: 1785499099153
updatedAt: 1785500801082
version: 5
---
Créer un maximum de tests fonctionnels côté serveur pour les synchronisations d'exercices, de programmes, de séances et d'historiques. Couvrir les cas nominal, erreurs, fallback et compatibilité ascendante/descendante avec anciennes formes de sauvegarde d'exercices. Mettre en place des batches/bashs de fixtures d'exercices versionnés couvrant un maximum de combinaisons (avec/sans étapes, score, timers, etc.) et conserver ces batches pour tester la conversion d'anciennes versions à chaque évolution du format.

View File

@ -1,3 +1,3 @@
{ {
"nextNumber": 186 "nextNumber": 188
} }

View File

@ -2559,7 +2559,7 @@
"issueRef": "#183", "issueRef": "#183",
"path": "183", "path": "183",
"title": "[Produit][UX] Permettre le choix de types d'exercice métier mappés vers les types Health Services", "title": "[Produit][UX] Permettre le choix de types d'exercice métier mappés vers les types Health Services",
"status": "qa", "status": "closed",
"priority": "medium", "priority": "medium",
"sprint": "d5c18b44-0eec-46db-b8ab-506cfee0bfea", "sprint": "d5c18b44-0eec-46db-b8ab-506cfee0bfea",
"assignedAgentIds": [], "assignedAgentIds": [],
@ -2567,7 +2567,7 @@
"kind": "agent", "kind": "agent",
"agent_id": "57695b92-24d0-4876-837c-76116e70a6ae" "agent_id": "57695b92-24d0-4876-837c-76116e70a6ae"
}, },
"updatedAt": 1785424283717 "updatedAt": 1785497678018
}, },
{ {
"issueRef": "#184", "issueRef": "#184",
@ -2596,6 +2596,37 @@
"agent_id": "57695b92-24d0-4876-837c-76116e70a6ae" "agent_id": "57695b92-24d0-4876-837c-76116e70a6ae"
}, },
"updatedAt": 1785427337929 "updatedAt": 1785427337929
},
{
"issueRef": "#186",
"path": "186",
"title": "Correction URL de connexion serveur Android",
"status": "open",
"priority": "high",
"sprint": null,
"assignedAgentIds": [],
"createdBy": {
"kind": "agent",
"agent_id": "57695b92-24d0-4876-837c-76116e70a6ae"
},
"updatedAt": 1785496152898
},
{
"issueRef": "#187",
"path": "187",
"title": "Renforcer la QA serveur avec tests fonctionnels de synchronisation et fixtures versionnées",
"status": "qa",
"priority": "high",
"sprint": null,
"assignedAgentIds": [
"10ee045b-1c41-479e-ba03-dceed9edd495",
"7efa512f-3b3a-47b5-ade0-a2dd13073055"
],
"createdBy": {
"kind": "agent",
"agent_id": "57695b92-24d0-4876-837c-76116e70a6ae"
},
"updatedAt": 1785500801082
} }
] ]
} }