Commit Graph

896 Commits

Author SHA1 Message Date
e12b8f6b0e merge(layout): retrait des affichages Busy et Cancel de la cellule agent — #277 (QA verte: 25/25 tests LayoutGrid ciblés ré-exécutés avant merge; branche fix/277-agent-cell-busy-cancel) 2026-09-08 12:14:36 +02:00
bf9ec9b358 fix(layout): retirer les affichages Busy et Cancel de la cellule agent au lancement sur une tâche — #277 (retrait badge Busy, bouton Cancel/interruptCurrentTurn et layer z turnActions; états inbox/tâches de fond et composer busy préservés; QA verte ré-exécutée: 25/25 tests LayoutGrid cellControlsLayering/chat) 2026-09-08 12:14:30 +02:00
fc3d124574 feat(cli): historique de messages navigable haut/bas dans la CLI custom + contrôles de cellule visibles pendant busy — persistance localStorage du transcript custom (CustomAgentChatView), layering des contrôles sous l'overlay busy (LayoutGrid), bump pointeur IdeaSDK (docs plugin minimal + hot reload) (QA verte: 65 tests CustomAgentChatView, 25 tests LayoutGrid chat/layering, npm build frontend OK) 2026-09-08 09:39:35 +02:00
154728b828 merge(agents): writer unique du contexte projet global configurable par agent — #276 (QA verte: cargo fmt --check, tests cibles application/app-tauri/infrastructure/backend, cargo check backend/app-tauri, npm typecheck, 69/69 tests frontend agents/adapters; arbitrage versionnage: .ideai/CONTEXT.md ignore, mcp-tool-permissions.json de-track) 2026-09-07 22:49:34 +02:00
68b96e7b55 chore(tickets): sync store local — cycle #276 writer du contexte global (branche feature/276-orchestrator-context-writer, QA verte) + reliquats lots #269-#275, note memory plugin hot reload, permissions systeme agent Main 2026-09-07 22:49:29 +02:00
ee6f6531ea chore(gitignore): ignore le contexte global .ideai/CONTEXT.md (runtime last-writer-wins, writer unique #276 — le durable partage vit dans CLAUDE.md/memory versionnes) et de-track mcp-tool-permissions.json deja ignore mais encore suivi 2026-09-07 22:49:23 +02:00
cb5196fd69 feat(agents): role orchestrateur du contexte global expose et configurable par agent — isOrchestrator distinct des permissions MCP, DTO update_project_orchestrator (terminologie wire legacy conservee), refus idea_context_update explicite avec writer effectif + orientation idea_context_propose, surface AgentsPanel + adaptateurs frontend — #276 (QA verte: cargo fmt/check, tests cibles application/app-tauri/infrastructure/backend, npm typecheck, 69/69 tests frontend agents/adapters) 2026-09-07 22:49:12 +02:00
ad2c6b4354 merge(plugins): hot reload des plugins sans relancer IdeA — use case ReloadPlugin + tools MCP d'administration plugin agent-facing + evenement wire plugin_reloaded — #269/#271 (QA verte #273: 96 tests cibles verts, app-tauri compile; #272 sans code V1 — surface agent-facing uniquement, UX close) 2026-09-07 19:29:29 +02:00
805b1b4d0d feat(plugins): hot reload des plugins sans relancer IdeA — use case ReloadPlugin (invalidation registry/catalogue, resultat hashes+changed), tools MCP d'administration plugin agent-facing (mcp/plugins.rs + PluginToolProvider), evenement domaine plugin_reloaded relaye sur le wire (dto/events), exposition openai_tools rafraichie, wiring app-tauri — #271/#269 (QA verte #273: application 32, mcp_server 38, openai_tools 10, plugin_install_load 5, plugin 10, wire 1 — 96 tests ciblés; app-tauri compile sans desktop runtime) 2026-09-07 19:29:25 +02:00
8d2be75f8f chore(gitignore): ignore les backups AppImage .old-* à la racine (suite remplacement 0.3.0 #267) 2026-09-07 18:46:54 +02:00
664a051dca merge(cross-project): permissions MCP inter-projets + contactable agents/templates — exposition idea_project_*, update_agent_contactable, defaultContactable persistant, fallback groupes MCP — #267 (QA verte; AppImage 0.3.0 reconstruite, racine remplacée, ancienne sauvegardée hors git; #268 clôturé doublon) 2026-09-07 18:13:49 +02:00
ab30db122a chore(tickets): synchro store local — cycle #267 QA verte (carnet complet: implémentation, tests, build AppImage 0.3.0 + remplacement racine) ; clôture #268 en doublon de #267 ; index/counter 2026-09-07 18:13:42 +02:00
f6101a8249 fix(permissions): tools MCP inter-projets exposés (idea_project_*) + contactable agent/template persisté — update_agent_contactable (application/web-server/app-tauri), defaultContactable TemplateEditor save/reopen, groupes MCP 'IdeA inter-projets' avec fallback, permissions agent Contactable — #267 (QA verte) 2026-09-07 18:13:27 +02:00
9266d121cd merge(tickets): synchro store post-livraison cross-project — clôtures #260/#265, diagnostic #266 2026-09-07 17:07:56 +02:00
5f73220219 chore(tickets): clôture du cycle cross-project — #260/#265 passent closed après QA verte et AppImage, création+clôture du diagnostic #266 (Codex 5.6 headless/custom CLI vs TUI, sans code prod), index/counter 2026-09-07 17:07:56 +02:00
e11774ff71 merge(cross-project): agents inter-projets — discovery MCP idea_project_*, permissions contactables agents/templates, ask/cancel par agentId résolu (#260–#264, QA verte; build AppImage #265 à suivre) 2026-09-07 16:55:46 +02:00
5d7ab903fe chore(tickets): synchro du store local — cycle cross-project #260–#265 (cadrage/architecture/backend/UI/QA), carnets #117/#155/#185/#196/#243/#259, contextes agents, index/counter 2026-09-07 16:55:37 +02:00
3513e90101 fix(templates): default_contactable toujours sérialisé (idea_template_update retourne false au lieu de Null) + fixture app-tauri adaptée — #264 (QA verte) 2026-09-07 16:55:37 +02:00
032fbaeeef fix(cross-project): ask/cancel inter-projets routent par agentId résolu, plus par nom — agents homonymes désambiguïsés par projectId+agentId, tests ask/cancel names_collide — #260/#263 (QA verte) 2026-09-07 16:55:37 +02:00
b0f8fe4495 merge(cross-project): intègre le frontend #260 — surface UI permissions contactables (pré-QA) 2026-09-07 16:31:30 +02:00
530ce0193f merge(cross-project): intègre le backend #260 — tools MCP inter-projets + permissions contactables dans les templates (pré-QA) 2026-09-07 16:31:30 +02:00
8496507c09 feat(cross-project): surface UI des permissions contactables — PermissionsPanel et TemplateEditor exposent contactable/default_contactable, alignement httpInvoker — #260 (typecheck + 48 tests verts, QA en attente) 2026-09-07 16:31:22 +02:00
98954986a7 feat(cross-project): découverte et contact inter-projets — tools MCP idea_project_{list,read_context,list_agents,ask_agent,cancel_agent}, permission contactable par agent + default_contactable persistée dans les templates, routage orchestrator par projectId+agentId — #260 (tests ciblés verts, QA en attente) 2026-09-07 16:31:14 +02:00
d7b24ad183 chore(tickets): synchro du store local — création #258, #259, carnet #257 2026-09-03 14:32:03 +02:00
cd8bca9283 merge(templates): permissions des templates persistantes après save/reopen — #259 (QA verte) 2026-09-03 14:32:03 +02:00
4d34adeab5 fix(templates): les permissions des templates survivent à la sauvegarde/réouverture — create/update_template envoient defaultSystemPermissions (alias DTO backend) et les réponses list/create/update sont normalisées (defaultSystemPermissions/defaultMcpToolPermissions → clés frontend) via templateNormalization — #259 (QA verte) 2026-09-03 14:31:57 +02:00
580977faf0 merge(custom-cli): le bouton stop annule le travail courant et cascade l'annulation aux agents délégués sans fermer les sessions structurées — #257 (QA verte) 2026-08-28 22:57:39 +02:00
588914c83e chore(tickets): synchro du store local — création #256 (Rebuild AppImage) + #257 (stop custom CLI), clôture #255 ; dérive résiduelle #254 2026-08-28 22:57:32 +02:00
1aabc3d702 fix(custom-cli): le bouton Stop annule le tour courant sans fermer la session et cascade l'annulation aux agents délégués — stop_agent suit l'arbre des dépendances actives (cancel_current_turn + préemption runtime + enfants d'exécution), TurnCancel tue le process du tour en cours, autorisation requester/sous-arbre sur idea_stop_agent, fixtures DTO runtime_state/node_id alignées — #257 (QA verte) 2026-08-28 22:57:32 +02:00
9505a3305d merge(opencode): délégations idea_ask_agent fiables cross-project — tours headless épinglés au project root (--dir) + retry frais si une reprise de session perd le Final — #255 (QA verte) 2026-08-24 13:12:02 +02:00
6294cebba0 chore(tickets): synchro du store local — création #255 (bug OpenCode idea_ask_agent cross-project / Final manquant) + dérive résiduelle du store: statut #254 qa 2026-08-24 13:12:02 +02:00
8bea678fc2 fix(opencode): les tours headless sont épinglés au project root via --dir et une reprise sans Final retente un tour frais — idea_ask_agent ne rattache plus la session OpenCode d'un autre projet ni ne perd le Final — #255 (QA verte) 2026-08-24 13:11:49 +02:00
778b4a601d merge(opencode): rendez-vous inter-agents stabilisés — le Final textuel exploitable est capturé même quand l'événement terminal du tour porte un autre messageID — #254 (QA verte) 2026-08-24 12:21:08 +02:00
44a2fc3cfe chore(tickets): synchro du store local — création #254 (rendez-vous OpenCode/GLM NoReply sporadique) + #244 passage en QA (validation live v0.35.0) 2026-08-24 12:21:05 +02:00
b6238f002e fix(opencode): le Final textuel exploitable survit au changement de messageID du tour — sélection du message courant par priorité (texte non vide > erreur tardive > step/tool) élimine les NoReply sporadiques sur rendez-vous structurés — #254 (QA verte) 2026-08-24 12:21:02 +02:00
7f445cbd6d merge(templates): permissions MCP des templates persistées via la clé frontend mcpToolPermissions — #244 (QA verte) 2026-08-24 11:46:25 +02:00
a6a97fdd39 chore(tickets): synchro du store local — cycle #244 DTO permissions templates (QA verte) + #157 passage en QA après validation live v0.34.0 2026-08-24 11:46:19 +02:00
69129a95ad fix(templates): mcpToolPermissions persisté via create/update_template — désérialisation par alias préférés (mcpToolPermissions > defaultMcpToolPermissions > defaultMcpToolPolicy) sur les DTO Create/UpdateTemplateRequestDto — #244 (QA verte) 2026-08-24 11:46:14 +02:00
592f248762 merge(custom-cli): progress/tools restaurés dès la 2e sollicitation quand le provider réutilise le même progressId — #157 (QA verte) 2026-08-24 09:43:33 +02:00
6b57addd4e chore(tickets): synchro du store local — carnet #157 itération 5 (régression progressId réutilisé, QA verte) + reliquat clôture #253 2026-08-24 09:43:26 +02:00
4db264ea8c fix(custom-cli): cartes progress/tools visibles dès la 2e sollicitation malgré la réutilisation du progressId — la clé d'upsert borne le progressId au scope du tour au lieu d'un dédup global sur l'historique — #157 (QA verte) 2026-08-24 09:43:20 +02:00
d9af4b5630 merge(opencode): suite de tests fiable en exécution parallèle — #253 (QA verte) 2026-08-24 08:19:49 +02:00
c05b671149 chore(tickets): synchro du store local — carnet et statut #253 2026-08-24 08:19:41 +02:00
cd70a3c61b test(opencode): fiabilisation de la suite en parallèle — écriture atomique des fixtures, gates par fichier au lieu de sleep, runtime dédié par test, timeout 5s — #253 (QA verte) 2026-08-24 08:19:41 +02:00
f303cc1878 chore(tickets): synchro du store local — création #253, carnet #252 2026-08-24 08:08:55 +02:00
4553e5da7e merge(custom-cli): streaming progress/outils restauré sur la seconde requête au même agent — #252 (QA verte) 2026-08-24 08:05:05 +02:00
6becdf26bd chore(tickets): synchro du store local — carnet et statut #252 2026-08-24 08:04:49 +02:00
23c47eac96 test(custom-cli): tests à deux callbacks couvrant le streaming progress/outils sur la seconde requête au même agent — #252 (QA verte) 2026-08-24 08:04:49 +02:00
d553d137ea fix(custom-cli): progression et messages d'outils restaurés au second tour — le projecteur ne retient plus les events de progress après le premier message, seuls Text/Error restent bufferisés — #252 (QA verte) 2026-08-24 08:04:49 +02:00
1f14217032 chore(tickets): synchro du store local — création #248–#252, carnets #247 2026-08-24 07:53:56 +02:00