---
issueRef: "#4"
version: 9
updatedBy: {"kind":"user"}
updatedAt: 1783437430509
---
## 🔄 REDÉMARRAGE DE ZÉRO (2026-07-04) — décision utilisateur

TOUT le travail #4 précédent (sur base canonique/main) est ABANDONNÉ comme ligne de livraison. Raison : l'utilisateur a réaligné main = develop = feature/background-tasks-first-class (ebd992e, base PRÉ-canonique de #1). Le moteur de conversation « canonique » (spawn_turn/AgentTurnEvent/agentBusyChanged) sur lequel reposait l'ancien #4 n'est PLUS sur main/develop. On refait #4 de zéro sur la base develop.

BRANCHE DE TRAVAIL : `feature/agent-live-announcements` (créée depuis develop ebd992e).

BRANCHES SUPPRIMÉES (obsolètes) : feature/announcements-canonical, feature/inter-agent-announcements.
FILETS DE RÉCUPÉRATION (si on veut repiquer du code) :
- backup/announcements-work-20260704 (691b2ce) = ancien #4 complet (backend B0-B3 + frontend F1/F2/F3 recâblé busy + tests).
- backup/inter-agent-announcements-71d307d (71d307d) = backend annonces d'origine.
- backup/main-canonical-20260704 (3cff2b1) = moteur canonique + releases.

OBJECTIF PRODUIT (inchangé, reconfirmé utilisateur) : affichage live sur la cellule d'un agent de ce qu'il raconte quand un AUTRE agent le sollicite via idea_ask_agent. Overlay sur la cellule CIBLE (« un agent est en train de lui parler » + annonces défilantes), monté quand la cible est busy, retiré à l'idle. Preview côté DEMANDEUR près de la liste d'agents, filtré par ticket + requester==self.

⚠️ ATTENTION base develop : moteur « batch » (run_turn), PAS le canonique. À cadrer par Architect : quels signaux live develop émet-il déjà (annonces intermédiaires ? busy/idle par agent ? l'ancien #4 utilisait agentBusyChanged + read-model agents[].busy — existent-ils sur develop ?), et que faut-il (ré)implémenter côté backend pour que les annonces soient LIVE (pas flushées en fin de tour). Réutiliser les composants frontend depuis backup/announcements-work-20260704 si le contrat de signaux le permet.

## RESTE À FAIRE (cycle complet sur base develop)
1. [EN COURS] Architect : cadrage from-scratch sur base develop (signaux live disponibles + à créer, contrat Announcement/Final, plan B/F, réutilisabilité du code sauvegardé).
2. Git : branche de travail = feature/agent-live-announcements (FAIT).
3. DevBackend : mécanisme annonces/Final + signaux live sur moteur develop.
4. DevFrontend : F1 store + F2 preview demandeur + F3 overlay cible.
5. QA : reproduire le déclenchement inter-agent + constater overlay/preview live + fermeture à l'idle.