Files
IdeaSDK/.ideai/memory/codex-network-access-config-fix.md

2.4 KiB

name, description, metadata
name description metadata
codex-network-access-config-fix memory note codex-network-access-config-fix
type
project

Correctif accès réseau Codex via sandbox_workspace_write.network_access

Le 2026-07-26, le diagnostic live a montré qu'un agent Codex lancé par IdeA échouait sur curl même avec IP forcée. La cause n'était pas seulement DNS ni une session à relancer : Codex CLI 0.145 attend la configuration officielle sandbox_workspace_write.network_access=true pour autoriser le réseau dans workspace-write.

Correctif implémenté et validé par QA dans les sources :

  • Projection Codex $CODEX_HOME/config.toml : gérer [sandbox_workspace_write] network_access = true/false via MergeToml, pour éviter un stale true.
  • codex exec structuré : passer -c sandbox_workspace_write.network_access=<bool> quand la policy est connue.
  • La permission système IdeA reste séparée des permissions fichiers/bash : seul NetworkPolicy::Allow active network_access=true; Deny, Ask et None donnent false.
  • L'env CODEX_SANDBOX_NETWORK_DISABLED est encore upserté comme garde anti-héritage stale, mais ce n'est plus le mécanisme principal.

Fichiers principaux :

  • crates/infrastructure/src/permission/codex.rs
  • crates/domain/src/ports.rs
  • crates/application/src/agent/lifecycle.rs
  • crates/infrastructure/src/session/codex.rs
  • crates/application/src/ticket_assistant.rs

Validation QA verte :

  • cargo test -p infrastructure permission::codex
  • cargo test -p infrastructure codex_
  • cargo test -p application --test agent_lifecycle codex_
  • cargo test -p application --test ticket_assistant codex_
  • cargo test -p domain

Build réalisé :

  • npm --prefix frontend run build : vert.
  • tauri build --bundles appimage : compilation release OK, mais bundling linuxdeploy a échoué car appimagetool tentait de télécharger le runtime sans réseau.
  • Contournement appliqué : appimagetool --runtime-file /home/anthony/.cache/tauri/runtime-x86_64 ....
  • AppImage générée : target/release/bundle/appimage/IdeA_0.3.0_amd64.AppImage, SHA-256 08d74dfe950312f968f3fe5646d747f2ac6fa25f2a523a83825182f2809e2aa8.

Validation live restante obligatoire : relancer IdeA depuis cette nouvelle AppImage, lancer un agent Codex frais avec network: allow, puis exécuter un vrai curl. La session Codex déjà active ne peut pas prouver le fix car elle a été lancée avant ces nouveaux arguments/config.