38 lines
2.3 KiB
Markdown
38 lines
2.3 KiB
Markdown
---
|
||
issueRef: "#257"
|
||
version: 6
|
||
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
|
||
updatedAt: 1787950467916
|
||
---
|
||
2026-08-28 Main
|
||
|
||
Contexte initial
|
||
- Le bouton stop de la custom CLI ne fonctionne pas et doit annuler le travail courant sans fermer la session.
|
||
- L’annulation doit cascader sur tous les agents délégués par ce travail courant, transitivement.
|
||
- Les tools/processus/travaux en cours doivent aussi être interrompus.
|
||
|
||
Cadrage UX
|
||
- `Stop` signifie uniquement `Arrêter la demande en cours`.
|
||
- La session et le contexte doivent être conservés.
|
||
- Etat attendu: `Stopping...` pendant la propagation, puis `Stopped`/`Request stopped` quand tout le sous-arbre courant est effectivement annulé.
|
||
- Ne jamais afficher un état stoppé si un tool ou un sous-agent du même tour tourne encore.
|
||
|
||
Cadrage Architect
|
||
- Le bug vient du fait que la UI/commande stoppe la session structurée au lieu d’annuler l’exécution courante.
|
||
- Cible: source de vérité du travail courant = task racine persistée; chaque délégation/tool long du tour courant est chaîné via `parent_task_id`.
|
||
- Le cancel doit suivre l’arbre de tâches, avec séparation claire entre `annuler le travail` et `fermer la session`.
|
||
- Port recommandé côté app/infra pour annuler la ressource runtime associée à un task/execution; état `Cancelling` puis terminal cohérent.
|
||
|
||
Etat implémentation observé
|
||
- Backend modifié dans `crates/application`, `crates/domain`, `crates/infrastructure/session` et `orchestrator/mcp/tools`.
|
||
- Frontend modifié dans `CustomAgentChatView.tsx` + tests associés.
|
||
- Backend: sessions structurées conservées, `cancel_current_turn()` introduit, cascade sur dépendances actives + préemption runtime, autorisation requester/sous-arbre sur `idea_stop_agent`, `TurnCancel` pour couper le process du tour courant.
|
||
- Frontend: bouton `Stop` rebranché sur l’annulation de chat courante, état `Stopping...`, anti double-clic, session réutilisable.
|
||
|
||
Verdict QA 1
|
||
- Ciblé backend/frontend vert.
|
||
- Blocage global: `app-tauri` ne compile plus ses tests DTO après l’ajout de `runtime_state` et `node_id`.
|
||
- Erreurs repérées dans `crates/app-tauri/tests/dto_agents.rs` lignes ~282, ~325, ~694.
|
||
|
||
Prochaine étape
|
||
- DevBackend corrige les fixtures/tests DTO Tauri puis QA relance. |