Files
EvoScientist-Multi/EvoScientist
ouyangbo befdb17e0b
Build / build (push) Has been cancelled
Docker / build (push) Has been cancelled
Lint / ruff (push) Has been cancelled
Test / pytest (ubuntu-latest, 3.11) (push) Has been cancelled
Test / pytest (ubuntu-latest, 3.12) (push) Has been cancelled
Test / pytest (windows-latest, 3.11) (push) Has been cancelled
Test / pytest (windows-latest, 3.12) (push) Has been cancelled
修复命令执行工具在深度工作区路径下不可用:AF_UNIX socket 超长
现象(24 服 evosci-prod):上传与 write_file 正常,但 execute(命令执行)整体失败,
报 'Failed to create bridge sockets after 5 attempts';模型因此无法 mkdir,写 output 目录失败。

根因:沙箱网络桥(@anthropic-ai/sandbox-runtime)在 os.tmpdir() 下创建
claude-http-<16hex>.sock / claude-socks-<16hex>.sock(长名 33 字符),而命令执行的
临时目录原为 <会话 runtime>/tmp/<exec_id>,其 TMPDIR 指向
/workspace/.evoscientist/conversations/<uuid>/runtime/tmp/<exec>/tmp —— 桥 socket 全路径
115~118 字节,超过 Linux AF_UNIX sun_path 上限 107 → bind 报 AF_UNIX path too long →
重试 5 次后失败 → 命令执行工具不可用。

修复:命令执行临时目录改用固定短根 /tmp/evosci(新增 _short_command_tmp_root(),
不可写时回退系统临时目录;沙箱 allowWrite 本就包含 command_tmp,权限模型不变)。
桥 socket 全路径降到 62 字节,余量充足。

验证:服务器容器内 assert_native_sandbox_ready() 通过(改前该路径必然失败);
容器内文件 md5 与本地一致。
2026-09-14 19:44:01 +08:00
..
2026-09-03 06:55:56 +08:00
2026-09-03 06:55:56 +08:00
2026-07-14 22:07:14 +08:00
2026-07-14 22:07:14 +08:00