--- issueRef: "#272" version: 6 updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} updatedAt: 1788802083238 --- ## Spec UX (2026-09-07) Decision: aucune nouvelle surface humaine dediee en V1. Le hot reload de plugin est un mecanisme agent-facing dans le flux inter-agent/projet; pas de page, panneau permanent ou modale de gestion plugins pour ce besoin. Emplacement minimal: cellule de l'agent du projet A, dans le flux d'activite/conversation; overlay/busy existant seulement si la recharge bloque temporairement l'usage des tools. Etats et libelles: - Detection: `Nouveaux tools détectés pour le plugin {pluginName}.` - En cours: `Rechargement du plugin {pluginName}...` avec spinner/progress indetermine discret. - Succes: `Plugin {pluginName} rechargé. Nouveaux tools disponibles.` - Aucun changement: `Plugin {pluginName} déjà à jour.` - Echec: `Impossible de recharger le plugin {pluginName}. Les anciens tools restent disponibles.` Detail court possible: `Manifest invalide`, `Plugin introuvable`, `Erreur de chargement MCP`, `Permission refusée`. Regle de continuite: ne jamais ressembler a un redemarrage. Conserver conversation, contexte agent, cellule, historique et anciens tools si echec. Frontend attendu seulement si Architect/DevBackend exposent un event ou gateway utile: feedback dans surfaces existantes + eventuel refresh ciblé du runtime plugin; pas de nouvelle navigation. ## Decision DevFrontend (2026-09-07) Aucun changement frontend requis pour la V1 de #272. Raison: - `idea_plugin_reload` fonctionne dans le flux agent existant. - La reconciliation MCP est terminee avant la reponse du tool. - Le resultat structure fournit `changed`, hashes, statuts MCP et warnings/erreurs, suffisant comme feedback agent-facing. - Aucune surface d'administration plugin n'est necessaire selon UX. Limite assumee: - Les contributions UI React des plugins (menus, layouts, commandes runtime) restent chargees une fois par session par `PluginRuntimeProvider` et ne sont pas rafraichies apres `PluginReloaded` en V1. - Cette limite n'affecte pas les tools MCP agent-facing; leur hot reload est gere cote backend. Fichiers touches: aucun. Commit: aucun. Branche `feature/269-frontend` propre. Tests DevFrontend: - `npm test -- --run src/features/plugins/plugins.test.tsx src/plugins/runtime/loader.test.ts` => 31 tests reussis, 2 fichiers reussis.