From 5f732202190c31430d68cbc298bfe8651b789f7d Mon Sep 17 00:00:00 2001 From: Blomios Date: Mon, 7 Sep 2026 17:07:56 +0200 Subject: [PATCH] =?UTF-8?q?chore(tickets):=20cl=C3=B4ture=20du=20cycle=20c?= =?UTF-8?q?ross-project=20=E2=80=94=20#260/#265=20passent=20closed=20apr?= =?UTF-8?q?=C3=A8s=20QA=20verte=20et=20AppImage,=20cr=C3=A9ation+cl=C3=B4t?= =?UTF-8?q?ure=20du=20diagnostic=20#266=20(Codex=205.6=20headless/custom?= =?UTF-8?q?=20CLI=20vs=20TUI,=20sans=20code=20prod),=20index/counter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .ideai/tickets/260/carnet.md | 4 ++-- .ideai/tickets/260/issue.md | 6 +++--- .ideai/tickets/265/carnet.md | 4 ++-- .ideai/tickets/265/issue.md | 6 +++--- .ideai/tickets/266/carnet.md | 41 ++++++++++++++++++++++++++++++++++++ .ideai/tickets/266/issue.md | 17 +++++++++++++++ .ideai/tickets/counter.json | 2 +- .ideai/tickets/index.json | 24 +++++++++++++++++---- 8 files changed, 89 insertions(+), 15 deletions(-) create mode 100644 .ideai/tickets/266/carnet.md create mode 100644 .ideai/tickets/266/issue.md diff --git a/.ideai/tickets/260/carnet.md b/.ideai/tickets/260/carnet.md index 21c26856..1bd54a7c 100644 --- a/.ideai/tickets/260/carnet.md +++ b/.ideai/tickets/260/carnet.md @@ -1,8 +1,8 @@ --- issueRef: "#260" -version: 8 +version: 9 updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} -updatedAt: 1788791628015 +updatedAt: 1788793170895 --- # Carnet #260 diff --git a/.ideai/tickets/260/issue.md b/.ideai/tickets/260/issue.md index 672a233a..97fe0269 100644 --- a/.ideai/tickets/260/issue.md +++ b/.ideai/tickets/260/issue.md @@ -2,7 +2,7 @@ id: "1f6e430c-d7ca-49cb-8eac-dc885aa593ce" number: 260 title: "Agents cross-project: MCP discovery, permissions et contact inter-projets" -status: "inProgress" +status: "closed" priority: "critical" sprint: null links: [] @@ -11,7 +11,7 @@ attachments: [] createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} createdAt: 1788773711834 -updatedAt: 1788791628015 -version: 8 +updatedAt: 1788793170895 +version: 9 --- Feature demandée: permettre à un agent IdeA de découvrir les projets IdeA, lire leur contexte, lister les agents explicitement contactables d’un projet avec leur contexte, puis contacter un agent d’un autre projet via MCP avec routage fiable de la réponse vers le bon agent et le bon projet. Contraintes clés: lancer un agent même si son projet n’est pas ouvert; si le projet est ouvert ensuite, l’agent doit être considéré comme déjà lancé; gérer busy/cancel/rendez-vous comme idea_ask_agent; désambiguïser les agents homonymes par projectId + agentId; exposer une permission par agent persistée aussi dans les templates. \ No newline at end of file diff --git a/.ideai/tickets/265/carnet.md b/.ideai/tickets/265/carnet.md index c46efe32..52f748c2 100644 --- a/.ideai/tickets/265/carnet.md +++ b/.ideai/tickets/265/carnet.md @@ -1,8 +1,8 @@ --- issueRef: "#265" -version: 5 +version: 6 updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} -updatedAt: 1788792738991 +updatedAt: 1788793171156 --- # Carnet #265 diff --git a/.ideai/tickets/265/issue.md b/.ideai/tickets/265/issue.md index 658ea415..86bd9ef2 100644 --- a/.ideai/tickets/265/issue.md +++ b/.ideai/tickets/265/issue.md @@ -2,7 +2,7 @@ id: "e7e283b0-e774-415f-8260-ac649dc38a32" number: 265 title: "Cross-project agents: validation QA complète et AppImage" -status: "inProgress" +status: "closed" priority: "critical" sprint: null links: [{"target":"#260","kind":"dependsOn"}] @@ -11,7 +11,7 @@ attachments: [] createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} createdAt: 1788773730479 -updatedAt: 1788792738991 -version: 5 +updatedAt: 1788793171156 +version: 6 --- Valider la feature cross-project de bout en bout: tools MCP de discovery, agents contactables, contact cross-project avec projets fermés/ouverts, homonymes, busy/cancel/routage réponse, persistence permissions agents/templates, réconciliation à l’ouverture d’un projet. Puis valider le build AppImage produit. \ No newline at end of file diff --git a/.ideai/tickets/266/carnet.md b/.ideai/tickets/266/carnet.md new file mode 100644 index 00000000..7e241850 --- /dev/null +++ b/.ideai/tickets/266/carnet.md @@ -0,0 +1,41 @@ +--- +issueRef: "#266" +version: 3 +updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} +updatedAt: 1788793585703 +--- +# Diagnostic 2026-09-07 + +Contexte: profil global `e9c0b04e-6506-498e-8a4a-f3713b87583d` (`OpenAI Codex CLI 5.6`) avec `structuredAdapter=codex` et `model="gpt-5.6"`. + +Constats locaux: +- `codex --version` => `codex-cli 0.153.4`, donc au-dessus de la version minimale officielle Codex CLI 0.144.0 pour GPT-5.6. +- Le chemin `idea_ask_agent` / custom chat headless passe par `StructuredSessionFactory` puis `CodexExecSession`. +- `StructuredSessionFactory` relaie `profile.model.clone()` à l'adapter Codex structured. +- `CodexExecSession::build_spawn_line` ajoute `-c model=` à chaque `codex exec --json`. +- Le chemin PTY IdeA ajoute lui aussi un override `-c model=` via `append_codex_pty_model_overrides`. +- Les historiques locaux des worktrees DevBackend et DevFrontend contiennent plusieurs tours `failed` avec l'erreur API exacte: `The 'gpt-5.6' model is not supported when using Codex with a ChatGPT account.` +- Les sessions TUI natives Codex dans `~/.codex/sessions` montrent `model: "gpt-5.6-sol"`, pas `gpt-5.6`. + +Constats docs officielles OpenAI: +- `gpt-5.6-sol` est l'ID modèle concret de GPT-5.6 Sol ; la page modèle indique que l'alias `gpt-5.6` route vers Sol côté API. +- La page ChatGPT/Codex indique que Codex expose GPT-5.6 Sol/Terra/Luna selon plan, et que la CLI minimale est 0.144.0. + +Cause racine probable: +- IdeA transmet au headless `codex exec` l'alias court `gpt-5.6` tel quel depuis le profil. +- Avec une auth ChatGPT account, ce chemin Codex headless rejette cet identifiant brut et demande un modèle concret supporté pour Codex, typiquement `gpt-5.6-sol` pour ce profil. +- La TUI native fonctionne car elle a déjà migré/résolu son modèle vers `gpt-5.6-sol` dans ses thread settings. IdeA ne réutilise pas cette migration native: son projector Codex ne persiste pas le modèle dans `.codex/config.toml` et les overrides CLI priment de toute façon. + +Frontière de correctif proposée: +- Ajouter une résolution de modèle Codex launchable avant les deux chemins de lancement Codex (structured/headless et PTY IdeA), au niveau application/profile resolution plutôt que dans le rendez-vous inter-agent. +- Normaliser `gpt-5.6` -> `gpt-5.6-sol` pour Codex CLI ChatGPT lorsque Sol est disponible, ou refuser avant spawn avec une erreur claire si le plan ne le permet pas. +- Mettre à jour le catalogue/matrice Codex pour exposer `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`; garder `gpt-5.6` comme alias non-launchable ou le migrer à la sauvegarde. + +Tests à prévoir si on implémente: +- Unit résolution: profil Codex `model="gpt-5.6"` produit un modèle effectif `gpt-5.6-sol`. +- Structured: `CodexExecSession` reçoit `-c model="gpt-5.6-sol"`, jamais `gpt-5.6`. +- PTY IdeA: même modèle effectif dans `append_codex_pty_model_overrides`. +- Catalogue: les variantes GPT-5.6 Sol/Terra/Luna sont listées et compatibles avec `codex-cli >= 0.144.0`. +- Régression: erreur claire avant spawn pour alias/modèle non launchable. + +Statut: diagnostic terminé. Aucun code modifié pour #266. \ No newline at end of file diff --git a/.ideai/tickets/266/issue.md b/.ideai/tickets/266/issue.md new file mode 100644 index 00000000..cc1831e2 --- /dev/null +++ b/.ideai/tickets/266/issue.md @@ -0,0 +1,17 @@ +--- +id: "e8885e22-960d-4b89-b5c3-2e35ddf7c632" +number: 266 +title: "Diagnostiquer Codex 5.6 en headless/custom CLI vs TUI native" +status: "closed" +priority: "high" +sprint: null +links: [] +agentRefs: [{"agentId":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d","role":"assigned"}] +attachments: [] +createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} +updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"} +createdAt: 1788793171188 +updatedAt: 1788793585703 +version: 3 +--- +Investigation demandée: le profil AI Codex 5.6 fonctionne en TUI native, mais échoue dans la custom CLI et via idea_ask_agent. Suspect: la version headless/structured Codex ne supporte pas ce profil ou ne passe pas les mêmes paramètres/auth que la TUI. Objectif: identifier la cause racine, comparer spawn TUI vs structured/headless, commandes/config générées, modèle transmis, auth/env, adapter Codex, et proposer le correctif. \ No newline at end of file diff --git a/.ideai/tickets/counter.json b/.ideai/tickets/counter.json index 78649f54..32bd3a58 100644 --- a/.ideai/tickets/counter.json +++ b/.ideai/tickets/counter.json @@ -1,3 +1,3 @@ { - "nextNumber": 266 + "nextNumber": 267 } \ No newline at end of file diff --git a/.ideai/tickets/index.json b/.ideai/tickets/index.json index f15bf712..a6e2b828 100644 --- a/.ideai/tickets/index.json +++ b/.ideai/tickets/index.json @@ -3511,7 +3511,7 @@ "issueRef": "#260", "path": "260", "title": "Agents cross-project: MCP discovery, permissions et contact inter-projets", - "status": "inProgress", + "status": "closed", "priority": "critical", "sprint": null, "assignedAgentIds": [ @@ -3521,7 +3521,7 @@ "kind": "agent", "agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d" }, - "updatedAt": 1788791628015 + "updatedAt": 1788793170895 }, { "issueRef": "#261", @@ -3591,7 +3591,7 @@ "issueRef": "#265", "path": "265", "title": "Cross-project agents: validation QA complète et AppImage", - "status": "inProgress", + "status": "closed", "priority": "critical", "sprint": null, "assignedAgentIds": [ @@ -3601,7 +3601,23 @@ "kind": "agent", "agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d" }, - "updatedAt": 1788792738991 + "updatedAt": 1788793171156 + }, + { + "issueRef": "#266", + "path": "266", + "title": "Diagnostiquer Codex 5.6 en headless/custom CLI vs TUI native", + "status": "closed", + "priority": "high", + "sprint": null, + "assignedAgentIds": [ + "a6c6ea12-bfc6-4bdc-8031-324102dfa34d" + ], + "createdBy": { + "kind": "agent", + "agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d" + }, + "updatedAt": 1788793585703 } ] } \ No newline at end of file