Files
meida/docs/需求规格说明.md
xslandCursor f4075f6827 收口文档评审冲突并补齐 Sprint 执行计划
统一性能、token、配额与成本口径,补齐短信登录等缺口任务,并回写脚手架实测暴露的思考模式与峰谷计价约束。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 09:40:50 +08:00

40 KiB
Raw Permalink Blame History

「美搭」需求规格说明

版本:v1.2 | 更新日期:2026-08-13 | 状态:待评审

本文的定位:把散落在五份需求文档中的需求统一编号、统一优先级、统一验收标准,成为开发任务拆解与测试用例编写的唯一索引。

本文与其他文档的关系:

  • 各模块的设计细节与推理过程仍在各自的需求文档中(报告分级逻辑、记忆分层模型、知识分类体系等),本文不重复。
  • 本文提供可勾选、可验收、可指派的需求条目。开发任务、测试用例、验收清单都引用本文编号。
  • 技术实现方式见《技术架构文档》,技术选型理由见《技术选型与调研报告》。

1. 编号与优先级规范

1.1 编号规则

FR-<模块>-<序号>    功能需求(Functional Requirement)
NFR-<类别>-<序号>   非功能需求
CR-<序号>           合规需求(Compliance Requirement,不可裁剪)

模块代码:

代码 模块 主文档
ACC 账号与用户系统 用户系统与记忆系统-需求文档
MEM 记忆系统 用户系统与记忆系统-需求文档
RPT 美学报告 美学报告-需求文档
AGT 穿搭 Agent 穿搭Agent-需求文档
TRY 智能试穿(换装) 产品方案 §2.1
HAIR 发型设计 产品方案 §2.1
KB 美学知识库 美学知识库-建设方案
TASK 任务中心 产品方案 §2.7
BILL 权益与计费 产品方案 §3、§5
ADM 运营后台 技术选型报告 TD-25
WDB 我的衣橱 产品方案 §2.6
SYS 系统级/横切 技术架构文档

1.2 优先级定义

级别 含义 判定标准
P0 V1 必须有 缺它则核心闭环不成立,或无法合法上线
P1 V1 期望有 / V2 必须有 缺它体验受损但闭环仍在
P2 增强 锦上添花,可随时后置

1.3 验收标准的书写要求

每条 P0 需求必须有可判定的验收标准。不合格的写法与合格的写法对比:

❌ 不可验收 ✅ 可验收
报告生成速度快 初级报告 p95 生成耗时 < 90s,超时转后台并推送
建议要专业 生成结果中硬性禁忌规则违反数 = 0(黄金集 100 例全通过)
记忆要准确 显式偏好写入后,下一轮对话注入率 100%,且用户可在「我的记忆」看到该条

1.4 完成定义(DoD)

任一需求标记为完成,必须同时满足:

  1. 功能实现且通过验收标准;
  2. 单元/集成测试覆盖主路径与关键异常路径;
  3. 涉及生成内容的,已接入统一合规出口(CR-05);
  4. 涉及配额消耗的,已接入预扣-确认-退还三段式(FR-BILL-05),且消耗前有剩余量提示;
  5. 关键埋点已上报(FR-SYS-06);
  6. 失败态有用户可读的错误文案与下一步指引。

2. 功能需求

2.1 ACC 账号与用户系统

编号 需求 P 版本 验收标准 依赖
FR-ACC-01 华为账号登录(UnionID/OpenID) P0 V1 登录成功率 ≥ 99%;首次登录自动创建用户;UnionID 与内部 user_id 映射唯一 TD-15
FR-ACC-02 游客模式:未登录可体验核心功能 P0 V1 游客配额(唯一事实源:产品方案 §3.2 配额表游客行):换装 1 次、发型 1 次、初级报告 1 次、对话 3 轮,全部为设备维度终身额度(非每日);用尽后引导登录而非静默失败;额度用尽提示不出现价格字样 FR-BILL-06、FR-BILL-07
FR-ACC-03 游客数据迁移:登录后合并游客期间产生的数据 P0 V1 合并后游客期的报告、收藏、记忆归属新账号;重复合并幂等;多设备场景以先登录设备为准并提示 FR-ACC-02
FR-ACC-04 手机号验证码登录 P0 V1 作为华为账号登录之外的唯一独立兜底通道(一键登录已推 V2)。验证码 6 位数字、5 分钟有效、一次性使用、校验失败 5 次即作废;与华为账号可互相绑定;两条通道不得互相依赖(华为侧异常时手机号仍可登录,反之亦然) TD-15、TD-32、FR-ACC-14
FR-ACC-14 短信通道防刷(新增,原 NFR-SEC-05 未覆盖短信场景) P0 V1 单号码 60s 内 1 条 / 1h ≤ 5 条 / 24h ≤ 10 条;单 IP 24h ≤ 20 条、单设备 ≤ 10 条;触发阈值后强制人机校验;号码在日志与后台一律掩码;日发送量突增告警生效。验收需有脚本化刷量测试证明拦截有效 TD-32、NFR-SEC-03/05
FR-ACC-13 华为账号一键登录获取手机号 P1 V2 需企业开发者资质 + quickLoginMobilePhone scope。V1 不做(TD-29),仅为体验优化非能力缺口 TD-15、TD-29
FR-ACC-05 会话管理:access/refresh 双令牌,可撤销 P0 V1 登出后旧令牌立即失效;refresh 令牌服务端可单条撤销 —
FR-ACC-06 个人资料维护(昵称、头像、性别、年龄段) P0 V1 修改即时生效;头像走私有桶签名访问 —
FR-ACC-07 用户中心:报告入口、我的记忆、我的收藏、剩余额度、设置 P0 V1 各入口可达且状态正确(无报告时显示引导);额度展示为「今日剩余 N 次」,不出现价格与购买入口 FR-BILL-07
FR-ACC-08 授权同意记录:协议、隐私政策、人脸单独同意 P0 V1 人脸授权为独立单独同意页,非混入总协议;同意记录含版本号与时间,可查询 CR-01
FR-ACC-09 账号注销:数据删除 P0 V1 提交后 7 日内彻底删除个人数据;期间可撤销;删除完成有记录可审计 CR-03
FR-ACC-15 清空我的照片(新增,不注销账号) P0 V1 用户可一键删除全部已上传照片与派生结果图,保留账号与诊断结论;删除后 COS 对象与数据库引用同步清除,签名 URL 立即失效;操作有二次确认与结果回执,并写审计日志。⚠️ 涉及人脸相关数据删除,须纳入合规检查清单(CR-02) CR-02、CR-03
FR-ACC-10 个人信息导出 P1 V2 用户可申请导出自身数据,机器可读格式 CR-03
FR-ACC-11 未成年人保护:年龄判定与功能限制 P0 V1 识别为未成年时禁用外观评价类内容并提供监护提示(V1 无付费功能,故无付费限制项) CR-04
FR-ACC-12 多形象档案(帮家人诊断) P2 V2+ 数据模型 V1 预留 profile_id,不实现 UI —

2.2 MEM 记忆系统

编号 需求 P 版本 验收标准 依赖
FR-MEM-01 分层记忆模型 L0~L2 落地(身份/画像/显式偏好) P0 V1 三层均可写入、可查询、可注入;数据结构含置信度与来源 —
FR-MEM-02 报告结论自动写入 L1 画像记忆 P0 V1 报告完成后 L1 记忆同步生成,置信度继承诊断置信度 FR-RPT-06
FR-MEM-03 显式偏好抽取与写入 L2 P0 V1 用户明确表达偏好(「我不穿裙子」)后写入成功率 ≥ 90%,并给用户回执确认 FR-AGT-08
FR-MEM-04 记忆注入 Agent 上下文 P0 V1 注入 token ≤ 1400(V1 实际 ≤ 1200,L3 不启用;分项预算见架构 §7.2 为唯一事实源。原「≤ 500」系误写);有画像用户的回答需体现画像(人工抽检 ≥ 80% 体现);硬禁忌在任何裁剪策略下都不得被丢弃 FR-AGT-03、架构 §7.2
FR-MEM-05 「我的记忆」页面:可见、可编辑、可删除 P0 V1 用户可看到每条记忆的内容、来源、时间;删除后不再注入;编辑后优先级最高 CR-02
FR-MEM-06 置信度与衰减机制 P1 V1 定时任务按规则降低未强化记忆的置信度;低于阈值不再注入 —
FR-MEM-07 冲突消解:显式 > 报告 > 隐式,新 > 旧 P0 V1 同 key 冲突时按规则裁决并写变更事件;用户编辑不被自动覆盖 FR-MEM-05
FR-MEM-08 隐式行为推断 + 待确认机制 P1 V2 同属性连续 3 次拒绝生成待确认候选;确认后才生效;不打断当前任务 —
FR-MEM-09 L3 事件记忆与语义召回 P1 V2 可按语义召回历史事件(「上次面试穿的那套」) —
FR-MEM-10 L4 会话滚动摘要 P1 V2 长会话摘要压缩后 token ≤ 400,关键约束不丢失 —
FR-MEM-11 L5 衣橱记忆 P1 V2 与衣橱模块联动 FR-WDB-01
FR-MEM-12 记忆变更审计 P0 V1 每次写入/衰减/冲突/用户编辑均留事件记录 —

2.3 RPT 美学报告

编号 需求 P 版本 验收标准 依赖
FR-RPT-01 初级报告(免费)内容生成 P0 V1 覆盖需求文档 §2.2 全部模块;结构完整率 100%;无空模块 —
FR-RPT-02 触发时机:首次进入核心功能前引导生成 P0 V1 未有报告的用户进入换装/Agent 时出现引导,可跳过但有降级说明 FR-RPT-11
FR-RPT-03 拍照/上传引导与质量校验 P0 V1 不合格照片(多人/遮挡/过暗/侧脸过大)在分析前拦截并给出具体重拍指引,拦截准确率 ≥ 85% —
FR-RPT-04 问卷采集(生活场景、风格倾向、禁忌) P0 V1 问卷完成率 ≥ 80%;可跳过项不阻断生成 —
FR-RPT-05 视觉分析:体型 / 色彩季型 / 脸型 P0 V1 与人工标注一致率:体型 ≥ 80%、季型 ≥ 75%、脸型 ≥ 80%(各 30~50 样本) TD-05、TD-06
FR-RPT-06 结构化诊断结论(32 维度字典) P0 V1 每维度输出 value + confidence + evidence + rule_hits;缺失维度显式标注 FR-KB-04、TD-31
FR-RPT-07 报告文案生成(规则约束 + LLM 表达) P0 V1 硬禁忌违反数 = 0;结论与诊断值一致(无自相矛盾);黄金集 30 例人工评审通过 FR-KB-05
FR-RPT-08 生成后校验 P0 V1 校验项:禁忌违反、色值在色板内、维度引用存在、无绝对化医疗/身材贬损表述;不通过则重试或降级模板 —
FR-RPT-09 生成进度与等待体验 P0 V1 阶段文案随进度更新;超阈值转后台生成 + 完成推送;用户离开页面不丢任务 FR-TASK-01
FR-RPT-10 报告页展示与交互 P0 V1 分模块展开;术语配白话释义;低置信度维度降级表述 —
FR-RPT-11 无照片/拒绝授权的降级路径 P0 V1 可用问卷生成简版画像,明确告知能力差异,不阻断产品使用 —
FR-RPT-12 报告分享(长图) P0 V1 服务端渲染,跨设备一致;含 AI 生成显式标识;分享链接可失效 TD-12、CR-05
FR-RPT-13 重新生成 / 更新报告 P1 V1 有频控与配额(每 30 天 1 次,任务可 +1);历史版本保留可对比 FR-BILL-04
FR-RPT-14 报告与其他模块联动 P0 V1 报告结论驱动 Agent 建议、换装推荐、发型推荐 FR-MEM-02
FR-RPT-15 全面报告内容 P1 V2 覆盖需求文档 §2.3 全部模块;付费前有清晰的内容对比说明。V1 仅做预约留资,且预览卡片不展示任何价格(TD-28) FR-BILL-09
FR-RPT-16 全面报告付费触发点 P1 V2 触发点不影响免费体验完整性;无诱导性欺骗文案 —
FR-RPT-17 报告 PDF 导出 P2 V2 含 AI 标识元数据 —
FR-RPT-18 五行/命理模块 — 不做 已决定 V1 与 V2 均不纳入(TD-31)。诊断维度由 34 项减为 32 项;编号不再复用 —
FR-RPT-19 报告结论的认同/修正入口(新增) P0 V1 每个可修正维度旁提供「不准?修正一下」入口;用户修正后置信度置 1.0 且标记 user_confirmed,并即时反映到 L1 记忆;认同与修正行为全量埋点。⚠️ 这是 §3.1「结论认同率 > 70%、修正率 < 15%」两项核心质量指标的唯一数据来源,缺它则该指标无法计算 FR-MEM-05、FR-SYS-06
FR-RPT-20 全面报告预约留资(新增) P0 V1 初级报告结果页底部展示预览卡片(模糊目录 + 内容清单,不含价格);点击留资并埋点;记录预约数/预约率/停留时长/目录章节点击分布。⚠️ 这是 V1 唯一的商业化验证数据来源(预约率 ≥ 8% 为 V2 立项门槛),缺它则 V1 上线后无法回答"要不要做付费报告" FR-BILL-07、FR-SYS-06

2.4 AGT 穿搭 Agent

编号 需求 P 版本 验收标准 依赖
FR-AGT-01 文字对话与流式输出 P0 V1 首字 p95 < 2s(NFR-PERF-02);整轮 p95 < 15s(NFR-PERF-02b);断线可恢复 NFR-PERF-02
FR-AGT-02 意图识别(场景咨询/单品搭配/风格建议/越界) P0 V1 验证门槛 ≥ 85%,上线门槛 ≥ 90%(两档口径见美学报告 §9.4);越界意图(医疗、身材贬损、他人评价)正确拒答 —
FR-AGT-03 画像注入 + token 预算控制 P0 V1 输入 token ≤ 4200(V1 实际 ≤ 4000;分项预算见架构 §7.2 为唯一事实源。原 3700 因漏算会话近轮原文而偏低);预算超限时按既定优先级裁剪而非报错;硬禁忌永不裁剪 FR-MEM-04、架构 §7.2
FR-AGT-04 知识库混合检索 P0 V1 检索 p95 < 200ms;黄金集 Top-5 命中率 ≥ 80% FR-KB-06
FR-AGT-05 生成后校验(禁忌违反 = 0、色值在板内) P0 V1 黄金集 100 例违反数 = 0 FR-KB-05
FR-AGT-06 搭配方案结构化输出(卡片) P0 V1 输出可解析为结构化单品组合,字段完整 —
FR-AGT-07 快捷问题入口 P0 V1 首屏提供场景化快捷问题,点击直达 —
FR-AGT-08 显式偏好抽取与回执 P0 V1 抽取成功后给用户可见回执(「已记住」),可撤销 FR-MEM-03
FR-AGT-09 对话历史保存与会话列表 P0 V1 会话可回看;保留期符合数据保留策略 CR-03
FR-AGT-10 无画像用户的降级路径 P0 V1 无画像时给通用建议 + 报告引导,不空转 FR-RPT-11
FR-AGT-11 知识缺口埋点 P0 V1 无检索结果的 query 全量记录,可导出驱动内容生产 FR-KB-10
FR-AGT-12 输入输出双向内容审核 P0 V1 输入拦截、输出拦截均生效;审核不可用时 fail-close CR-06
FR-AGT-13 「为什么推荐」解释链 P1 V2 解释的事实部分来自知识库路径与规则 ID,非模型自由生成 FR-KB-07
FR-AGT-14 联动换装试穿 P1 V2 从建议卡片一键发起换装任务 FR-TRY-01
FR-AGT-15 联动发型设计 P1 V2 同上 FR-HAIR-01
FR-AGT-16 图片输入理解(穿搭评价) P1 V2 支持上传穿搭照获得点评,评价不含贬损表述 TD-04
FR-AGT-17 语音输入 P1 V2 端侧识别;识别失败可切文字 TD-14
FR-AGT-18 主动推荐(天气/日程驱动) P2 V3 — —

2.5 TRY 智能试穿

编号 需求 P 版本 验收标准 依赖
FR-TRY-01 换装任务提交与出图(三种工作流) P0 V1 任务成功率 ≥ 90%(排除输入不合格);p95 < 40s(不含排队) TD-00 改造
FR-TRY-02 输入前置校验(人像质量、单品白底图规格) P0 V1 不合格输入在提交前拦截并说明原因,不消耗配额(拦截发生在预扣之前) FR-KB-08
FR-TRY-03 结果图审核与合规标识 P0 V1 100% 经审核 + 显式水印 + 隐式元数据 CR-05、CR-06
FR-TRY-04 排队与容量保护 P0 V1 展示排队位次与预估时间;超阈值拒绝新任务并提示 FR-TASK-02
FR-TRY-05 失败退还配额 P0 V1 不可重试失败立即退还;对账日报中无「扣额未出图」记录 FR-BILL-05
FR-TRY-06 结果收藏与管理 P0 V1 可收藏、删除;删除后存储对象同步清理 —
FR-TRY-07 结果对比(原图/换装后) P1 V1 前后对比视图 —
FR-TRY-08 基于画像的单品推荐入口 P0 V1 推荐单品需 tryon_ready,避免推荐了却试不了 FR-KB-08
FR-TRY-09 多单品组合试穿 P2 V2 — —

2.6 HAIR 发型设计

编号 需求 P 版本 验收标准 依赖
FR-HAIR-01 发型更换与发色调整 P0 V1 成功率 ≥ 90%;p95 < 40s —
FR-HAIR-02 发型库适配标签打标(脸型/量感/直曲/长度/卷度/刘海/正式度) P0 V1 60 款发型 100% 完成打标并通过抽检复核 FR-KB-03
FR-HAIR-03 基于脸型与画像的发型推荐 P0 V1 推荐结果不含该脸型禁忌发型(规则校验通过率 100%) FR-RPT-06
FR-HAIR-04 结果审核与合规标识 P0 V1 同 FR-TRY-03 CR-05

2.7 KB 美学知识库

编号 需求 P 版本 验收标准 依赖
FR-KB-01 本体 Schema 与属性字典定稿 P0 V1 12 类实体的字段、枚举值、必填项全部明确并落库 —
FR-KB-02 自建色板(12 季型 Lab 色值) P0 V1 每季型含主色/点缀色/禁忌色,色值可用于计算;命名自研规避商标 TD-18
FR-KB-03 实体内容录入(单品、发型、场合、材质等) P0 V1 达到冷启动规模目标(见知识库文档 §9);每条含 source 与 license —
FR-KB-04 规则库(建议/禁忌,含硬约束标记) P0 V1 覆盖体型×场合、季型×色彩、脸型×发型三大矩阵;每条含依据说明与审核人 FR-ADM-02
FR-KB-05 规则引擎求值与硬约束校验 P0 V1 求值 p95 < 50ms;硬约束校验可拦截违规输出 —
FR-KB-06 混合检索链路(硬过滤+规则+向量+关键词+重排) P0 V1 黄金集 Top-5 命中率 ≥ 80%;硬过滤零漏(禁忌项不得出现在候选中) TD-08
FR-KB-07 图谱关系与解释路径输出 P1 V1 1~3 跳查询可返回路径,供解释链使用 TD-09
FR-KB-08 单品白底图流水线(抠图+规格校验+入库) P0 V1 10 件样本走通全流程;tryon_ready 标志准确;抠图人工质检通过率 ≥ 90% TD-07
FR-KB-09 内容审核与发布流程(草稿→审核→发布→归档) P0 V1 未审核内容不进入线上检索;发布可回滚 FR-ADM-03
FR-KB-10 知识缺口发现与优先级排序 P0 V1 缺口按命中频次排序,可导出为内容生产任务 FR-AGT-11
FR-KB-11 黄金测试集与回归 P0 V1 ≥ 100 条测试用例;CI 中自动跑;指标退化阻断合并 —
FR-KB-12 视觉模型辅助属性标注 P1 V1 单品属性自动预标注 + 人工复核;预标注准确率 ≥ 70%(降低人工量即达标) TD-04
FR-KB-13 趋势内容更新机制 P2 V2 — —

2.8 TASK 任务中心

编号 需求 P 版本 验收标准 依赖
FR-TASK-01 统一任务提交与状态查询 P0 V1 所有长耗时任务(报告/换装/发型)统一入口;状态机完整 —
FR-TASK-02 进度与预估时间 P0 V1 阶段文案 + 排队位次 + 预估剩余时间(基于历史 p50) —
FR-TASK-03 任务列表页(进行中/已完成/失败) P0 V1 失败项有原因与重试入口 —
FR-TASK-04 完成推送通知 P0 V1 推送到达率 ≥ 90%,分母为「已授权通知的用户」(TD-17 指出鸿蒙通知授权默认关闭,用全体用户作分母则该指标永远不可能达标,且会掩盖真实的推送链路问题);未授权用户由应用内任务中心轮询兜底,不计入本指标;文案不含敏感结论 TD-17
FR-TASK-05 幂等与重试 P0 V1 相同幂等键不重复扣减配额、不重复出图;可重试错误自动重试并有上限 —
FR-TASK-06 任务取消 P1 V1 排队中可取消并退还配额;执行中标记取消,不再返回结果 —
FR-TASK-07 死信与告警 P0 V1 连续失败进死信队列并告警,不静默丢弃 —

2.9 BILL 配额与计量

⚠️ V1 不收费(TD-28)。本模块在 V1 的职责是「配额限制 + 计量」,不含任何支付、订单、购买能力。

架构约束(不可妥协):V1 的配额账本与 V2 的点数账本必须是同一张表 —— V1 使用 system_grant(系统发放)、consume(消耗)、refund(退还)三种流水类型,V2 增加 purchase(购买)与 gift(赠送)。这样 V2 上支付时不需要数据迁移,也不需要重写扣减逻辑。

⚠️ refund 不可省略:它是预扣三段式(FR-BILL-05)的必需类型,也是熔断降级时退还额度(NFR-COST-02)的唯一途径。原文写「两种」属漏写,已更正。

编号 需求 P 版本 验收标准 依赖
FR-BILL-01 配额定义与周期重置 P0 V1 按周期(日/月/终身)正确重置;跨时区按 UTC+8 统一;额度耗尽有明确提示与获取途径 —
FR-BILL-02 配额账本与流水 P0 V1 余额可由流水完整重算校验;每日自动对账无差异;流水类型可扩展至购买/赠送而无需改表结构 —
FR-BILL-03 任务奖励额度发放 P0 V1 签到、完善资料、反馈、邀请、分享完成即到账;发放幂等(同一任务同一周期不重复发放) —
FR-BILL-04 配额消耗表(配置化) P0 V1 各功能消耗量可配置,不硬编码;改配置不需发版 TD-28
FR-BILL-05 预扣-确认-退还三段式 P0 V1 长耗时任务失败自动退还;无「扣了额度但没出图」case;退还幂等 FR-TASK-05
FR-BILL-06 服务端硬校验与防绕过 P0 V1 额度校验在服务端,客户端提示仅为体验;伪造请求无法超额;设备/账号/IP 三重限流 NFR-SEC-04
FR-BILL-07 额度耗尽文案约束 P0 V1 提示中不出现任何价格、购买、会员、升级字样;只提供「等待恢复」与「做任务换额度」两条路径 —
FR-BILL-08 成本归因记录 P0 V1 每次 AI 调用落 ob_ai_call,可按功能/模型/用户聚合;这是 V2 定价的唯一数据来源,不可裁剪 NFR-COST-01
FR-BILL-12 会员页静态展示 + 「上线提醒我」留资(新增) P0 V1 展示 V2 规划权益的静态对比表,不含任何价格与购买按钮;「上线提醒我」点击即留资并埋点;记录曝光数与留资率。⚠️ 这是���阅意愿的唯一验证数据来源(与 FR-RPT-20 验证的单次付费意愿是两件事,都需要) FR-BILL-07、FR-SYS-06
FR-BILL-09 华为 IAP 商品购买 P1 V2 服务端收据校验;purchase_token 唯一防重复发货;掉单可补发 TD-16
FR-BILL-10 会员等级与权益 P1 V2 权益判定集中在 billing 域,其他模块只查询 —
FR-BILL-11 订单与退款对账 P1 V2 日对账报表;异常订单告警 —

编号变更说明:原 FR-BILL-02(点数钱包)语义改为「配额账本」;原 FR-BILL-06FR-BILL-08(IAP / 会员 / 对账)顺延为 FR-BILL-09FR-BILL-11 且全部推至 V2;原 FR-BILL-09(成本归因)改为 FR-BILL-08。新增 FR-BILL-06(服务端硬校验)与 FR-BILL-07(文案约束)两条 V1 需求。

2.10 ADM 运营后台(极简版)

编号 需求 P 版本 验收标准 依赖
FR-ADM-01 独立登录与权限(运营/顾问/管理员) P0 V1 与用户端账号体系隔离;操作留审计日志 —
FR-ADM-02 知识条目与规则的增删改查 P0 V1 顾问可独立完成内容维护,无需工程介入 FR-KB-04
FR-ADM-03 素材上传与抠图任务触发 P0 V1 批量上传、查看抠图结果、标记 tryon_ready FR-KB-08
FR-ADM-04 内容发布与回滚 P0 V1 发布后线上检索生效;可回滚到上一版本 FR-KB-09
FR-ADM-05 知识缺口看板 P1 V1 按频次展示缺口,支持导出 FR-KB-10
FR-ADM-06 用户与配额查询(客服支持) P1 V1 可按用户查任务状态与配额流水,用于客诉处理(V1 无订单概念) —
FR-ADM-07 版本管理与效果看板 P2 V2 — —

2.11 WDB 我的衣橱

编号 需求 P 版本 验收标准 依赖
FR-WDB-01 衣物录入(拍照 + 自动属性识别) P1 V2 属性自动识别准确率 ≥ 70%,可人工修正 TD-04
FR-WDB-02 衣橱管理与分类 P1 V2 — —
FR-WDB-03 基于真实衣橱的搭配建议 P1 V2 建议只使用用户实际拥有的单品 FR-MEM-11

2.12 SYS 系统级需求

编号 需求 P 版本 验收标准 依赖
FR-SYS-01 统一鉴权与越权防护 P0 V1 所有资源访问校验归属;越权测试用例全通过 —
FR-SYS-02 统一错误码与用户可读文案 P0 V1 每个错误码有 message + hint;无裸露堆栈 —
FR-SYS-03 图片直传(预签名 URL) P0 V1 图片不经应用服务器;上传失败可重试 —
FR-SYS-04 LLM 网关(路由/降级/成本/Prompt 版本) P0 V1 主供应商故障自动切备用,切换耗时 < 3s;成本 100% 记录 TD-04
FR-SYS-05 三张监控看板 P0 V1 业务漏斗、AI 成本、任务健康均可用 TD-24
FR-SYS-06 全链路埋点 P0 V1 漏斗关键节点无缺失(上线前用测试账号走查验证) TD-23
FR-SYS-07 成本预警 P0 V1 日成本环比突增超阈值告警;场景级日预算生效 NFR-COST-02
FR-SYS-08 外部依赖降级策略 P0 V1 各依赖失效时表现符合架构文档 §2 表格;审核为 fail-close —
FR-SYS-09 数据备份与恢复演练 P0 V1 至少完成一次真实恢复演练并记录 RTO/RPO —

3. 合规需求(不可裁剪)

这些需求不接受「先上线后补」。缺失将直接导致无法上架或面临处罚。详见《合规与安全方案》。

编号 需求 依据 验收标准
CR-01 人脸信息单独同意 + 处理目的告知 人脸识别技术应用安全管理办法 独立同意页;拒绝后仍可使用降级功能;同意记录含版本与时间
CR-02 人脸原图不持久化,仅保留派生特征 同上 + 最小必要原则 处理完成后原图删除;临时桶生命周期 ≤ 2 小时;抽查无残留
CR-03 数据保留与删除:注销后 7 日内彻底删除 个人信息保护法 删除任务可审计;对象存储同步清理
CR-04 未成年人保护 未成年人网络保护条例 未成年账号禁用外观评价与付费;有监护提示
CR-05 AI 生成内容双重标识(显式 + 隐式元数据) 人工智能生成合成内容标识办法 + GB 45438-2025 所有生成物含可见标识;元数据含属性信息、服务提供者编码、27 位内容编号;经 CDN/压缩/客户端保存后元数据仍存在
CR-06 内容审核:输入与输出双向 生成式人工智能服务管理暂行办法 用户上传图、生成图、用户文本、模型输出、知识内容全覆盖;审核不可用时 fail-close
CR-07 关键词拦截库 备案要求 拦截库可维护;命中记录留存
CR-08 大模型登记 + 算法备案 生成式 AI 管理暂行办法 + 算法推荐管理规定 取得登记号/备案号;界面显著位置公示模型名称与编号
CR-09 隐私政策与用户协议 多项法规 明确 AI 生成、数据处理、第三方共享清单;版本化留存
CR-10 个人信息保护影响评估(PIA) 个人信息保护法 完成 PIA 报告并归档
CR-11 日志留存 深度合成管理规定 生成记录与审核日志留存 ≥ 6 个月
CR-12 不得提供医疗、命理等越界结论 广告法 + 内容合规 报告与对话中无诊疗承诺、无绝对化效果承诺;越界问题正确拒答

4. 非功能需求

4.1 性能(NFR-PERF)

🔒 本节是性能指标的唯一定义位置。产品方案 §8.3.1、美学报告 §10.2、穿搭 Agent §7.1/§8.3、技术架构 §12.1 一律引用本表编号,不得复述数值。此前五处文档给出过四套互相矛盾的数值,已在本轮收口。

编号 指标 目标 说明
NFR-PERF-01 普通 API p95 < 300ms 不含 AI 调用的读写接口
NFR-PERF-02 Agent 首字 p95 < 2s 这是 UX 上唯一关键的延迟指标(输出为流式)
NFR-PERF-02b Agent 整轮完成 p95 < 15s 按输出约 800 token、生成速率 60~100 tok/s 推算;原定 8s 不可达,已修正
NFR-PERF-03 初级报告 p50 / p95 < 45s / < 90s 视觉分析 + LLM + 渲染串行;原产品方案的 60s 过紧,以本表为准
NFR-PERF-04 全面报告 p95 < 180s V2 指标,需在 V2 立项时按实测重新基线
NFR-PERF-05 换装出图 p95(不含排队) 见下方两段式 不可用单一数值表达
NFR-PERF-06 知识检索 p95 < 200ms 硬过滤 < 50ms
NFR-PERF-07 长图渲染 p95 < 8s Playwright 服务端渲染
NFR-PERF-08 客户端首屏 < 1.5s —

4.1.1 换装/发型的性能必须用「现状基线 → 目标值」两段式表达

这是此前冲突最严重的一处(FR-TRY-01 写 p95 < 40s,产品方案写前端超时 ≥ 320s)。两个数字分别是目标与现状,但没有任何文档写明这层关系,导致 FR-TRY-01 按现有接口实测必然不达标。

阶段 换装 p95 发型 p95 来源
现状基线 待 T-P0-13 实测填入(前端超时按 ≥ 320s 设置,说明现状可能接近该量级) 待 T-P0-14 实测填入 现有服务实测
V1 上线门槛 ≤ 现状基线,且不得劣化 同 不以性能优化为 V1 前置条件
优化目标 < 40s < 60s 改造后(TD-00),排期不绑定 V1

纪律:FR-TRY-01 的验收标准改为「不劣于现状基线」,40s 作为优化目标单独跟踪。在 T-P0-13/14 完成实测前,任何文档不得引用 40s 作为验收线。

4.2 可靠性(NFR-REL)

编号 指标 目标
NFR-REL-01 月度可用性 ≥ 99.5%(约 3.6h/月停机预算)。产品方案原写 > 99.9% 已废弃 —— V1 是单可用区 Docker Compose 部署(架构 §14.1),无跨区冗余、无自动故障转移,承诺 99.9%(43min/月)在架构上不可兑现。99.9% 需等 V2 迁 TKE 多可用区后再谈
NFR-REL-02 任务最终成功率(含重试) ≥ 95%
NFR-REL-03 数据零丢失 已提交任务不因重启丢失
NFR-REL-04 RPO / RTO RPO ≤ 5min,RTO ≤ 1h(需演练验证)

4.3 成本(NFR-COST)

编号 要求
NFR-COST-01 所有付费调用 100% 可归因到功能与用户(落 ob_ai_call,不允许"先上线后补埋点")
NFR-COST-02 全局日成本熔断生效(自动降级,非仅告警):日累计成本达 60/80/90/100% 阈值时按既定顺序降级;在途任务放行;被熔断拒绝的请求必须退还配额(不得扣减);运营后台可查看状态并手动解除。验收:压测注入成本后四档降级均可复现,且配额账本无净扣减。详见架构 §13.3
NFR-COST-02b 场景级日预算:单功能超预算自动切轻量模型或暂停,并告警
NFR-COST-03 LLM 缓存命中率可观测,固定前缀设计到位
NFR-COST-04 GPU 实例按需启停,空闲不计费

4.4 安全(NFR-SEC)

编号 要求
NFR-SEC-01 敏感数据传输与存储加密;密钥不落代码
NFR-SEC-02 结果图私有桶 + 短期签名 URL + 防盗链
NFR-SEC-03 日志脱敏(手机号、UnionID、诊断结论、图片地址)
NFR-SEC-04 Prompt 注入防护:用户内容不得影响系统指令与工具决策
NFR-SEC-05 防刷:设备指纹 + 频控 + 异常注册风控 + 短信轰炸防护(FR-ACC-14,短信是被刷时的直接现金损失,且没有配额兜底)

4.5 可维护性(NFR-MAINT)

编号 要求
NFR-MAINT-01 契约先行:接口 schema 先定义,客户端类型由 OpenAPI 生成
NFR-MAINT-02 ruff + mypy strict 进 CI,失败阻断合并
NFR-MAINT-03 域间依赖规则由工具校验,禁止跨域直查表
NFR-MAINT-04 黄金集回归进 CI,指标退化阻断合并
NFR-MAINT-05 规则/色板/定价/模型路由全部配置化,不硬编码
NFR-MAINT-06 数据库变更必须走 Alembic 且向后兼容

4.6 体验(NFR-UX)

编号 要求
NFR-UX-01 所有长耗时操作有进度反馈与可离开能力
NFR-UX-02 所有失败态有原因说明 + 下一步指引
NFR-UX-03 专业术语必须配白话释义
NFR-UX-04 外观相关表述遵循「描述而非评判」,不使用贬损性词汇
NFR-UX-05 低置信度结论使用不确定表述,不做断言

5. V1 范围矩阵(一页看清)

5.1 V1 包含(P0 全量)

模块 V1 交付内容
账号 华为账号授权登录 + 手机号验证码、游客与迁移、资料、同意授权、注销、未成年保护
记忆 L0~L2 + 报告写入 + 注入 + 我的记忆页 + 冲突消解 + 审计
报告 初级报告完整闭环(引导→拍照→问卷→分析→诊断→文案→校验→长图→分享)
Agent 文字对话、意图识别、画像注入、混合检索、生成后校验、偏好抽取、缺口埋点
换装 三工作流出图、前置校验、审核标识、排队保护、失败退还配额、收藏
发型 发型更换与发色、60 款打标、基于脸型推荐
知识库 本体定稿、自建色板、冷启动内容、规则库、混合检索、白底图流水线、黄金集
任务中心 统一提交与状态、进度、列表、推送、幂等、死信告警
配额与计量 配额定义与重置、配额账本与流水、任务奖励发放、消耗表配置化、预扣三段式、服务端硬校验、成本归因埋点。⚠️ 不含支付、订单、购买
后台 极简版:知识与规则维护、素材上传、发布回滚、缺口看板
系统 鉴权、错误码、直传、LLM 网关、三看板、埋点、成本预警、降级、备份演练
合规 CR-01 ~ CR-12 全部

5.2 V1 明确不做

内容 原因 归属
全部支付能力(IAP、会员、点数购买、订单、退款、对账) V1 完全不收费,用配额限制控成本。定价需要 V1 采集的真实数据才有依据(TD-28) V2
全面报告 需先用 V1 预约率验证意愿;V1 预览卡片不展示价格 V2
广告变现 V1 不接任何广告,避免影响首发体验与评价 V2+
华为账号一键登录 需企业资质 + scope;属体验优化非能力缺口(TD-29) V2
我的衣橱 依赖属性识别与记忆 L5,工作量大 V2
语音输入、图片输入理解 非核心闭环 V2
联动试穿/联动发型(从 Agent 一键跳转) 各自功能先独立稳定 V2
解释链自然语言化 数据结构 V1 已具备,展示层后置 V2
多形象档案 仅预留数据字段 V2+
五行/命理 永久不做:收益边缘但渠道审核风险全局(TD-31) 不做
多端(iOS/Android) 见 TD-01 V2+

5.3 V1 的前置阻塞项(不属于开发,但决定能否上线)

事项 状态 说明
大模型登记 + 算法备案 ✅ 已完成 原周期 2~4 个月的关键路径已解除。转为持续义务:编号界面公示、备案范围一致性、变更备案(CR-08)
备案覆盖的模型清单核实 ⏳ 唯一开放项 若备案未覆盖 DeepSeek + GLM 两家,双路由属超范围,需办变更或 V1 先单路由(TD-19)
华为企业开发者资质 ✅ 已解除依赖 V1 不接 IAP,一键登录降级 V2(TD-29)
全职形象顾问到岗 🔴 新的关键路径 规则库产能直接决定 M2 排期(TD-27)
单品素材自采产能 🔴 新的关键路径 300 件 tryon_ready 需按周产能倒排;备案解除后这是最长工序(TD-26)

6. 需求变更控制

情形 处理
新增 P0 需求 必须同时说明它挤掉哪个现有 P0,或延后哪个里程碑
合规需求(CR-xx) 不可裁剪、不可降级,只能新增
验收标准调整 需在本文更新并记录原因,不允许口头放宽
优先级变更 在本文标注变更日期与原因

7. 相关文档


变更记录

日期 版本 变更
2026-08-13 v1.2 文档一致性评审修订。§4.1 升为性能指标唯一事实源,并修正三处不可达/不可兑现的目标:Agent 整轮 8s→15s(按 800 输出 token 与生成速率推算,8s 不可达)、可用性 99.9%→99.5%(V1 单可用区无冗余)、换装改「现状基线 → 目标值」两段式(40s 是改造目标、320s 是现状,此前混为一谈导致 FR-TRY-01 必然不达标)。NFR-COST-02 由「日成本预警」升级为「全局日成本熔断(自动降级)」 —— 原设计只有告警,而按人头发配额封不住总成本。FR-MEM-04 注入预算 500→1400、FR-AGT-03 总输入 3700→4200(原值漏算会话近轮原文)。FR-AGT-02 准确率拆验证/上线两档。配额流水由「两种」更正为三种(refund 不可省略)。新增 5 条需求:FR-ACC-14 短信防刷、FR-ACC-15 清空照片、FR-RPT-19 结论认同/修正入口、FR-RPT-20 全面报告预约留资、FR-BILL-12 会员页留资 —— 后三条此前"有指标但无数据来源"。FR-ACC-02 补入游客配额引用;FR-TASK-04 明确到达率分母为已授权用户
2026-08-13 v1.1 按业务决策收口调整需求范围。§2.9 BILL 由「权益与计费」改为「配额与计量」:移除 V1 全部支付能力,新增 FR-BILL-06(服务端硬校验防绕过)与 FR-BILL-07(额度耗尽文案不得出现价格字样);IAP/会员/对账顺延至 FR-BILL-09~11 并推至 V2。FR-ACC-04 改为手机号验证码登录(P0),一键登录移为 FR-ACC-13(V2)。FR-RPT-18 五行模块标记为永久不做。§5.2 新增「全部支付能力」「广告变现」两项 V1 不做。§5.3 前置阻塞项状态更新:备案已完成、企业资质依赖已解除,新的关键路径为全职顾问到岗与素材自采产能
2026-08-13 v1.0 首次建立统一需求编号体系,收拢五份需求文档