1.4 KiB
1.4 KiB
实施计划 — 服务器全选筛选 + 脚本失败分组/CSV
日期: 2026-06-08
设计: docs/design/specs/2026-06-08-servers-select-all-script-exec-export-design.md
涉及文件
| 文件 | 变更 |
|---|---|
frontend/src/utils/csvExport.ts |
新建:BOM CSV 构建与下载 |
frontend/src/utils/execDetailGrouping.ts |
新建:错误键归一化、失败分组 |
frontend/src/pages/ServersPage.vue |
全选筛选、全选本组、筛选变更清选择 |
frontend/src/pages/ScriptsPage.vue |
分组视图、导出 CSV |
tests/test_exec_detail_grouping.py |
可选:若纯 TS 则 frontend vitest 或 TS 单测脚本 |
步骤
- 抽取
csvExport.ts,ServersPage 导出可后续复用(本 PR 仅 Scripts 必用)。 ServersPage:分类 Chip 行下增加「全选筛选结果」;批量栏保留;group 视图 panel 标题加 toggle。ScriptsPage:详情区增加 列表|分组 toggle + 导出按钮;分组用v-expansion-panels。watch筛选清空选择。bash scripts/local_verify.sh+ 前端 build。- changelog + audit。
测试要点
- 本地 mock:分组函数单元测试(Node/ts 或 pytest 不适用 — 用 vitest 若已配置,否则 manual + local_verify)。
- 手动:
#/servers选分类 → 全选 → 数量;#/scripts打开历史失败详情 → 分组 + CSV。
回滚
- 纯前端:回滚 commit +
deploy/deploy-frontend.sh,无需 DB 迁移。