3.0 KiB
3.0 KiB
ADDED Requirements
Requirement: 缓存失败媒体必须携带下载提醒状态
系统 SHALL 为浏览器缓存失败或已知不可缓存的远程图片/视频结果记录可选警告状态,用于提示用户尽快下载保存。
Scenario: 远程媒体缓存失败
- GIVEN 图片或视频任务结果已生成远程 URL
- AND 浏览器缓存流程因跨域、网络或响应不可读而失败
- WHEN 系统更新任务结果或保存素材
- THEN 该媒体应携带缓存警告状态
- AND 警告状态应包含可展示原因和检测时间
Requirement: 素材库必须展示缓存失败角标
系统 SHALL 在素材库中为携带缓存警告或缓存状态明确为失败的图片/视频素材显示可见角标。
Scenario: 用户浏览缓存失败素材
- GIVEN 素材库中某图片或视频未能缓存到浏览器
- WHEN 用户打开素材库并看到该素材卡片
- THEN 卡片应显示“需下载”或等价语义角标
- AND 用户 hover 角标时应看到无法缓存与链接可能过期的说明
Requirement: 任务队列必须展示缓存失败角标
系统 SHALL 在任务队列完成态媒体结果中为缓存失败或缓存状态明确为错误的图片/视频显示可见角标。
Scenario: 用户查看刚完成且缓存失败的视频任务
- GIVEN 视频任务已完成并返回可预览远程 URL
- AND 该 URL 未能缓存到浏览器
- WHEN 用户查看任务队列结果卡片
- THEN 结果卡片应显示下载提醒角标
- AND hover 角标时应提示用户尽快下载保存
Requirement: 提醒判断必须与模型无关
系统 SHALL 只根据缓存结果、缓存状态或媒体对象上的缓存警告决定是否展示下载提醒,不得根据模型名、供应商名或 URL 域名硬编码判断。
Scenario: 不同模型产生相同缓存失败结果
- GIVEN 两个不同模型生成的媒体都发生浏览器缓存失败
- WHEN 用户在素材库或任务队列查看这些媒体
- THEN 两个媒体都应显示缓存失败下载提醒
- AND 提醒文案不应依赖具体模型名称
Requirement: 提醒判断不得主动批量探测跨域资源
系统 SHALL 使用已有缓存状态和任务结果元数据来决定是否展示提醒,不得在列表渲染期间对每个远程资源发起额外跨域探测请求。
Scenario: 用户打开包含大量远程素材的素材库
- GIVEN 素材库中存在大量远程图片和视频
- WHEN UI 渲染素材列表
- THEN 系统不应为了判断角标而批量 fetch 远程资源
- AND 列表渲染不应被缓存检测阻塞
Requirement: 已成功缓存的媒体不得显示缓存失败角标
系统 SHALL 对已确认缓存成功的图片/视频隐藏缓存失败下载提醒,避免误导用户。
Scenario: 用户浏览已离线缓存的素材
- GIVEN 某图片或视频已成功写入浏览器缓存
- WHEN 用户在素材库或任务队列查看该媒体
- THEN 系统不应显示缓存失败或尽快下载角标