建档、起步问题、清单打勾、天空过场和合盘按 T7 播放一次。减少动态效果时只剩淡入,没有星点和闪烁。Motion 仍按需加载,首屏 gzip 631199,相对 627046 约 +0.66%。 自测:tsc --noEmit、npm run lint(0 error)、定向测试 58 项 fail 0、npm run build(/ 仍 Static)。 Co-Authored-By: Grok (agent loop)
3.3 KiB
3.3 KiB
PROGRESS · 新用户启程四:动效(2026-10-25)
工单 #99。分支 codex/onboarding-4-motion-20261022。基线 origin/staging 352d45b2efebf3cd8278fe8ae6c9d4bb3074bf14。只做任务书 T7 动效(D6)。T1–T6 和 #105 的侧栏不重做。K2 及之后的组件库换皮没做。
结论
建档的句子和卡片、起步问题、追问、档案行和清单行,第一次出现时会轻轻上浮。按下按钮、问题卡、选项和关系标签时会轻微缩小。称呼和前两个起步问题会飞成气泡。清单每新完成一项,勾从操作位置飞向右上角胶囊,进度环走一格,胶囊轻跳一下。七项刚刚全满时,进度环处迸一次星点。出生地点确认后,天空从点击处圆形展开;星星先亮再聚拢,行星逐个点亮并从东边连线,两行字先后浮出;天空淡出时首页同时上浮。第一次打开合盘,两个头像靠拢、亮一圈光,再展开关系画像。
系统开了「减少动态效果」时,星点和圆点闪烁去掉,其余只淡入,没有位移、缩放和擦除。每段只在第一次出现时播放。除回答流式中的呼吸点外,没有无限循环。
做了什么
- 时长写在
frontend/src/lib/motion/onboarding.ts,曲线沿用已有的--ease-out和回弹。没有往全站预设表里加新键。 - 播放器在
frontend/src/lib/motion/onboarding-run.ts。Motion 仍走已有的loadMotionReact(),页面出来之后才加载,不进首屏 HTML。 - 天空加强只在
frontend/src/components/birth-sky/。6.5 秒的时钟没改。3 秒内素材没到齐仍静默跳过。停留时的额外字段和导出封面的画布调用逐条相同。减少动态效果时不传入这些字段,也不做圆形展开和首页上浮。 - 进度环改用
clip-path走格,不再用会触发布局的描边偏移。侧栏拖宽、会话排序、清单行的格子没有改。 Home()的useState/useRef没有增加。scripts/jyotish_api_server.py没有加方法。没有改.gitea/**,没有改生产部署,没有动数据库。白名单没有加长。- 没有改既有断言。新测试是
frontend/tests/onboarding-motion-20261022.test.ts。
自测
frontend\node_modules\.bin\tsc --noEmit -p frontend:通过。frontend下npm run lint:0 error(121 条原有 warning,本单新文件没有新增)。- 定向测试 58 项,fail 0,cancelled 0。含动效时长、减少动态效果没有位移、天空停留帧与封面逐调用相同、建档 / 清单 / 档案 / 增长合同 / 全站预设键。
npm run build:/仍是 Static。- 首屏 gzip(
index.html引用的 36 个/_next/static/**.js,Python gzip 等级 9,缺文件 0):基线352d45b2为 627046 字节,本分支为 631199 字节,增加 4153 字节,约 +0.66%,在 ±2% 以内(上限约 639587)。这 36 个文件里没有 motion。 - 没有跑全量
npm test,没有跑 Python 快速门,没有跑test:db。
环境缺口
本机没有登录态,没有用 Chrome 性能面板录完一整条新用户流程。不能把浏览器验收写成通过。真机条目在 docs/testing/onboarding-journey-20261022.md 的「动效」一节。
没有记新的 Bug
这一单是补动效,没有修一个已有现象。BUG-1420、1421、1422 已存在,没有再写。docs/BUG_HISTORY.md 没有追加。