bc89bf45c3
- direct_tool_calls.rs:新增 project_relative_path_segment 与 relativize_project_root_paths, 在 redact_absolute_path_tokens 之前把项目根目录前缀换成项目相对路径(game/src/x.ts), Windows 的 \ 与 / 两种写法都匹配、大小写不敏感、分隔符统一成 / - 项目外绝对路径继续落成 <absolute-path> 占位;只写了项目根目录本身时也按占位处理 - 删掉永远匹配不到的死代码 without_secret.replace(root, "<project-root>") (redact_absolute_path_tokens 已经把项目根目录换成 <absolute-path>,契约里的"项目相对路径"在绝对路径场景不成立) - 新增单测:tool_call_paths_become_project_relative(项目内相对路径 + 项目外占位 + 落盘不残留项目根目录)