diff --git a/docs/product-review-jun-2026.md b/docs/product-review-jun-2026.md index 8027823a..58c9c3da 100644 --- a/docs/product-review-jun-2026.md +++ b/docs/product-review-jun-2026.md @@ -1,8 +1,6 @@ # PolyWeather 前端产品审查报告 > 审查日期:2026-06 | 视角:产品经理 | 范围:`frontend/` 全部页面、组件、用户流程 -> -> **修复状态:12/14 已完成,1 已决策不做,1 待做** ## 一、产品概览 @@ -24,13 +22,11 @@ PolyWeather 是一个面向天气衍生品交易者的气象情报平台。核 | `/account` | 账户中心 — 身份/订阅/钱包/积分/Bot 绑定 | 是 | | `/auth/login` | 登录页(Google OAuth + 邮箱密码) | 否 | | `/docs/[...slug]` | 产品文档中心(8 篇双语文档) | 否 | -| `/subscription-help` | 订阅 FAQ(静态) | 否 | +| `/subscription-help` | 订阅 FAQ(双语) | 否 | | `/entitlement-required` | 访问被拒页面 | 否 | | `/ops` | 运营管理后台 | 是(管理员) | | `/ops/truth-history` | 真值历史查看器 | 是(管理员) | ---- - ## 二、用户流程分析 ### 主看板的两个视图 @@ -49,86 +45,42 @@ PolyWeather 是一个面向天气衍生品交易者的气象情报平台。核 ### 关键用户路径 -1. **新用户落地** → 看到地图 + 城市列表 → 点击城市 → 看到城市简报 → 想深入分析 → 遇到 Pro 付费墙 -2. **Pro 用户打开** → Pro 加载中…… → 等待 → 看到决策卡工作区 -3. **Pro 用户工作流** → 地图选城市 → 自动钉选到决策卡 → 展开卡片 → 阅读 AI 报文解读 → 查看市场层 → 判断交易方向 +1. **新用户落地** → 看到 3 步引导 → 地图 + 城市列表 → 点击城市 → 看到城市简报 → 想深入分析 → 遇到 Pro 付费墙(含功能说明) +2. **Pro 用户工作流** → 地图选城市 → 自动钉选到决策卡 → 展开卡片 → 阅读 AI 报文解读 → 查看市场层 → 判断交易方向 ---- +## 三、做得好的地方 -## 三、发现的问题(按严重程度排序) - -### 🔴 P0 — 阻塞性问题 - -| # | 问题 | 影响 | -|---|------|------| -| 1 | **Pro 加载阻塞整个看板** — 检查 Pro 状态时(`proAccess.loading`),整个页面显示加载动画,免费用户的地图也被遮住 | 所有用户在加载期间无法使用任何功能 | -| 2 | **Scan 失败无重试** — 免费用户如果 scan terminal 数据拉取失败,只能看到 "Scan failed" 文字,没有重试按钮(重试按钮仅 Pro 用户可见) | 免费用户永久卡在失败状态 | -| 3 | **Detail Panel 同步超时无反馈** — 12 秒后停止显示 "Syncing..." 但不显示错误状态,用户看到空白内容 | 用户以为功能正常但数据缺失 | - -### 🟡 P1 — 体验断裂 - -| # | 问题 | 影响 | -|---|------|------| -| 4 | **无新用户引导** — 没有任何欢迎弹窗、引导提示、或步骤教程。唯一的指引是顶栏内的一行副标题文字 | 新用户不知道从哪开始,可能直接流失 | -| 5 | **付费墙没有预览** — 历史对账和日内分析被硬阻断,非 Pro 用户完全看不到任何预览或示例 | 用户不知道付费后能得到什么,降低付费转化 | -| 6 | **密码重置缺失** — 邮箱注册的用户如果忘记密码,没有任何重置流程 | 用户被永久锁在账户外 | -| 7 | **邮箱验证状态不明** — 注册后提示"请检查邮箱验证",但未验证的用户反复登录失败,没有明确的下一步提示 | 用户反复尝试登录但不知道为什么失败 | - -### 🟢 P2 — 改善体验 - -| # | 问题 | 影响 | -|---|------|------| -| 8 | **公告横幅不可手动关闭** — v1.5.6 升级公告只能通过 localStorage 倒计时 3 天后自动消失,没有 ✕ 关闭按钮 | 占用屏幕空间,用户无法跳过 | -| 9 | **无应用内反馈渠道** — 没有"反馈"/"帮助"/"报 Bug"按钮,用户只能主动去 Telegram 群或发邮件 | 用户反馈成本高,问题发现延迟 | -| 10 | **entitlement-required 页面过于简陋** — 没有品牌标识、没有导航、没有返回首页的链接 | 用户仿佛掉进了一个黑洞页面 | -| 11 | ~~**账户中心缺少个人设置**~~ — 当前产品阶段不需要,用户通过钱包地址识别身份已足够 | 已决策不做 | -| 12 | **Docs 无搜索** — 8 篇文档没有搜索功能,用户必须逐篇浏览找到需要的内容 | 查找效率低 | -| 13 | **订阅帮助仅中文** — `/subscription-help` 页面没有英文版 | 英文用户无法自助解决计费问题 | -| 14 | **Ops 面板无审计日志** — 管理员补发积分等操作没有审计记录 | 运营风险 | - ---- - -## 四、做得好的地方 - -1. **地图 → 决策卡的自动流转设计** — 点击地图城市自动钉选到分析工作区并切换视图,这是很聪明的"零步骤发现"设计 +1. **地图 → 决策卡的自动流转设计** — 点击地图城市自动钉选到分析工作区并切换视图,"零步骤发现" 2. **双语覆盖完整** — 所有 UI 文案、文档、AI 解读都有中英文对照,覆盖率接近 100% -3. **数据新鲜度可视化** — DataFreshnessBar 让用户一眼看到 METAR/模型/市场数据的新鲜度(fresh/stale/loading/unavailable),降低误判风险 -4. **AI 解读的产品化程度高** — 不只是显示原始 AI 输出,而是分层展示:快速判断 → 完整解读 → 证据链 → 风险提示,每层都可独立查看 -5. **免费层有实际价值** — 地图 + 城市简报不是"空壳",用户可以看到真实的气象数据,建立信任后再转化 Pro -6. **支付链路完整** — 从钱包绑定到链上签约到支付恢复,整个流程处理了多种异常情况 -7. **空状态有引导文字** — "Click a city on the map" 这样的空状态文案能告诉用户下一步做什么 -8. **浅色/深色主题都有** — 两个主题都经过完整设计,不是简单的颜色反转 -9. **Ops 面板功能齐全** — 运营人员可以在一个页面看到系统健康、转化漏斗、缓存状态、支付异常、用户管理 +3. **数据新鲜度可视化** — DataFreshnessBar 让用户一眼看到 METAR/模型/市场数据的新鲜度 +4. **AI 解读的产品化程度高** — 分层展示:快速判断 → 完整解读 → 证据链 → 风险提示 +5. **免费层有实际价值** — 地图 + 城市简报不是"空壳",用户可以看真实气象数据 +6. **支付链路完整** — 从钱包绑定到链上签约到支付恢复,处理了多种异常情况 +7. **空状态有引导文字** — "Click a city on the map" 告诉用户下一步做什么 +8. **浅色/深色主题都有** — 两个主题都经过完整设计 +9. **Ops 面板功能齐全** — 系统健康、转化漏斗、缓存状态、支付异常、用户管理一览无余 ---- +## 四、存在的问题与待办 -## 五、建议的优先级路线图 +| # | 问题 | 优先级 | +|---|------|------| +| 1 | **Docs 无搜索** — 8 篇文档没有搜索功能,用户必须逐篇浏览 | 🟢 待做 | +| 2 | **Ops 面板无审计日志** — 管理员补发积分等操作没有审计记录 | 🟢 需后端 | +| 3 | **注册后邮件验证引导** — 未验证邮箱的用户反复登录失败 | 🟡 需后端 | -### Phase 1 — 修复阻塞(本周) +## 五、已完成 -1. **Pro 加载不阻塞免费层** — `proAccess.loading` 时先显示地图,决策卡区单独显示加载状态 -2. **Scan 失败加重试** — 免费用户也能看到重试按钮 -3. **Detail Panel 同步超时后显示错误提示** — "数据加载超时,请刷新" - -### Phase 2 — 体验堵漏(本月) - -4. **新用户引导** — 简单的 3 步 overlay:①点地图选城市 → ②看右侧城市简报 → ③Pro 解锁决策卡分析 -5. **付费墙加预览** — 历史对账/日内分析展示一个模糊的示例截图 + "升级 Pro 查看完整分析" -6. **密码重置** — 集成 Supabase 的密码重置 API -7. **公告横幅加关闭按钮** — "知道了"按钮,点击后永久隐藏 - -### Phase 3 — 产品完善(下月) - -8. ~~**应用内反馈入口**~~ ✅ 已完成 — 顶栏 Telegram 反馈按钮 -9. ~~**entitlement-required 页面美化**~~ ✅ 已完成 — 品牌化设计 + 导航 -10. **Docs 搜索** — 简单的客户端全文搜索 - -### 已决策不做 - -- **账户设置补充** — 当前产品阶段钱包地址 + Telegram 已足够标识用户 -- **通知偏好设置** — 用户量小,Telegram 群发已覆盖 - -### 需要后端配合 - -- Ops 操作审计日志 -- 注册后邮件验证引导流程 +| # | 问题 | 原优先级 | +|---|------|------| +| 1 | Pro 加载阻塞看板 → 只显示精简顶栏+加载状态 | 🔴 P0 | +| 2 | 免费用户 Scan 失败无重试 → 添加重试按钮 | 🔴 P0 | +| 3 | Detail Panel 超时无反馈 → 显示超时警告 | 🔴 P0 | +| 4 | 无新用户引导 → 3 步 WelcomeOverlay | 🟡 P1 | +| 5 | 付费墙无预览 → 功能说明文案 | 🟡 P1 | +| 6 | 密码重置缺失 → 登录页忘记密码 + Supabase 重置 | 🟡 P1 | +| 7 | 邮箱验证提示不明 → 登录失败时提示检查验证邮件 | 🟡 P1 | +| 8 | 公告不可关闭 → ✕ 按钮永久隐藏 | 🟢 P2 | +| 9 | 无反馈入口 → 顶栏 Telegram 反馈按钮 | 🟢 P2 | +| 10 | entitlement-required 页面简陋 → 品牌化设计 + 导航 | 🟢 P2 | +| 11 | 订阅帮助仅中文 → 中英双语 | 🟢 P2 | +| 12 | 账户中心个人设置 → 决策不做,钱包+Telegram 已足够 | 🟢 P2 |