chore(tickets): clôture #242 après QA verte et merge local 5316d48

Limite résiduelle documentée au carnet: le backfill live des templates
existants n'a pas été exécuté en écriture directe (hors sandbox session);
il s'appliquera automatiquement au prochain open_project du projet.
This commit is contained in:
2026-08-23 11:00:28 +02:00
parent 5316d48f7e
commit 24c237b12a
2 changed files with 33 additions and 0 deletions

View File

@ -0,0 +1,16 @@
---
issueRef: "#242"
version: 3
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1787475419928
---
2026-08-23
- Demande: étendre les templates d’agents avec nom par défaut de l’agent, permissions système, permissions Tools MCP IdeA; enrichir les templates existants avec les valeurs des agents actuels du projet; vérifier/corriger le modèle AI par défaut lors de la création d’un agent.
- UX: ordre de formulaire validé = Nom du template, Description, Nom par défaut de l’agent, Modèle AI par défaut, Permissions système, Permissions Tools MCP IdeA. Invariant UX: la valeur affichée à la création d’agent doit être celle réellement appliquée, ou erreur explicite.
- Architect: étendre `AgentTemplate` + DTO/MCP/tools; séparer idéalement nom du template et nom d’agent par défaut; persister correctement `defaultProfileId` à la mise à jour; projeter les permissions template vers l’agent créé; ne capturer en backfill que les overrides agent explicites, sinon `None` pour préserver l’héritage projet.
- Constat technique initial: le frontend supportait `createTemplate(...defaultProfileId)` mais `updateTemplate(templateId, content)` ne persistait pas le profil ni les futurs champs; côté backend `UpdateTemplate` ne mettait à jour que `content`.
- Permissions projet constatées: `.ideai/system-permissions.json` = `projectDefault.network = allow`, pas d’override visible pour les agents courants. `.ideai/mcp-tool-permissions.json` expose un défaut projet; pas d’override visible pour les agents courants, donc permissions effectives actuelles = défaut projet.
- DevFrontend livré: contrat frontend étendu (`defaultAgentName`, `systemPermissions`, `mcpToolPermissions`, update complet du template), éditeur template enrichi, liste enrichie, flux `Create agent from template` corrigé pour préremplir nom/profil et bloquer explicitement si aucun modèle par défaut n’est disponible. Tests frontend verts.
- DevBackend livré: `AgentTemplate` étendu avec nom d’agent par défaut + permissions template; `CreateTemplate`/`UpdateTemplate`/`CreateAgentFromTemplate` étendus; DTO/MCP template tools étendus; persistance complète dans le store template; backfill best-effort codé à `open_project` pour aligner les templates existants depuis les agents du projet courant et les stores de permissions. Cause racine backend du bug modèle: `UpdateTemplate` ne mettait pas à jour `defaultProfileId`, laissant des templates avec profil stale.
- Limitation de session: le backfill n’a pas été exécuté immédiatement par écriture directe sur le store global `/home/anthony/.local/share/app.idea.ide/templates/index.json`, hors sandbox d’écriture de cette session; il est prévu pour s’appliquer au prochain `open_project`.
- En attente QA verte sur backend + frontend avant clôture/merge.