1.7 KiB
1.7 KiB
issueRef, version, updatedBy, updatedAt
| issueRef | version | updatedBy | updatedAt | ||||
|---|---|---|---|---|---|---|---|
| #255 | 5 |
|
1787569961595 |
Cause racine confirmée côté chemin headless OpenCode de idea_ask_agent.
Constat:
- Le run headless OpenCode était lancé depuis le run dir isolé sans
--dir <project_root>; une délégation pouvait donc s’exécuter hors du project root attendu. - En reprise
--session, OpenCode peut aussi sortir sans final JSON/textuel exploitable ; cela se manifestait côté Main parfinished without a structured Final response. - Le symptôme ne concernait pas la cellule visible de l’agent, ce qui isolait le bug au chemin de délégation headless.
Fix livré:
crates/infrastructure/src/session/factory.rspasse désormaisctx.project_rootàOpenCodeSession.crates/infrastructure/src/session/opencode.rsajoute--dir <project_root>à chaqueopencode run.- En cas de reprise
--sessionsans final exploitable, un retry unique est tenté en session fraîche, borné au même project root. - Tests ajoutés:
send_passes_project_root_as_opencode_dir_without_changing_process_cwdetresumed_session_without_final_retries_once_as_fresh_project_scoped_run.
Validation:
- QA verte le 2026-08-24 sur
cargo test -p infrastructure session::opencode -- --test-threads=1(25 tests OK). - Limite restante: pas d’e2e live OpenCode inter-projets exécutée contre un binaire/provider externe durant ce cycle.
Git:
- Branche de travail:
fix/255-opencode-cross-project-reattach-final. - Commits/merge locaux annoncés par Git:
8bea678(fix),6294ceb(chore tickets), merge9505a33dansdevelop. - Des changements hors sujet sont restés hors commit (
.ideai/tickets/254/*,scripts/).