Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
3.6 KiB
3.6 KiB
TASK · 首页开场小字拆分 + 今日星语 / 点数图标(2026-09-26)
基线
origin/staging当前 head。分支codex/starter-home-polish-20260926。- 串行:改
frontend/src/app/(app)/page.tsx,排在TASK-new-chat-from-people-20260926(BUG-1038)与TASK-home-warm-return-20260926(BUG-1040)之后。
事故实证(产品 09-26 真机截图)
首页入口按钮下方一段三行小字:「月亮今天行经双鱼座,你的心思容易朝远方和意义飘,节奏偏松,适合慢一点。 · 不确定出生时间时,用记得住的经历一步步缩小范围」。
frontend/src/components/starter-home.tsxStarterEntries:<p className="starter-entry-hint">{dailyHint} · {rectificationHint}</p>—— 两句无关提示用「·」硬拼。- 前半句
dailyHint=page.tsxdailyStarlanguageTrend= 今日星语卡片trend:/api/daily-starlanguage每日由模型生成(DAILY_STARLANGUAGE_MODEL_ID,缺省 deepseek),失败时回落daily-starlanguage.tscomposeDailyStarlanguageCard规则模板。不是写死轮转。 - 后半句
rectificationHint写死三选一(有未完成 case /rectificationCardAction === "restart"/ 首次);截图账号已校正过,仍显示首次文案,说明分支判断与实际状态不符(restart未命中)。 - 图标:今日星语入口
Sparkles(starter-home.tsx),右上角点数Sparkles(page.tsxclassName="credit-icon"),两处同图标。
决策记录(产品 2026-09-26)
- D1 今日趋势句移到问候语下方单独一行(
StarterGreeting增加可选副行,浅色--color-ink-secondary、--type-body-sm,最多两行、超出省略);今日星语未就绪时显示现有静态句「今天的星语还没写出来。」;没有出生分钟(natalMinuteAvailable为假)时不显示副行。 - D2 入口按钮下方平时不显示任何提示;只在需要用户动手时出一句:
- 有未完成的校正(
hasResumableCase)→「上次那次校正还没完成,可以接着做。」 - 当前人物不是本人 →「生时校正暂时只支持本人。」
- 其余情况(首次、已校正)不显示。删除「不确定出生时间时…」「上次已经校正完…」两句。
- 修正分支判断:以 entry summary 的真实状态为准,不再依赖可能未命中的
restart。
- 有未完成的校正(
- D3 今日星语入口图标改 lucide
MoonStar;右上角点数图标改 lucideCoins(aria-hidden不变,按钮可访问名不变)。 - D4
!natalMinuteAvailable时的边界句「出生时间不足以支持的判断我会说明…」保留原位。
硬红线
首页 ○ Static、gzip ±2%;Home() 不新增 hook、page.tsx 不超增长合同;不改今日星语接口与生成逻辑;首页揭幕规则不变(副行不得引入新的等待态);更新 frontend/DESIGN.md(首页空状态一节)与 frontend/docs/VOICE.md(删两句、加一句);全量测试与基线逐条一致、新增 0;改动断言三栏写在测试文件里;真实浏览器 375 / 1280 截图(开发预览模式)。
任务分解
- T1
StarterGreeting副行 +page.tsx传入今日趋势(D1)。 - T2
StarterEntries提示按需显示 + 分支修正(D2、D4)。验收:组件测试覆盖四种状态(首次、已校正、有未完成、非本人)各自是否显示、显示什么。 - T3 图标替换(D3)。
- T4 CHANGELOG、DESIGN、VOICE、PROGRESS、
docs/testing/一条真机项。本单为产品调整,不开 BUG 号(D2 的分支误判若确认为 bug,用开工时下一个空号记一条)。