vdi-cloud/docs/cloud-task-history-20261111.md

29 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 执行任务历史查询与 CSV 导出(2026-11-11)
已部署本机 `http://127.0.0.1:5182/tasks` →「执行任务」,使用真实 PostgreSQL 数据。
## 使用与接口
支持关键词、操作者包含、动作、类型、状态、提交时间范围;每页 20 条,详情可打开旧任务,并保留既有核对、诊断入口。不选起始时间可查全部历史,不再截取最近 1000 条。查询固定截止时间,任务状态随平台刷新,新增任务需重新查询;导出使用已应用条件,修改草稿后不会混用。查询失败清空旧结果并禁用导出。
- `GET /api/v1/tasks`:SQL 分页,默认每页 20、最多 100 条。可选 `keyword/actor/action/kind/status/targetId/from/to/active`;关键词覆盖任务、目标、操作者、动作和结果。`%/_/反斜杠` 按普通文字匹配,时间使用含时区 RFC3339,边界包含两端。
- `active=true` 查询全部 queued/running/timeout。全局刷新只取最近 100 条与分页拉全的未结束任务,旧任务继续阻止冲突操作,避免每 5 秒下载完整历史。
- `GET /api/v1/tasks/export`:共享筛选,忽略分页,UTF-8 BOM/CRLF,10 列,时间为 UTC。成功生成记 `export_tasks` 审计;不包含 provider_ref、幂等键或原始任务参数。公式单元格加单引号。最多 10000 条,超过返回 413 并提示缩小范围;不会静默截断。
三角色均可查询和导出,未登录返回 401。列表总数和记录使用同一数据库快照,稳定排序 `created_at DESC,id DESC`。固定截止时间可避免正常追加造成翻页移动;历史时间回填和状态筛选结果变化仍可能改变后续页。没有新增历史清理或归档。
## 验收结果
- 独立 PostgreSQL Go 全量及 vet 通过;专项覆盖 1052 条旧任务分页、旧活动任务、组合筛选、字面通配符、导出 10000/10001 条边界、权限和公式防护。
- 前端 lint、类型检查、3 项单元测试、生产构建通过。任务历史新增 4 项浏览器用例通过;原有快照、规格、批量电源和审计 26 项回归通过。
- 真实环境 51 条任务按每页 2 条查询,共 26 页;CSV 的 51 个任务标识及顺序与完整分页一致。组合筛选、active、401 和非法条件拒绝、导出审计通过。
- 真实深浅主题、1440/390px 页面、任务详情与 CSV 下载通过,无脚本错误、失败 API 或前端业务写请求。账号密码指纹、用户授权、终端身份及配置、告警规则、VM 配置和电源状态均与部署前一致,任务数仍为 51。
证据见 [真实接口核验](evidence/cloud-task-history-20261111/live-verification.json) 与 [真实浏览器核验](evidence/cloud-task-history-20261111/browser-verification.json)。独立打包以已部署 GPU 功能为基线,保留既有 GPU 配置;基线二进制 SHA-256 与部署前一致:`913056171c513393c24d15abfabcd7efd142a0d0bef3db6ae934f7ffa2cd8a8a`。
## 回退与范围
无数据库结构变更。部署前备份 `.local/live/backups/before-task-history-20261111-145521.dump`,原镜像标签 `before-task-history-20261111-145521`。回退前先核对后续部署,再将原 API/console 镜像打回服务名,使用 `.local/task-history-review/compose.release.yml`、原环境文件、`--project-directory deploy` 执行 `up -d --no-build --no-deps api console`,不删除业务卷。
专用测试 VM、Windows 副本、存储和真实还原仍按用户要求暂缓。此项不执行 VM、磁盘、GPU 或盒子控制命令。外部归档、防篡改仍待后续。