Files
Nexus/docs/audit/2026-06-08-servers-select-all-script-failure-groups.md
T

44 lines
1.3 KiB
Markdown
Raw Normal View History

# Audit — 2026-06-08 服务器全选筛选 + 脚本失败分组
**日期**: 2026-06-08
**范围**: 纯前端 · 无后端变更
**Changelog**: `docs/changelog/2026-06-08-servers-select-all-script-failure-groups.md`
## 变更概要
| 模块 | 文件 |
|------|------|
| ServersPage | `frontend/src/pages/ServersPage.vue` |
| ScriptsPage | `frontend/src/pages/ScriptsPage.vue` |
| 分组工具 | `frontend/src/utils/execDetailGrouping.ts` |
| 单测 | `tests/test_exec_detail_grouping.py` |
| 构建入口 | `web/app/index.html`Docker 镜像内 vite build 同步) |
## 安全
| 项 | 结论 |
|----|------|
| 新 API | 无 |
| 鉴权 | 沿用 JWT;全选仍走既有 `/servers/` 与批量端点 |
| 敏感数据 | 复制清单含错误摘要,不含批量完整 stderr 导出;与单行复制等价 |
| XSS | 分组/复制均为已有字段文本,无 `v-html` |
## 性能
- 全选 364 台:`fetchPagePerPage` 多页 GET(200/页),与分页「全部」相同负载。
- 分组为客户端 computed,无额外请求。
## 回滚
```bash
git revert <commit>
cd frontend && npx vite build && bash deploy/deploy-frontend.sh
```
## 验收清单
- [ ] 分类筛选后全选台数 = Chip 计数
- [ ] 改搜索/排序/分类后选择清空
- [ ] 失败详情「按错误分组」同类 SSH 超时合并
- [ ] 「复制失败清单」剪贴板内容正确