Fix ExecTool to block root directory paths when restrict_to_workspace is enabled

This commit is contained in:
zhangxiaoyu.york
2026-04-02 04:00:03 +08:00
committed by Xubin Ren
parent ddc9fc4fd2
commit bc2e474079
2 changed files with 11 additions and 1 deletions
+8
View File
@@ -95,6 +95,14 @@ def test_exec_extract_absolute_paths_keeps_full_windows_path() -> None:
assert paths == [r"C:\user\workspace\txt"]
def test_exec_extract_absolute_paths_captures_windows_drive_root_path() -> None:
"""Windows drive root paths like `E:\\` must be extracted for workspace guarding."""
# Note: raw strings cannot end with a single backslash.
cmd = "dir E:\\"
paths = ExecTool._extract_absolute_paths(cmd)
assert paths == ["E:\\"]
def test_exec_extract_absolute_paths_ignores_relative_posix_segments() -> None:
cmd = ".venv/bin/python script.py"
paths = ExecTool._extract_absolute_paths(cmd)