# 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_v2` rsync 目标路径
- `remote_path_validation.py` 改为复用上述工具，并导出 `remote_join`
- `asyncssh_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.py`
- `server/infrastructure/ssh/asyncssh_pool.py`
- `server/api/servers.py`
- `server/api/sync_v2.py`
- `tests/test_posix_paths.py`（新）

## 迁移 / 重启

- 需重启 `nexus` 后端；前端无变更

## 验证

```bash
pytest tests/test_posix_paths.py -q
ruff check server/utils/posix_paths.py server/api/sync_v2.py
python -c "import server.main"
```
