startup-plan/潜在问题清单.md
WangDL 5c3f493071 docs(startup-plan): 重构项目文档结构,整合所有产品决策
- 删除旧版 v0.1 规划,只保留完全版
- 更新全部 7 大模块文档,补充具体决策和实操内容
- 新增 AI架构设计、营销冷启动调研方案、客服设计详案等子文档
- 新增 潜在问题清单(56项技术+方向问题)
- 整理图片到 images/ 目录
2026-05-12 17:07:28 +08:00

13 KiB
Raw Blame History

潜在问题清单

基于 思路梳理.md 的 9 项已知问题之外,逐层审查代码后发现的问题。 更新时间2026-05-12


🔴 严重(会阻断编译 / 上线 / 安全)

# 位置 问题 后果
1 后端 13 个 Repository 全部 数据只存内存 Map,没有调 Prisma 写 MySQL。服务器上已有 MySQL但代码不走它。 服务重启 = 全量数据丢失
2 后端 infrastructure/queue/queue.service.ts 队列是内存数组 push/shift,不是 BullMQ没接 Redis 队列任务重启丢失,无可靠异步处理
3 后端 3 个 Worker 文件 全是空壳(只有 console.log + setInterval),没有真正消费队列 异步任务AI分析/导入/通知)全部未生效
4 后端 .gitea/workflows/deploy.yml 数据库密码、Redis 密码、JWT Secret、Swagger 密码全部明文硬编码 任何人拿到仓库就能访问生产环境
5 后端 服务器密钥/WangDL.pem SSH 密钥已提交到 Git.gitignore 没排除 密钥泄露风险
6 iOS 全部 View 文件 自定义 NavigationLink(destination:label:) 没有定义SwiftUI 原生签名不同 项目无法编译
7 iOS Core/Network/APIConfig.swift + Info.plist baseURL 使用 http:// 明文,NSAllowsArbitraryLoads = true App Store 审核必然被拒

🟠 高危(功能主链路断裂)

# 位置 问题 后果
8 后端 auth.service.ts L154-158 Apple 登录实际未接入,走 mockverifyRealApple 直接抛异常) 用户认证链无效(虽账号刚开通,但代码需要准备好)
9 后端 modules/ 大部分 Controller 10 个 Controller 没有 @UseGuards(JwtAuthGuard),或使用 user?.id || 'anonymous' 降级 未登录可调用知识库/AI分析/学习记录等接口
10 后端 ai-analysis.service.ts L61-78 .then().catch() 未 awaitfire-and-forget AI 分析异常静默丢失
11 iOS Core/Network/APIClient.swift L11 Token 只存 actorvar token: String?,没写 Keychain 杀进程重启就要重新登录
12 iOS 全部 View APIService 有 8 个 Service 类20+ 方法),但没有任何 View 调用它们。所有数据硬编码。 前后端完全断开
13 iOS Tests 全部 4 个文件 引用的 ReviewPlanViewModelStudyHomeViewModelAIChatViewModelFileCache 全不存在 测试无法编译
14 官网 WaitlistForm.astro L83-95 提交事件只 e.preventDefault() 然后显示假成功,没有 fetch() 等待名单完全无效
15 官网 support.astro 反馈表单无任何 JS 处理,无 action/method,提交即刷新丢失 支持/反馈功能无效

🟡 中危(体验 / 架构债务)

# 位置 问题 后果
16 iOS 全部 View 零 ViewModel 分层,所有逻辑写在 View @State 里,无 @StateObject/@Published 代码不可测试,日后重构极其困难
17 iOS 全部 View 零加载态Loading、零错误态Error、零空态Empty 用户体验极差,网络出错无提示
18 iOS 无任何持久化 没有 CoreData/SwiftData/UserDefaults 持久层,无离线缓存 断网完全不能用
19 iOS SettingsView / LibrarySubpages 所有保存/提交按钮的闭包是 {} 空的,点了无任何反应 设置和创建知识库等全部失效
20 iOS zh-Hans.lproj/Localizable.strings 180+ key 已写好,但没有一个 View 用 NSLocalizedString 多语言架构白写了
21 后端 common/utils/rate-limit.service.ts 限流 Service 写好了但没在任何 Module 注册,没在任何 Controller 使用 零限流保护
22 后端 common/interceptors/response.interceptor.ts 拦截器写好了但没全局或局部注册 响应格式不一致
23 后端 大部分 Controller @Body() body: any 无 DTO class 无输入校验,恶意 payload 直通
24 后端 document-import.service.ts 用 3 层 setTimeout 模拟处理,无真正文件解析 资料导入完全无效
25 后端 infrastructure/storage/ 只有 getUploadPath()healthCheck(),没有真正的读写/上传 文件上传完全无效
26 后端 main.ts enableShutdownHooks() SIGTERM 时请求被硬断,连接不排空
27 后端 ID 类型 Prisma schema 用 BigInt,所有代码生成 string ID 接 Prisma 时全部 ID 逻辑要重写
28 后端 所有 list 接口 PaginationDto 写好了但无接口使用 无分页,数据量大时撑不住
29 后端 prisma/migrations/ 无 migration 目录 数据库 schema 变更无版本管理

🟢 低危(清理 / 微调)

# 位置 问题
30 官网 src/styles/global.css 7 个 CSS 自定义属性(--color-accent--color-text未定义Tailwind v4 变量名不一致
31 官网品牌名 "知习 AI" 和 "龙德AI学习" 两个名字混用,约各占一半页面
32 官网 sitemap.xml.astro 缺少 /product/philosophylastmod 生成时间全是"今天"
33 官网 BaseLayout.astro L12 og-default.png 不存在,所有页面社交分享无缩略图
34 官网 robots.txt 写死 Sitemap: http://localhost:4321/sitemap.xml
35 官网 support.astro / privacy.astro 绕过 BaseLayout,缺失所有 SEO meta 标签
36 后端 Swagger 生产环境 ENABLE_SWAGGER=true,且密码硬编码在 deploy.yml
37 后端 无 docker-compose.yml 文档写了但没创建,本地无法一键起全栈
38 后端 E2E 测试 test/app.e2e-spec.ts 期望 Hello World! 但根路径返回的是健康检查 JSON
39 iOS 无崩溃监控 无 Crashlytics / Sentry / 自建监控
40 iOS 无推送 BGTaskScheduler,无 Push Notification 注册

📊 统计

等级 数量
🔴 严重 7
🟠 高危 8
🟡 中危 14
🟢 低危 11
- 合计(技术向) 40

🧭 项目方向 / 策略层遗漏(非技术问题)

这些是你现有的规划文档中提到但未实质性推进、或根本没被覆盖的问题。

# 类别 问题 现状 为什么重要
D1 方向决策 3 个候选方向至今未选定 方向验证.md 列出了公考申论 / AI工具学习 / 前端面试三个方向,评分维度也写了,但没打分没结论 代码已经写了 21 个页面 + 13 个后端模块,但还不知道往哪个垂直方向走。按计划"先选方向再做产品",现在反了
D2 竞品分析 零竞品拆解 文档多次提"做竞品分析表""看竞品差评",但没有任何竞品文档 没有竞品分析就无法定义差异化,也不知道当前方向是否已红海
D3 第一个知识库内容 没有开始准备内容 计划反复强调"只做一个7天路径",但没有任何内容草稿 产品核心价值是 AI + 结构化知识库AI 链路通了但内容没准备,学什么?
D4 范围失控 实际代码远超 MVP 计划 计划要求 8 个 P0 模块、8-14 页、不做 Worker/导入/通知;实际做了 13 模块、21 页、3 Worker、文档导入骨架 每多做一个未验证的模块都是成本,而且在方向没确定前做这些是风险
D5 AI 成本模型 没算过真实的 AI 调用成本 计划提了"成本失控"的警惕,但没有具体数字:每用户每天几次调用、每次多少 token、月成本预估 不收钱还好,一旦内测量大或定价,成本算不清就没办法定价,也没办法判断盈亏
D6 验证的硬性退出条件 没有"什么是验证失败"的定义 方向验证.md 有最低目标50条原话、10份问卷等但没有明确时间节点和放弃标准 容易陷进"再试试"的循环,没有止损线
D7 定价策略 商业化与支付模块.md 只是目录骨架 没有月订阅/年订阅的具体金额、没有竞品价格对比、没有用户付费意愿数据 这是你 思路梳理.md 第 9 条自己写的,但完全没推进
D8 季节性风险 公考/面试方向有强时间窗口 公务员考试有固定报名和考试周期,错过窗口期获客成本急剧上升 如果选定公考方向但不卡时间发布,第一波内测可能完全找不到备考用户
D9 用户输入意愿风险 没提出降低输入门槛的方案 Demo与MVP.md 自己写了"用户不愿意主动输入内容"是最大风险之一,但没有给缓解策略 学习闭环的核心是用户写笔记/回答,如果用户跳过这一步,整个链条断了
D10 内容持续供给 知识库由谁维护、更新节奏 产品定位是"AI驱动的学习系统",但内容来源方案停在"合法整理"这四个字上 一个 7 天路径学完就没新内容了,用户不回来。没有持续的内容生产计划
D11 AI 分析质量的验证标准 没有产品侧的 AI 效果验收机制 AI 分析输出的是掌握度/薄弱点/建议,但没有说"多准确算合格",谁来验收 如果 AI 分析结果用户觉得不靠谱,产品核心价值崩塌。需要真人验证标准
D12 Prompt 管理策略 没有 Prompt 版本管理和效果追踪 BACKEND-PLAN.md 设计了 prompts/ 目录和 Provider 抽象,但没有 prompt A/B 测试、效果对比、迭代机制 Prompt 是这个产品的核心资产之一,随缘改会越来越差
D13 品牌定位 品牌名都不统一 官网页面和 app 里"知习 AI"和"龙德AI学习"混用,没有正式品牌命名文档 内测用户看到两个名字会很困惑,不利于口碑传播
D14 内测用户获取 没有用户触达的路径验证 计划写了小红书/B站/知乎 + 等待名单,但等待名单在官网上是假的,没有跑过一次真实用户获取 方向验证的第一步"看评论区"还没批量执行过
D15 上线后运营 零运营准备 计划有 运营与客服模块.md 但只是目录,没有客服响应 SLA、没有内测群管理方案、没有版本发布沟通流程 TestFlight 内测用户遇到问题找谁?等多久?怎么反馈给你?全没定义
D16 隐私合规落空 官网隐私政策是用 AI 生成的模板 privacy.astro 内容很长但法律有效性存疑;App Privacy 数据声明没准备 App Store 上架时 Apple 会严格审查隐私声明,模板可能被退回

📊 统计(含方向)

等级 数量
🔴 严重(技术) 7
🟠 高危(技术) 8
🟡 中危(技术) 14
🟢 低危(技术) 11
🧭 方向/策略 16
合计 56

🎯 建议优先修复顺序

第 0 批(现在,不写代码):
  D1   选定一个垂直方向并打分       → 不选方向后面都是浪费
  D2   做 3-5 个竞品拆解            → 知道差异化在哪
  D3   准备第一个 7 天路径的内容     → 没内容验证不了学习闭环
  D4   砍掉 MVP 不需要的模块和页面   → 别再继续膨胀了

第 1 批(技术底线,本周):
  #6   iOS NavigationLink 编译问题   → 让项目能跑
  #1   Repository 接 Prisma + MySQL → 数据能落库
  #4   CI/CD 密钥脱敏               → 安全底线
  #5   删除或 gitignore WangDL.pem  → 安全底线
  #7   iOS 换 HTTPS                 → App Store 上架要求

第 2 批(功能链路,下周):
  D5   算清 AI 单用户月成本          → 为定价打底
  #2   Queue 接 BullMQ + Redis      → 异步链路通
  #8   Apple 登录接入               → 认证链路通
  D14  跑一次真实用户获取            → 开始验证方向
  #14  官网 Waitlist 接后端 API     → 等待名单能用
  #12  iOS View 调 APIService       → 前后端打通
  D13  统一品牌名                   → 知习 or 龙德,选一个

第 3 批(内测前):
  D6   设定验证退出条件和时间节点     → 有止损线
  D9   设计输入降门槛方案            → 解决最大风险
  D11  定 AI 分析质量验收标准        → 产品核心价值要可控
  #9   各 Controller 加 Auth Guard  → 接口安全
  #11  Token 写 Keychain            → 登录持久化
  #16  iOS MVVM 分层                → 代码可维护
  #17  iOS 加载/错误/空态           → 体验完整
  D15  准备内测运营方案             → TestFlight 用户有处可去
  D16  检查隐私政策合规性           → App Store 审核不被拒