Files
digital-psychology/.ai/product/feature-spec/home.md
T
jackyu66gitandCursor 89756f65b4 feat(ECR-012–016): 合规、题库、时辰刷新、头像、MBTI OEJTS 与埋点
落地输入合规、探索题库、报告日/时辰刷新、账号头像、OEJTS 量表,并补齐 H5 埋点与 Admin 漏斗;同步 ESS 工件、切至自建 Git、清理 GitHub Actions。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-13 01:27:58 +08:00

4.7 KiB
Raw Blame History

Feature Spec: 首页(发现与入口)

Status: Active · Map: §1 首页 [P1] · Phase: P1
规范:../feature-design.md


1. 功能定义

字段 内容
Name 首页
Purpose 品牌露出 + 建档/性格探索主 CTA + 功能入口分发
Business Goal 新用户进入 Step 1–3;品牌第一屏可识别
In Out
建档生日表单 → 画像;九宫格/入口 运势 Feed 主路径
推荐区静态/轻运营即可 Dashboard 式状态墙(如「API 已连接」勿对用户展示)

2. 用户价值

  1. 为何需要: 知道从哪开始认识自己。
  2. 完成后获得: 一键进入画像主路径或其它 Tab。
  3. 付费: N/A。

3. 用户角色

Actor 能力
新 Visitor 见品牌 + 建档 CTA
老用户 同样入口;可去「我的」看资产

4. 用户流程

打开 /
  ↓
看到品牌 + 主 CTA(生日/探索)
  ↓
提交生日 → 创建档案 → /portrait
  或
点入口 → /explore /relation /ask /membership …

设计约束(前端):品牌英雄级信号;移动优先;文案 lexicon。


5. 页面设计

路由 页面
/ HomePage
全局 AppHeader · TabBar
/
├── 全局顶栏:透明愈心谷 Logo(AppHeader,全站)
├── 「自己」卡片标题展示账号昵称(默认意象词+场景词;档案页可改)
├── 穿衣指数 · 颜色搭配 · 养生推荐
├── 功能入口(4 列固定网格 · 多行换行 · 禁止横向滑动)
└── (可选)推荐内容

6. 页面状态规范

状态 UI
Normal 主路径可见
Error 建档/跳转失败可感知
Loading 提交建档时按钮态

Empty:首页本身是入口,不因无档案空白死页。


7. Business Rules

ID Rule
R1 主 CTA 必须通向建档或画像,而非死链
R2 不展示内部运维信息(API 连接状态等)
R3 入口文案符合 lexicon(个人画像/关系理解/成长会员…)
R4 Tab 五名冻结:首页·探索·问答·陪伴·我的
R5 「自己」卡片:穿衣指数 / 颜色搭配 / 养生推荐;有 Self 生日时按生日+本地日历+十二时辰易经种子生成;每一时辰准点切换;无档案或 LLM 不可用则本地回退
R6 文案禁止占卜/算命恐吓与医疗疗效承诺;卦象仅作节律意象
R7 贴士按 user × 时辰起点 持久缓存;GET 优先读缓存即时返回;缓存未命中时先回退/旧值,后台异步生成写入,禁止每次打开同步等 LLM
R8 响应含 shichen / shichen_name / valid_until(下一时辰起点);前端在 valid_until 自动静默刷新

8. 数据模型影响

经首页建档时写 profileshome_daily_tips(user_id, shichen_start, tips jsonb) 缓存时辰贴士。


9. API 需求

Method Path 说明
GET /api/v1/home/tools 宫格(已有)
GET /api/v1/home/daily-tips 自己卡片贴士(读缓存;含 valid_until
复用 POST /profilesPOST /reports/portrait

10. 权限设计

能力 Visitor User
浏览首页
建档并生成画像 需登录
daily-tips(个性化) 回退文案 有 Self 生日则 LLM

11. 埋点

Event 触发
home_viewed 打开
home_cta_portrait 主 CTA
home_entry_click 九宫格项(带 name

12. 测试验收标准

Given 新用户
When 打开首页
Then 可见品牌与建档/探索入口

Given 合法生日
When 提交主 CTA
Then 进入画像基础结果路径

Given 已登录且有 Self 生日、该时辰已有缓存
When GET /home/daily-tips
Then 立即返回缓存(含 clothing/palette/wellness / valid_until),不阻塞 LLM

Given 时辰切换到点
When 前端到达 valid_until
Then 静默刷新;穿衣/颜色/养生随新时辰更新

Given 无档案或无 LLM
When GET /home/daily-tips
Then source=fallback 且页面不白屏


13. AI 开发前检查

  • lexicon

  • 不恐吓 / 不算命话术

  • OpenAPI 已登记 /home/daily-tips

  • Spec 齐全


14. Implementation Notes

内容
Packages HomePage · App.vue shell
Gaps 推荐 Feed 运营位可静态;埋点未接
Process Review 2026-08-02 P1-PROCESS-REVIEW · 设计闭合 · 实现 PASS · 测试 PARTIAL