8c86b50d09
服务器页拆分未设路径列表、行内展开详情;API target_path_unset 可选过滤。 命令栏取消 Shell 语法彩色,ANSI 仅保留 xterm SSH 输出区。 Co-authored-by: Cursor <cursoragent@cursor.com>
1.9 KiB
1.9 KiB
验证 — 服务器未设路径区块 + 行内详情(2026-06-08)
自动化
| 检查 | 结果 |
|---|---|
pytest tests/test_server_target_path_filter.py -q |
12 passed |
bash scripts/local_verify.sh |
26/26 |
cd frontend && npm run build |
PASS(vue-tsc + vite) |
bash deploy/pre_deploy_check.sh |
7/7 |
单测覆盖
is_unset_target_path真值表(空、/www/wwwroot、尾斜杠、子路径)ServerRepositoryImpl.get_paginatedunset true/false + search 组合GET /api/servers/?target_path_unset=true / false / 默认三态
布局与交互(本地 build 代码审查)
| 场景 | 预期 | 结论 |
|---|---|---|
| 主表列表 | 不含 target_path 为空或 /www/wwwroot 的机器 |
PASS(显式 target_path_unset=false) |
| 未设路径卡片 | 位于连接失败列表上方,独立分页 | PASS |
| 名称点击 | 主表 / 未设路径表各展开一行紧凑详情 | PASS |
| 底部详情卡 | 已删除 detailServer 大块 UI |
PASS |
| 保存真实路径 | 从未设路径表消失 → 主表出现 | PASS(双表 refresh + clearExpandedForPathMigration) |
保存 /www/wwwroot |
从主表 → 未设路径表 | PASS |
| 分页/搜索/分类/排序 | 双表 reload + 展开态 reset | PASS |
| 30s 静默刷新 | refreshServersSilent 含 loadUnsetPathServers |
PASS |
| API 未传参 | Dashboard / Terminal 仍返回全部 | PASS(默认 None 不过滤) |
手动终验(用户)
#/servers· 确认三区:主列表 → 未设置路径服务器 → 连接失败列表- 主表点击服务器名称 · 行内展开 CPU/内存/磁盘/Agent/路径/同步日志
- 未设路径表点击名称 · 同样行内展开
- 编辑目标路径为真实目录 · 机器从未设路径表移至主表
- 编辑目标路径为
/www/wwwroot· 机器从主表移至未设路径表 #/terminal· 仍可连接未设路径机器(列表未过滤)