1.5 KiB
1.5 KiB
Changelog:远程路径统一 POSIX/Linux
| 项 | 内容 |
|---|---|
| 日期 | 2026-06-01 |
| 类型 | 修复 / 架构 |
| 动机 | 在 Windows 开发机上 os.path.join/dirname 会对 /www/... 远程路径产生反斜杠,导致 SSH/SFTP/压缩等失败 |
变更摘要
- 全仓库审计报告:
docs/audit/2026-06-01-posix-path-full-audit.md - 分批审查记录(7 批):
docs/audit/2026-06-01-posix-path-batch-review.md - Cursor 规则:
.cursor/rules/nexus-posix-paths.mdc - 新增
server/utils/posix_paths.py:远程与 Nexus 主机 Unix 路径的规范化、拼接、zip-slip 校验 - 第二轮:
diagnose/verify/file-diff远程目标路径、sync_engine_v2rsync 目标路径 remote_path_validation.py改为复用上述工具,并导出remote_joinasyncssh_pool、servers(workerman 检测)、sync_v2全部远程路径操作改用 POSIX API- 上传临时目录相关逻辑:字符串操作用
posix_join/posix_basename,真实 I/O 仍用os.path.realpath(Nexus 生产为 Linux) - 新增
tests/test_posix_paths.py
涉及文件
server/utils/posix_paths.py(新)server/api/remote_path_validation.pyserver/infrastructure/ssh/asyncssh_pool.pyserver/api/servers.pyserver/api/sync_v2.pytests/test_posix_paths.py(新)
迁移 / 重启
- 需重启
nexus后端;前端无变更
验证
pytest tests/test_posix_paths.py -q
ruff check server/utils/posix_paths.py server/api/sync_v2.py
python -c "import server.main"