From 12b6398c7b107d94b4b942b481e14af960e05002 Mon Sep 17 00:00:00 2001 From: Jesse_Chen Date: Sat, 15 Aug 2026 21:52:02 +0800 Subject: [PATCH] fix: make starter questions user-centered --- docs/BUG_HISTORY.md | 15 ++++++++++ frontend/src/app/page.tsx | 18 ++++++------ frontend/src/lib/guided-jyotish-topics.ts | 20 ++++++------- frontend/src/lib/onboarding-cache-policy.ts | 2 +- frontend/src/lib/onboarding-payload.ts | 21 ++++++++++---- frontend/src/mastra/index.ts | 4 ++- frontend/tests/onboarding-route.test.ts | 31 +++++++++++++++++---- frontend/tests/starter-questions.test.ts | 29 +++++++++---------- 8 files changed, 94 insertions(+), 46 deletions(-) diff --git a/docs/BUG_HISTORY.md b/docs/BUG_HISTORY.md index a8e603c5..c248615e 100644 --- a/docs/BUG_HISTORY.md +++ b/docs/BUG_HISTORY.md @@ -3363,3 +3363,18 @@ - 防复发:IANA 时区是地点真相,`timezone_offset` 是依赖出生日期与参考时刻的派生值;所有需要 offset 的服务必须先走共享解析边界,再区分真正资料不完整与下游服务异常。 - 相关记录:BUG-127、BUG-198 - 修复版本:本次 staging 修复提交(精确 SHA 以远端分支与 staging health 验收结果为准) + +## BUG-200 | 无准确出生分钟时首页主题退化为第三方占星百科问题 + +- 状态:resolved(本地候选,待 staging 发布与视觉验收) +- 首次发现:2026-08-15 +- 最近更新:2026-08-15 +- 影响面:首页“每日运势”、十个主题问题、Onboarding Agent 生成的事业/关系/时运建议,以及已有 onboarding 缓存。 +- 用户现象:用户进入首页后看到“印度占星一般如何……”“通常会看哪些因素”“包含哪些证据层”等教学式问题;卡片在介绍占星方法,而不是帮助用户直接询问自己的每日运势、事业、关系或未来一年重点。 +- 触发条件:Profile 没有可用于个人星盘的准确出生分钟,首页选择 `generalGuidedJyotishTopics`;或 Onboarding Agent 生成未使用第一人称的客观式问题。 +- 根因:无分钟降级主题被写成“不依赖个人出生分钟”的占星知识入口,错误地把真实性边界实现成百科模式;同时 Onboarding Agent 只被要求介绍产品能力,服务端也未校验问题是否以用户本人为中心,因此模型输出和缓存都可能继续保存第三方视角文案。 +- 修复:把每日运势和十个无分钟主题统一改成“请帮我……”的任务式请求;首页明确提示出生时间不足的部分会说明限制,但仍允许用户从自己的问题开始。Onboarding Prompt 强制每个建议包含“我”并禁止百科式句型,服务器解析层再次拒绝客观教学文案并回退到安全的第一人称问题;缓存版本升级到 `ayanam-onboarding-v4`,使旧问题重新生成。 +- 验证:新增回归测试锁定无分钟主题全部为用户视角,并证明客观式 Agent 输出会被拒绝且使用第一人称 fallback;聚焦测试 25/25 通过,目标 ESLint 与 TypeScript `--noEmit` 通过。真实 staging 视觉验收待发布后完成。 +- 防复发:缺少准确出生分钟只限制分钟敏感的个性化结论,不得把用户入口改写成占星教学。首页卡片和 Agent 推荐问题必须直接表达用户要解决的事;Prompt 约束之外必须保留服务端输出校验和版本化缓存失效。 +- 相关记录:BUG-194、BUG-197、BUG-198 +- 修复版本:本次 staging 修复提交(精确 SHA 以远端分支与 staging health 验收结果为准) diff --git a/frontend/src/app/page.tsx b/frontend/src/app/page.tsx index 8d230eb8..876b22f8 100644 --- a/frontend/src/app/page.tsx +++ b/frontend/src/app/page.tsx @@ -2332,7 +2332,9 @@ export default function Home() { function draftDailyStarlanguageQuestion() { chooseSuggestedQuestion( - personalChartAvailable ? "深入看今日" : "印度占星通常如何观察每日趋势?", + personalChartAvailable + ? "深入看今日" + : "请帮我看一下今天的运势,重点告诉我适合推进什么、需要注意什么。", "timing", personalChartAvailable ? "daily_starlanguage" : null, ); @@ -3344,7 +3346,7 @@ export default function Home() {

今天想先理清什么?

{personalChartAvailable ? "从此刻最在意的事开始,我会结合你的星盘证据,帮你把问题拆得更清楚。" - : "你可以先了解一般占星知识;完成生时校正后,再讨论个人星盘结论。"}

+ : "从你现在最关心的事开始;出生时间不足以支持的部分,我会明确说明,不会补造具体分钟。"}

@@ -3353,17 +3355,17 @@ export default function Home() {