fix: set HOME for Copilot ACP subprocesses#11285
Conversation
|
Refresh concluído em branch limpa a partir de origin/main, com cherry-pick do commit relevante e push com --force-with-lease. Validação: python -m py_compile agent/copilot_acp_client.py tests/agent/test_copilot_acp_client.py; uv run --frozen --with pytest pytest -q -o addopts='' tests/agent/test_copilot_acp_client.py. |
613b489 to
06cb98b
Compare
|
✅ Audit completed (2026-04-19)
Recommendation: MERGE — critical bug fix for Copilot ACP subprocesses. Part of batch audit: 23 PRs audited, 2 closed (absorbed), 21 refreshed |
|
🔔 Ready for maintainer review Esta PR foi validada como parte da auditoria completa de 2026-04-19. Status:
Ação necessária: Review e merge pelos mantenedores. Audit batch: 7 PRs de alto impacto validadas e prontas para merge |
Pass an explicit HOME into Copilot ACP child processes so delegated ACP runs do not fail when the ambient environment is missing HOME.
Prefer the per-profile subprocess home when available, then fall back to HOME, expanduser('~'), pwd.getpwuid(...), and /home/openclaw. Add regression tests for both profile-home preference and clean HOME fallback.
Refs NousResearch#11068.
06cb98b to
d188a08
Compare
|
Audit/update 2026-04-25:
This was part of the open-PR cleanup pass against current upstream/main. |
|
Thanks for this fix, @MestreY0d4-Uninter! Closing as the changes are already on Automated hermes-sweeper review.
No further action needed — the fix shipped. |
Summary
HOMEenv var to Copilot ACP subprocessesHOME,expanduser("~"),pwd.getpwuid(...), then/home/openclawHOMEfallbackWhy
Delegated ACP child runs can fail when the ambient environment is missing
HOME, which breaks startup paths that rely onPath.home()/expanduser().Test Plan
uv run pytest -q -o addopts='' tests/agent/test_copilot_acp_client.py tests/agent/test_auxiliary_client.py::test_resolve_provider_client_supports_copilot_acp_external_process tests/run_agent/test_run_agent.py::test_aiagent_uses_copilot_acp_clientNotes
delegate_tasksubagent environments lack$HOME, causing cascadingPath.home()failures #11068