All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 4m15s
现象: 用户往上翻看历史, loadMore 往 tasks 数组头部 prepend 老任务后, 页面自动跳到最底, 打断浏览。 根因 VideoGenerationPage.tsx useEffect 依赖 tasks.length, 只要数量 增加就 scrollTo(scrollHeight)。这个逻辑本意是"新任务生成 push 到 末尾时滚到底", 但区分不出"头部 prepend" vs "尾部 push", 于是 loadMore 也触发了滚底。handleScroll 里的 anchor(scrollTop += diff) 本来会做视觉保位, 但 useEffect 的 scrollTo smooth 抢先/盖过它。 修复 改成比末尾 task 的 id 是否变化 (prevLastIdRef) 而非 length - 新任务 push 到末尾 → 末尾 id 变 → 滚到底 ✅ - 头部加载历史 → 末尾 id 不变 → 保位置 ✅ - 轮询更新任务属性(如生成完成) → 数组内容变但末尾 id 不变 → 不打扰 ✅ - 删除某条任务(非末尾) → 末尾 id 不变 → 不滚 ✅ - 只有"末尾多了新东西"这一种情况才滚底, 符合用户直觉 验证 vitest 71 failed 全部为 v0.18.x 以来的 preexisting 失败 (phase2/phase3 路径解析问题), stash 前后对比完全一致, 本次改动 零新增回归。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
火山视频生成
Languages
TypeScript
51.6%
Python
27.3%
HTML
11.1%
CSS
9.9%
Dockerfile
0.1%