seaislee1209 10994df952
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 4m15s
fix: v0.19.4 生成页往上翻加载历史时不再跳到底部
现象: 用户往上翻看历史, 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>
2026-04-24 20:08:09 +08:00
2026-03-13 10:03:12 +08:00
2026-03-13 10:03:12 +08:00
2026-04-04 14:04:53 +08:00
2026-04-04 10:15:23 +08:00
2026-04-04 10:15:23 +08:00
Description
火山视频生成
96 MiB
Languages
TypeScript 51.6%
Python 27.3%
HTML 11.1%
CSS 9.9%
Dockerfile 0.1%