历史失败任务与自动化运行返回连续性
本轮结果
本轮继续沿用中台既有工作区视觉系统,修复两个会迫使用户重新配置或重新查找位置的中断点。
历史导出失败恢复
- 失败任务直接提供“按原范围重试”,原样沿用车辆、时间、数据类型、协议和字段,不要求用户重新填写。
- 重试成功后新任务立即进入队列;旧失败记录继续保留,便于核对故障原因和审计过程。
- 已存在相同范围的排队/执行任务时禁止重复创建,避免连续点击产生重复大任务。
- 重试中、已重新排队和再次失败都有明确按钮状态与原因反馈,任务面板仍由
historyTool=exports恢复。
自动化运行返回
- 从自动化“运行记录”进入事件详情时,事件流顶部显示来源自动化、当前事件车辆和“返回自动化”。
- 进入事件前的自动化搜索、状态、协议和选中规则全部保留在 URL 中。
- 返回后恢复到同一条自动化及其筛选结果,并清理临时事件参数;刷新或分享事件深链仍能保留返回入口。
- 移动端将来源和返回动作压成两行,详情 sheet 不遮挡入口,也不产生横向滚动。
设计基线与真实页面证据
这是现有系统内的状态连续性改动,没有生成新的概念图。历史任务面板对照已接受的 ../event-history-task-continuity-20260723/desktop-history-export.jpg,事件中心对照 ../ui-ux-20260720/desktop-alerts-implemented.png 与 ../ui-ux-20260720/mobile-alerts-implemented.png。
真实页面通过 Codex 内置 Browser 交互验收,使用显式视口覆盖得到原生 1440 × 900 和 390 × 844 截图;验收结束前已重置视口并清理全部临时页签。基线和本轮截图均使用 view_image 以原始分辨率复核。
| 状态 | 桌面 | 手机 |
|---|---|---|
| 历史失败任务恢复 | desktop-history-failed-retry.jpg | mobile-history-retry-queued.jpg |
| 自动化运行返回 | desktop-automation-run-return.jpg | mobile-automation-run-return.jpg |
五点忠实度核对
- 容器模型:历史恢复动作放在原任务卡片内部,继续使用桌面右侧面板与移动端 bottom sheet;自动化返回使用事件工作区顶部信息轨,不新增阻塞弹窗。
- 信息层级:历史面板保持“任务汇总 → 失败原因 → 恢复动作 → 固定刷新/完成”;事件页保持“来源上下文 → 筛选 → 队列 → 详情”,返回路径在进入任务时即可看见。
- 颜色语义:红色只标识失败及原因,绿色表示新任务已排队,蓝色表示主操作和来源连续性;所有状态均同时提供文字,不依赖颜色识别。
- 响应式行为:1440 × 900 与 390 × 844 均无横向溢出;移动端返回按钮高度为 42px 且位于首屏,历史重试反馈与固定操作同屏可见。
- 任务连续性:重试前后原失败证据和新任务同时存在;运行记录进入事件后 URL 保留自动化筛选与规则,返回后准确恢复并移除临时事件上下文。
首屏文案差异
- 导航、模块标题、页签、查询区和原有说明没有改写。
- 历史任务仅在失败卡片内动态增加“恢复此任务 / 按原范围重试”,成功后切换为“已重新排队”;不改变常规历史页首屏。
- 事件页仅在来自自动化运行记录时动态增加来源信息轨;普通事件流首屏完全不变。
验证结果
HistoryPage.test.tsx:29 / 29 通过,覆盖原范围重试、旧记录保留、新任务即时出现和重复提交保护。AlertsPage.test.tsx:35 / 35 通过,覆盖运行来源解析、隐藏筛选保留、事件上下文与精确返回。- 全量前端:75 个测试文件、446 / 446 项通过。
- TypeScript、Vite 生产构建、发布资产和启动恢复门禁全部通过。
- 浏览器交互验证:失败任务重试后新旧记录同时存在;自动化运行 → 精确事件 → 返回自动化后恢复搜索、状态、协议和规则选中项。
- 控制台未发现本轮业务运行错误;仅有 Semi UI
findDOMNode与 Sass@import的既有依赖弃用告警。
本轮与已接受视觉基线一致,没有发现仍需修复的交互或响应式偏差。