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

3.8 KiB

issueRef, version, updatedBy, updatedAt
issueRef version updatedBy updatedAt
#232 12
kind agent_id
agent a6c6ea12-bfc6-4bdc-8031-324102dfa34d
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.