--- issueRef: "#185" version: 14 updatedBy: {"kind":"user"} updatedAt: 1788789622659 --- 2026-08-13 - Constaté depuis Main que `.ideai/permissions.json` est déjà en `allow` global sur read/write/delete/executeBash. - DevBackend et DevFrontend ont confirmé un runtime effectif limité à `.git` + run dir + `/tmp`. - Relaunch complet de DevBackend testé: même runtime après relance, donc ce n'est pas une simple vieille session restée bloquée. - Les tests backend verrouillent actuellement que le project root ne soit PAS ajouté comme writable root pour Codex structured (`agent_lifecycle.rs`). - Vérification en cours: comparer avec un agent non-Codex pour savoir si le blocage est spécifique à Codex structured ou plus global au runtime IdeA. - Confirmation live du 2026-08-13 par DevBackend: impossible d'écrire dans `/home/anthony/Documents/Projects/IdeA` hors `.git`; writable roots effectifs = run dir agent + `.git` + `/tmp`; erreur de probe = `Read-only file system`. - Confirmation live du 2026-08-13 par DevFrontend: même verdict; writable roots effectifs = run dir agent + `.git` + `/tmp`; `findmnt -T /home/anthony/Documents/Projects/IdeA` vu `ext4 ro,...`; probe d'écriture racine projet en échec `Read-only file system`. - Décision Main: lancer maintenant le cycle du ticket sur la base de ce constat reproductible côté Dev. - Cadrage Architecture reçu: la divergence est verrouillée dans `crates/application/src/agent/lifecycle.rs` et ses tests; lot minimal = réinjecter `project.root` dans `writable_roots` structured Codex en `workspace-write`, réaligner le `SandboxPlan` OS, et mettre à jour les tests. - Décision Git reçue: branche de travail à utiliser = `fix/185-codex-structured-project-root-write` depuis `develop`; lancement demandé via worktree `/tmp` pour contourner le blocage d'écriture du root projet. - DevBackend a implémenté le fix dans le worktree `/tmp/idea-worktrees/fix-185-codex-structured-project-root-write` sans commit, avec modifications de `crates/application/src/agent/lifecycle.rs` et `crates/application/tests/agent_lifecycle.rs`. - QA du 2026-08-13: verdict VERT sur le périmètre #185 via `cargo test -p application --test agent_lifecycle codex_ -- --nocapture` (15/15 verts). Régression plus large `cargo test -p application --test agent_lifecycle -- --nocapture`: 91/92 verts, seul échec restant = `launch_conventionfile_injects_assigned_skills_in_order`, diagnostiqué hors périmètre du ticket #185. - Ticket passé en statut QA; attente des opérations Git locales (commit puis éventuel merge dans `develop`) pour figer l'état à builder dans l'AppImage. 2026-08-14 - Retour utilisateur: meme apres le fix precedent et une nouvelle AppImage, les agents n'ont toujours pas l'ecriture au root projet quand les permissions sont accordees. - Architect: cause probable complete = non-canonicalisation du `project_root` fourni a `SandboxContext` / `compile_sandbox_plan`, surtout visible en contexte AppImage/chemin non canonique. - DevBackend: aligne le `project_root` canonique entre `SandboxContext`, `writable_roots` Codex `workspace-write` et plan OS sandbox; ajoute la couverture de non-regression sur cas symlink / non-canonique. - QA 2026-08-14: tests cibles permissions verts mais branche rouge sur `launch_conventionfile_injects_assigned_skills_in_order`. - DevBackend a ensuite corrige le test de convention file pour refleter le contrat actuel des skills (`# Skills disponibles` avant la persona, ordre d'assignation, sans injecter les corps complets) ; suite locale annoncee verte, revalidation QA demandee.