Files
IdeA/.ideai/tickets/232/carnet.md

31 lines
3.8 KiB
Markdown

---
issueRef: "#232"
version: 12
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1787334071330
---
2026-08-20 Main
- Ticket créé pour le rebuild AppImage Linux.
- Workflow `build-appimage` chargé.
- Build source identifié sur `develop` au commit `a1d25d7d9e6233d64143fe2f50cb47bc023fe660`.
- `npm --prefix frontend run build` exécuté avec succès.
- Bundling Tauri AppImage exécuté avec succès.
- Artefact produit: `target/release/bundle/appimage/IdeA_0.3.0_amd64.AppImage`.
- Git a posé le tag annoté `v0.21.0` sur le commit source `a1d25d7` conformément à la règle de version des builds sur `develop`.
- Vigilance relevée par Git: `v0.19.0` et `v0.20.0` pointent historiquement sur le même commit `1f58b96`; non modifié.
2026-08-21 Main
- Ticket réouvert et requalifié pour la disparition des annonces MCP/inter-agent.
- Capture fournie: Work state montre `DevFrontend` et `QA` Busy, mais aucun rendu visible d'annonce dans la cellule `Main`.
- Cause principale identifiée dans le frontend: l'overlay cible F3 est explicitement désactivé en mode `custom` (`LayoutGrid.tsx`: rendu conditionné par `cellMode !== "custom"`). La capture est précisément sur `Main` en `CLI custom`, donc aucune annonce cible ne peut apparaître dans cette cellule, même si l'agent est busy.
- Le preview F2 n'est rendu que dans `AgentsPanel` (`AnnouncementsPreview requester={a.id}`), pas dans `CustomAgentChatView`. Donc la surface visible de chat custom ne possède actuellement aucun rendu d'annonces inter-agent intégré.
- Causes secondaires compatibles avec les disparitions "au bout d'un moment": les annonces sont éphémères/non persistées; le Work state se réhydrate/rafraîchit via read-model, mais le contenu `agentAnnouncement` n'est ni rejoué ni reconstruit après remount/reconnexion/perte d'événement. Busy peut donc rester juste alors que le texte disparaît.
- DevFrontend: autre fragilité probable, le store d'annonces hydrate busy en seed-only; si un `busy:true` live est raté après un `false` déjà mémorisé, F3 peut diverger du Work state.
- UX validé: en vue custom, un état persistant local à la cellule doit rester visible tant que l'agent est busy sur délégation. Fallback wording: `Travaille sur une demande de {Agent}.` / `Travaille sur une demande en cours.` / `Délégation en cours.`
- Architect validé: conserver le contrat `busy = cycle de vie` / `agentAnnouncement = contenu éphémère`; rendre F3 agnostique du mode `custom` et ajouter F2 localement à `CustomAgentChatView`, sans tenter de persister/rejouer les annonces.
- Git: branche `fix/232-agent-busy-announcements-disparition` créée depuis `a51813f` et active.
- DevFrontend a livré: F3 visible aussi en mode custom; fallback F3 stable dérivé de `busyByWorkState`; état vide explicite quand busy sans texte live; `AnnouncementsPreview` requester-side avec fallback; intégration locale F2 dans `CustomAgentChatView`; stacking context custom pour laisser F3 couvrir la vue.
- DevFrontend a exécuté: `npm test -- --run src/features/announcements/AnnouncementsProvider.test.tsx src/features/layout/LayoutGrid.chat.test.tsx` => 27 tests verts; `npm run typecheck` => vert; `git diff --check -- ...` => vert.
- Réserve signalée par DevFrontend: la suite large `npm test -- --run` reste rouge hors périmètre #232 (33 tests / 6 fichiers), dont une assertion existante sur `WebAgentCell.test.tsx`.
- QA indépendant: VERT sur la branche `fix/232-agent-busy-announcements-disparition`. Commandes exécutées: `npm test -- src/features/announcements/AnnouncementsProvider.test.tsx src/features/layout/LayoutGrid.chat.test.tsx src/features/agents/CustomAgentChatView.test.tsx` => 82/82 verts; `npm run typecheck` => OK.
- Réserve QA hors périmètre: pas de scénario manuel/e2e Tauri complet; validation frontend ciblée + typecheck uniquement.