chore(tickets): sync miroir — lot CLI/TUI #155/#168/#169/#170 (+ clôture #151/#167)

(cherry picked from commit d7c4505bacdb9bc03145f12267ae281ad6a35739)
This commit is contained in:
2026-08-06 19:40:34 +02:00
parent 31976d6ed8
commit c50b6c5388
14 changed files with 161 additions and 25 deletions

View File

@ -1,8 +1,8 @@
---
issueRef: "#151"
version: 11
updatedBy: {"kind":"agent","agent_id":"1ff94b51-3e17-4a39-8543-7715d1ff0f80"}
updatedAt: 1786036332616
version: 12
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1786036825333
---
## 2026-08-06 — Reopened from user validation on AppImage
- User retested the custom CLI on the current AppImage build.

View File

@ -9,9 +9,9 @@ links: []
agentRefs: [{"agentId":"8f7da528-58df-4315-97e9-0562230ecc19","role":"assigned"}]
attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"1ff94b51-3e17-4a39-8543-7715d1ff0f80"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1785945386695
updatedAt: 1786036332616
version: 11
updatedAt: 1786036825333
version: 12
---
Régression toujours présente sur la custom CLI: pendant une conversation agent active, le bouton rouge Cancel en haut à droite de la cellule reste sous/derrière les autres contrôles de la toolbar au lieu de passer au premier plan et de rester cliquable. Attendu: hiérarchie visuelle stable et z-order correct en état busy, sans recouvrement du bouton Cancel.

View File

@ -1,8 +1,8 @@
---
issueRef: "#155"
version: 7
version: 9
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1786035611373
updatedAt: 1786037927509
---
## 2026-08-06 — Reopened from user validation on AppImage
- User reports that clipboard paste in the custom CLI chat still does not work in practice.

View File

@ -1,8 +1,8 @@
---
id: "620bc08f-835c-483c-a9f1-59690ebf8ab5"
number: 155
title: "Custom chat: paste image from clipboard into composer"
status: "open"
title: "Custom chat: paste image/fichier depuis le clipboard dans le composer"
status: "inProgress"
priority: "medium"
sprint: null
links: [{"target":"#154","kind":"dependsOn"}]
@ -11,7 +11,7 @@ attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1785964740363
updatedAt: 1786035611373
version: 7
updatedAt: 1786037927509
version: 9
---
La custom CLI ne permet toujours pas de coller une image/fichier depuis le presse-papiers dans le chat. Après un test utilisateur du 2026-08-06, le collage attendu ne crée aucun attachment utilisable dans le composer. Il faut rétablir le support de collage clipboard dans le chat custom, sur la base du pipeline d'attachments, puis valider end-to-end sur l'AppImage réelle.
Demande utilisateur requalifiée le 2026-08-06: la custom CLI ne permet toujours pas de coller un fichier dans la barre de chat, comme dans une TUI native Claude Code ou Codex. Le scope ne doit pas rester limité au seul collage d'image: il faut couvrir au minimum les fichiers/images exposés par le clipboard et les convertir en attachments utilisables dans le composer custom, via le pipeline d'attachments existant.

View File

@ -1,8 +1,8 @@
---
issueRef: "#167"
version: 3
updatedBy: {"kind":"agent","agent_id":"1ff94b51-3e17-4a39-8543-7715d1ff0f80"}
updatedAt: 1786036332616
version: 4
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1786036825352
---
## 2026-08-06 — New regression ticket from user test
- User validated that classic progress messages stream correctly in the custom CLI.

View File

@ -9,9 +9,9 @@ links: []
agentRefs: [{"agentId":"fe887179-933f-47d4-960f-c3b06827f86c","role":"assigned"},{"agentId":"8f7da528-58df-4315-97e9-0562230ecc19","role":"assigned"}]
attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"1ff94b51-3e17-4a39-8543-7715d1ff0f80"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1786034864702
updatedAt: 1786036332616
version: 3
updatedAt: 1786036825352
version: 4
---
Régression observée sur la custom CLI (test utilisateur du 2026-08-06): les messages de progress classiques apparaissent bien pendant le tour, mais les événements de fin de tour (`turn.started`/`turn.completed` côté provider) et les appels MCP/outils n'apparaissent qu'après le rendu du Final. Attendu: tout événement IdeA observable localement avant Final doit être projeté au fil de l'eau dans le bon ordre temporel, sans post-affichage trompeur après la réponse finale.

View File

@ -0,0 +1,11 @@
---
issueRef: "#168"
version: 2
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1786037927527
---
## 2026-08-06 — Ouverture depuis retour utilisateur
- Le ticket #151 a été requalifié comme hors-sujet pour ce besoin précis: l'utilisateur ne demande pas un fix de z-index ou de profondeur du bouton Cancel.
- Besoin exact: dans la custom CLI, il ne doit pas y avoir de bouton `Cancel` séparé pour interrompre une question en cours.
- Attendu UX: le bouton `Send` devient `Stop` pendant le tour en cours, puis redevient `Send` après fin/annulation.
- Périmètre pressenti: frontend pur (composer / barre d'action custom CLI), sans nouveau contrat backend si l'action stop existe déjà.

View File

@ -0,0 +1,17 @@
---
id: "b79839df-769c-4a2e-a4af-22a10cb6ce28"
number: 168
title: "Custom CLI: transformer le bouton Send en Stop pendant une question agent"
status: "open"
priority: "medium"
sprint: null
links: [{"target":"#151","kind":"relatesTo"},{"target":"#147","kind":"relatesTo"}]
agentRefs: [{"agentId":"8f7da528-58df-4315-97e9-0562230ecc19","role":"assigned"}]
attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1786037910947
updatedAt: 1786037927527
version: 2
---
Demande utilisateur du 2026-08-06: dans la custom CLI, il ne faut pas de bouton Cancel séparé dans la toolbar pendant une conversation. Le comportement attendu est qu'au moment où l'utilisateur envoie une question à un agent, le bouton d'envoi se transforme en bouton Stop, puis revienne en bouton Send quand le tour est terminé ou arrêté. Ce n'est pas un bug de profondeur/z-index du bouton Cancel historique (#151), mais un changement UX/comportemental du composer custom.

View File

@ -0,0 +1,11 @@
---
issueRef: "#169"
version: 2
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1786037927546
---
## 2026-08-06 — Ouverture depuis retour utilisateur
- Repro utilisateur: si un agent est déjà occupé par une conversation inter-agent (ex: Main -> Architect), l'ouverture de la custom CLI sur cet agent échoue avec une variante de `already open elsewhere`.
- Attendu produit: comme pour la TUI native, l'utilisateur doit disposer d'une session dédiée côté humain, distincte des sessions inter-agent/headless en cours.
- Hypothèse de cadrage: le verrou d'occupation/surface mélange actuellement visibilité/surface et exclusivité de session, ou ne distingue pas assez la session user des autres sessions.
- Périmètre pressenti: architecture + backend + frontend.

View File

@ -0,0 +1,17 @@
---
id: "2fed8980-10b8-411a-a93e-a3d2a06c4798"
number: 169
title: "Custom CLI: session user dédiée même si l'agent est déjà en conversation inter-agent"
status: "open"
priority: "high"
sprint: null
links: [{"target":"#149","kind":"relatesTo"},{"target":"#147","kind":"relatesTo"}]
agentRefs: [{"agentId":"b4730d7f-c54d-4736-8a04-c6203aa2fd49","role":"assigned"},{"agentId":"fe887179-933f-47d4-960f-c3b06827f86c","role":"assigned"},{"agentId":"8f7da528-58df-4315-97e9-0562230ecc19","role":"assigned"}]
attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1786037910965
updatedAt: 1786037927546
version: 2
---
Demande utilisateur du 2026-08-06: si Main parle à Architect, l'utilisateur ne peut pas lancer la custom CLI d'Architect car IdeA dit qu'elle est déjà ouverte ailleurs. Attendu: comme pour la TUI native, la surface custom CLI doit pouvoir ouvrir une session spéciale côté user, distincte des conversations inter-agent/headless en cours, sans collision de disponibilité 'already open elsewhere'.

View File

@ -0,0 +1,11 @@
---
issueRef: "#170"
version: 2
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1786037927613
---
## 2026-08-06 — Ouverture depuis retour utilisateur
- Repro utilisateur: le basculement de la custom CLI vers la TUI native ne se fait pas proprement; l'app dit parfois que la TUI est déjà active ailleurs.
- Attendu produit: aucun faux positif de disponibilité lors du hand-off entre surface custom CLI et TUI native; une seule surface humaine active à la fois si c'est la règle, mais avec cleanup/transition correcte.
- Hypothèse de cadrage: hand-off incomplet ou registry de session/surface qui conserve un état occupé après le switch.
- Périmètre pressenti: architecture + backend + frontend.

View File

@ -0,0 +1,17 @@
---
id: "ae7f4faf-ed44-4117-84fe-4c5250060397"
number: 170
title: "Custom CLI <-> TUI native: éviter les faux 'TUI déjà active ailleurs' lors du basculement"
status: "open"
priority: "high"
sprint: null
links: [{"target":"#149","kind":"relatesTo"},{"target":"#147","kind":"relatesTo"}]
agentRefs: [{"agentId":"b4730d7f-c54d-4736-8a04-c6203aa2fd49","role":"assigned"},{"agentId":"fe887179-933f-47d4-960f-c3b06827f86c","role":"assigned"},{"agentId":"8f7da528-58df-4315-97e9-0562230ecc19","role":"assigned"}]
attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1786037910985
updatedAt: 1786037927613
version: 2
---
Demande utilisateur du 2026-08-06: le passage de la custom CLI à la TUI native ne se fait pas proprement; IdeA affiche parfois que la TUI est déjà active ailleurs. Attendu: un basculement cohérent entre surface custom CLI et TUI native, avec nettoyage/hand-off de session suffisant pour qu'aucune des deux surfaces ne bloque l'autre à tort.

View File

@ -1,3 +1,3 @@
{
"nextNumber": 168
"nextNumber": 171
}

View File

@ -1991,7 +1991,7 @@
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1786036332616
"updatedAt": 1786036825333
},
{
"issueRef": "#152",
@ -2024,8 +2024,8 @@
{
"issueRef": "#155",
"path": "155",
"title": "Custom chat: paste image from clipboard into composer",
"status": "open",
"title": "Custom chat: paste image/fichier depuis le clipboard dans le composer",
"status": "inProgress",
"priority": "medium",
"sprint": null,
"assignedAgentIds": [
@ -2036,7 +2036,7 @@
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1786034876664
"updatedAt": 1786037927509
},
{
"issueRef": "#156",
@ -2224,7 +2224,59 @@
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1786036332616
"updatedAt": 1786036825352
},
{
"issueRef": "#168",
"path": "168",
"title": "Custom CLI: transformer le bouton Send en Stop pendant une question agent",
"status": "open",
"priority": "medium",
"sprint": null,
"assignedAgentIds": [
"8f7da528-58df-4315-97e9-0562230ecc19"
],
"createdBy": {
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1786037927527
},
{
"issueRef": "#169",
"path": "169",
"title": "Custom CLI: session user dédiée même si l'agent est déjà en conversation inter-agent",
"status": "open",
"priority": "high",
"sprint": null,
"assignedAgentIds": [
"b4730d7f-c54d-4736-8a04-c6203aa2fd49",
"fe887179-933f-47d4-960f-c3b06827f86c",
"8f7da528-58df-4315-97e9-0562230ecc19"
],
"createdBy": {
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1786037927546
},
{
"issueRef": "#170",
"path": "170",
"title": "Custom CLI <-> TUI native: éviter les faux 'TUI déjà active ailleurs' lors du basculement",
"status": "open",
"priority": "high",
"sprint": null,
"assignedAgentIds": [
"b4730d7f-c54d-4736-8a04-c6203aa2fd49",
"fe887179-933f-47d4-960f-c3b06827f86c",
"8f7da528-58df-4315-97e9-0562230ecc19"
],
"createdBy": {
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1786037927613
}
]
}