Files
no-whatever/PRODUCT_OPTIMIZATION.md
T
kurihada 2d49744dd0 feat(blindbox): AI 计划生成流式进度与渐进式文案
- 新增 runPlanGeneration 与 onProgress 回调 (blindboxPlanGen.ts)
- 新增 POST /api/blindbox/plan/stream 推送 SSE 进度事件
- 前端优先走流式接口,实时展示「分析想法→搜索地点→规划路线→快好了」
- 流式失败时回退普通 POST,客户端轮播进度文案作为后备
- 规划阶段 UI 显示 planStatusMessage 替代静态文案
2026-02-27 17:37:40 +08:00

195 lines
8.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# NoWhatever 产品优化建议
> 基于全量代码审查 + 现有 ROADMAP/BUGFIX 交叉分析,聚焦 ROADMAP 未覆盖的盲区。
> 按产品影响力排序,非技术债务清单。
---
## 一、核心转化漏斗断裂(最高优先级)
### 1. 新用户从"打开"到"第一次滑卡"路径太长
**现状**:首页 → 选模式 → 设置位置 → 选场景/口味/距离/价格 → 创建房间 → 等待加载 → 开始滑
至少 **6 步 + 1 次定位授权**,每一步都是流失点。对选择困难症用户来说,让他们在设置页面做 4 个选择本身就是讽刺。
**建议**:增加「一键开始」快捷入口 —— 用默认定位 + 默认"吃饭"场景 + 3km 直接开房间,3 秒进入滑卡。高级设置保留给回头用户。
### 2. 切换场景清空已选偏好
**现状**`handleSceneChange` 直接重置 cuisines 和 price,用户误触即丢失所有配置,无确认。
**建议**
- 方案 A:缓存每个场景的偏好,切回时恢复
- 方案 B:弹出"切换将清空当前设置,确定?"确认框
### 3. 定位失败引导含糊
**现状**:出现 4 种不同文案(定位中 / 失败 / 被拒绝 / 将使用当前定位),用户不知道该做什么。
**建议**:统一为一个明确的 CTA —— 要么"允许定位"按钮,要么"手动搜索位置"输入框,不要同时展示多个状态。
---
## 二、匹配成功后的闭环缺失
### 4. 缺少"执行"追踪环节
**现状**:匹配到餐厅后,除了导航和电话,没有后续追踪。没有"去了吗?好吃吗?"的闭环。
**建议**:匹配后 2 小时推浏览器通知:"去 XXX 了吗?打个分吧"。分数数据反哺未来推荐质量,同时形成用户习惯。
### 5. 收藏按钮隐藏在登录之后
**现状**:未登录用户在 MatchResult 上看不到收藏按钮,但这恰恰是用户最有收藏冲动的时刻。
**建议**:始终展示心形按钮,点击时触发注册引导("注册即可保存这家店")。转化率优于当前的被动注册引导卡片。
### 6. "Top N 决赛"理解成本高
**现状**:非全员一致时"缩小范围"按钮直接出现,没有解释这是什么、为什么需要。
**建议**:在按钮上方加引导语:"还有 X 家不相上下,再投一轮?"(ROADMAP 已提及但未实现)
---
## 三、盲盒模式参与度瓶颈
### 7. 登录门槛太靠前
**现状**:打开盲盒页面第一件事就是弹登录框,用户连盲盒是什么都没看到就被要求注册。
**建议**:先展示 demo 房间 / 动画演示 / 已有房间的公开预览,让用户理解价值后再引导登录。
### 8. 提交想法缺乏引导和灵感
**现状**:输入框只有 placeholder "写下你的想法...",用户面对空白框不知道写什么。
**建议**:展示 3-5 个随机示例("去城市最高楼看日落"、"挑战一人做一道菜"、"找一家从没去过的店"),点击可直接填入,降低创作门槛。
### 9. AI 计划生成无进度反馈 ✅
**现状**:调用 DeepSeek 生成周末计划可能需要 5-10 秒,只有 phase 变化,用户以为卡死了。
**建议**:加逐步动画:"正在分析你们的想法..." → "正在规划路线..." → "快好了...",降低等待焦虑。
**已实现**
- 新增流式接口 `POST /api/blindbox/plan/stream`,按步骤推送 SSE 进度(分析想法 → 搜索地点 → 规划路线 → 规划周六/周日 → 快好了)。
- 前端优先走流式接口,实时展示服务端进度文案;流式失败时自动回退到普通 `POST /api/blindbox/plan`,并用客户端轮播文案(约 2.8 秒一档)作为后备。
- 计划生成逻辑抽到 `src/lib/blindboxPlanGen.ts`,支持 `onProgress` 回调,供流式与普通接口共用。
### 10. 契约完成率没有激励闭环
**现状**:用户看到完成率数字,但没有任何奖励或惩罚机制。
**建议**
- 连续完成 3 个契约 → 解锁特殊标签 / 头像框
- 连续放鸽子 → 对方可以"惩罚抽签"(指定必须做某个想法)
---
## 四、单人使用体验
### 11. 单人创建房间后陷入永久等待
**现状**`userCount === 1` 时仍然进入"等待其他人完成选择"的 spinner。大量用户其实是单人使用(自己选不了吃什么)。
**建议**:单人模式直接出结果,文案改为"帮你选好了!"而非"全员一致"。这解锁了最大的用户群体。
---
## 五、留存与回访机制空白
### 12. 没有任何回访触发点
**现状**:用户用完一次后没有理由回来。没有推送、没有提醒、没有"每周报告"。
**建议**
- 短期:profile 页加"下次吃什么?"快捷入口 + "上次你们选了 XXX,要不要换一家?"
- 中期:接浏览器 Notification API,工作日下午 5 点推"今晚吃什么?"
### 13. 成就系统只有数字没有情感
**现状**:成就页是统计数据的平铺,没有里程碑、勋章、解锁动画。
**建议**:加入称号体系("选择恐惧症治愈者 Lv.3"、"周末冒险家"),每次解锁新称号播放庆祝动画。数字驱动不了留存,情感才可以。
### 14. 缺少"历史今天"触发
**现状**decision 表有 `createdAt` 字段,但从未用于回忆功能。
**建议**:"一年前的今天,你和 TA 在 XXX 吃了火锅" —— 极强的情感连接 + 回访理由。在首页或成就页展示。
---
## 六、社交裂变短板
### 15. 分享卡片缺少行动号召
**现状**:生成的分享图有餐厅信息 + 二维码,但没有一句吸引新用户的 hook。
**建议**:卡片底部加一行:"选择困难?扫码让 TA 帮你决定 →"
### 16. 邀请页信息不足
**现状**:被邀请者只看到房间 ID 和人数,不知道在选什么、在哪里、选了多久。
**建议**:展示房间场景(吃饭/喝酒)、位置、已滑卡进度,降低加入决策成本。
---
## 七、技术层面影响产品体验的问题
| 问题 | 产品影响 | 建议 |
|------|---------|------|
| 网络断开无任何提示 | 用户滑卡后不知道是否提交成功 | 加"网络已断开"toast + 自动重连机制 |
| 滑卡没有触觉反馈 | 移动端操作感弱,不确定是否成功 | 调用 `navigator.vibrate()` |
| 房间 24h 过期且未登录用户无记录 | 第二天想看"昨天选了什么"看不到 | 引导注册,或用 localStorage 缓存最近一次结果 |
| 图片加载失败静默 | 空白卡片严重影响决策质量 | 加 fallback 占位图 + 重试按钮 |
| 餐厅数量不可预期 | 用户不知道有多少张卡要滑 | 搜索后展示"找到 X 家餐厅",减少焦虑 |
---
## 优先级排序
### 第一梯队:解决"用了但没用起来"
| # | 改动 | 预期效果 | 复杂度 |
|---|------|---------|--------|
| 1 | "一键开始"快速通道 | 新用户转化率翻倍 | 低 |
| 11 | 单人模式自动出结果 | 解锁最大用户群体 | 低 |
| 7 | 盲盒登录后置 | 盲盒模式使用率提升 | 中 |
### 第二梯队:补全核心体验
| # | 改动 | 预期效果 | 复杂度 |
|---|------|---------|--------|
| 5 | 收藏按钮始终可见 | 注册转化率提升 | 低 |
| 6 | Top N 决赛引导语 | 减少二轮投票的困惑 | 低 |
| 8 | 想法灵感提示 | 想法提交量提升 | 低 |
| 9 | AI 生成进度动画 | 减少等待流失 | 低 |
| 3 | 定位引导优化 | 减少首次使用失败率 | 低 |
### 第三梯队:留存与增长
| # | 改动 | 预期效果 | 复杂度 |
|---|------|---------|--------|
| 4 | 执行追踪 + 打分 | 形成使用习惯 | 中 |
| 12 | 回访通知 | 次日/次周留存提升 | 中 |
| 13 | 情感化成就系统 | 长期留存 | 中 |
| 15 | 分享卡片行动号召 | 自然裂变提升 | 低 |
| 14 | 历史今天 | 情感连接 + 回访 | 低 |
### 第四梯队:体验打磨
| # | 改动 | 预期效果 | 复杂度 |
|---|------|---------|--------|
| 2 | 场景切换保留偏好 | 减少操作挫败感 | 低 |
| 10 | 契约激励闭环 | 盲盒活跃度 | 中 |
| 16 | 邀请页信息补全 | 邀请转化率提升 | 低 |
| — | 网络断开提示 | 减少数据丢失投诉 | 中 |
| — | 滑卡触觉反馈 | 移动端操作满足感 | 低 |
---
> 核心原则:**先让更多人用起来,再让用起来的人留下来,最后让留下来的人带新人。**