3.8 KiB
3.8 KiB
issueRef, version, updatedBy, updatedAt
| issueRef | version | updatedBy | updatedAt | ||||
|---|---|---|---|---|---|---|---|
| #267 | 5 |
|
1788797669968 |
Ticket #267 - reprise orchestrée par Main
Demande utilisateur: corriger le parcours complet permissions cross-project agents/templates et reconstruire/remplacer l'AppImage visible.
Constats initiaux:
- Les tools MCP inter-projets ne sont pas exposés correctement dans l'éditeur MCP.
- La case
Contactable depuis d'autres projetsdans les templates est visible mais ne persiste pas après save/reopen. - Les permissions d'agent projet doivent permettre la configuration des tools MCP et de la contactabilité.
- Deux AppImages
0.3.0existent; la racine contenait une ancienne AppImage du 2026-08-17.
Arbitrage UX:
- Groupe MCP attendu:
IdeA inter-projets. - Tools/libellés:
idea_project_ask_agent=Demander à un agent d'un autre projet;idea_project_cancel_agent=Annuler une demande inter-projet. - Contactabilité et permissions MCP restent deux réglages distincts: être appelable vs pouvoir appeler.
- Save/reopen doit conserver les états cochés/décochés.
Arbitrage Architecture:
- MCP tool groups: frontend pur.
- Template.defaultContactable: frontend pur si DTO/adapters existants sont câblés correctement; ne pas sérialiser dans
defaultSystemPermissions. - Agent.contactable est source de vérité agent projet. Backend devait fournir
update_agent_contactable. - Les tools catalogués mais non groupés doivent rester visibles via fallback.
Implémentation:
- DevBackend a ajouté le use case/DTO/commande Tauri/route web
update_agent_contactableet tests associés. - DevFrontend a modifié adapters/domain/ports/panels/tests pour exposer les tools cross-project, fallback visible,
defaultContactabletemplate séparé etAgent.contactableviaupdateAgentContactable.
Validation QA:
- Premier passage QA: code vert, ticket rouge uniquement car AppImage racine non remplacée.
- Build AppImage exécuté via skill
build-appimage:npm --prefix frontend run build, puisCARGO_HOME=/tmp/idea-cargo-home APPIMAGE_EXTRACT_AND_RUN=1 NO_STRIP=1 ../../frontend/node_modules/.bin/tauri build --bundles appimagedepuiscrates/app-tauri. - Nouvel artefact:
/home/anthony/Documents/Projects/IdeA/target/release/bundle/appimage/IdeA_0.3.0_amd64.AppImage, 118921720 bytes, mtime 2026-09-07 18:08:44 +0200, sha256770b6f59ad4c82222522da5c53a757531b91365e68bd2d33d1fe84155ca2efa0. - AppImage racine remplacée:
/home/anthony/Documents/Projects/IdeA/IdeA_0.3.0_amd64.AppImage, même taille/mtime/hash;cmproot vs target = 0. - Ancienne AppImage sauvegardée:
/home/anthony/Documents/Projects/IdeA/IdeA_0.3.0_amd64.AppImage.old-before-267-20260907180854, 118745592 bytes, mtime 2026-08-17 16:31:45 +0200, sha256e66a8a9f4a55cdfd5eb55f1ccf8681a58f5c9f08977659cf9531101500675290. - QA final: VERT.
Tests verts relevés par QA:
cargo test -p infrastructure --test mcp_server tools_list_advertises_the_idea_tools_with_schemas -- --nocapturecargo test -p infrastructure orchestrator::mcp::tools::tests -- --nocapturecargo test -p application --test agent_lifecycle update_agent_contactable -- --nocapturecargo test -p web-server web_invoke_routes_permission_commands -- --nocapturecargo test -p app-tauri --test dto_templates -- --nocapturecd frontend && npm test -- --run src/features/permissions/McpToolPermissionsPanel.test.tsx src/features/permissions/permissions.test.tsx src/features/templates/templates.test.tsx src/adapters/agent.test.ts src/adapters/http/agentGateway.test.tscd frontend && npm run typecheck
Etat Git:
- Branche préparée par Git:
fix/268-cross-project-permissions-appimage(nom historique malgré suivi #267). - Aucun commit au moment de ce carnet; Git doit décider commit/merge local.