Files
group_fqcd_jr/开发文档/D5.1-业务流程-MVP版-最终交付-2026-09-15.md
T
张胜宇 bc61d5c579 docs: 入库权威文档目录(客服agent/ 24 份 + 开发文档/ 50 份,替换旧命名的过期副本)
## 为什么做这一步

权威文档 74 份此前**只在本机**,评审者 clone 分支后看不到任何设计文档;而仓库里那两份同名目录
是 **2026-09-16 之前的过期副本,连文件名都是旧的**(无体系编号)。本次按「**权威覆盖过期**」入库。

## 入库内容

| 目录 | 文件数 | 体积 | 说明 |
|---|---|---|---|
| `客服agent/` | 24 | 0.77 MB | `D2.1`~`D2.6` 对外交付四件套 + 演示脚本/答辩报告 + `_build` 构建工具 |
| `开发文档/` | 50 | 2.16 MB | `D1.x` 索引与决策、`D3.x` 方案、`D4.x` 清除与重构留痕、`D5.x` 业务流程、`D6.x` 业务事实基座、`D7.x` 交付物、`D8.x` 规范 |

**旧的过期副本整体移除**(`客服Agent执行Todolist.md` → `D2.1-客服Agent执行Todolist.md` 之类
的改名 + 新增 `D2.5`/`D2.6`),入库后目录内容与权威副本**逐文件一致(零差异,已复核)**。

## 入库前的安全扫描(必须留痕)

- 扫描规则:`sk-` 类密钥 / `Bearer` 长串 / `password=`、`api_key=` 赋值 / 会话中出现过的两把明文 key 片段。
- 结论:**真实密钥只出现在 `.env`**(已被 `.gitignore` 命中,未入库);`.env.example` 与
  `config/risk.env.example` 只有**空占位**。
- 文档内唯一命中是 `D3.1` 里一处**截断的示例 JWT**(`Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`),
  末尾带省略号,是接口文档的示意值,**不是可用凭据**。
2026-09-20 15:03:15 +08:00

195 lines
8.8 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.
# 业务流程 —— MVP 版(最终交付)
> **体系编号**:`D5.1` · 域:五、业务流程基线 · 编号体系见 `D1.1` §4.0
> **日期**:2026-09-15
> **状态**:**已确认定稿**(4 项待确认已全部答复)
> **验收方式**:**演示跑通**
> **定位**:让三条业务线跑通、可演示。细化规则归档为未来扩展(见 §六)
---
## 〇、确认结果
| # | 事项 | 结论 |
|---|---|---|
| 1 | 不做清单 | ✅ **确认**(卡级体系、SLA 复杂兜底、一致性校验等均不在 MVP) |
| 2 | 3 条红线 | ✅ **保留** |
| 3 | 2 条低成本项(不匹配告知 / 留痕最小三条) | ✅ **进 MVP** |
| 4 | 验收方式 | ✅ **演示跑通** |
---
## 一、MVP 范围
### 1.1 做
| 线 | 范围 |
|---|---|
| **游客** | 查公司公开信息 + 金融行业基础信息 |
| **客服** | 基础问答(含会话上下文)、查基金信息、**不能**查持仓、**不能**代买、可发工单 |
| **投顾** | 9 步主干 + agent 生成 / 投顾审核 + 风险揭示与客户确认 |
### 1.2 不做(归未来扩展,见 §六)
卡级体系(金卡/白金/钻石/私行)及其分派与升降级、工单 SLA 的复杂兜底(值班池/分层转单)、投顾客户数上限与专长标签、客户主动换投顾、转移窗口期精细处理、新开户观察期、⑤⑦ 一致性校验、留痕完整体系。
---
## 二、MVP 流程
### 2.1 游客线
```
未登录 → 进入平台 → 查公司公开信息 / 金融行业基础信息
❌ 不得提供投资建议(不推荐具体产品、不预测涨跌、不承诺收益)
```
### 2.2 客服线
```
已登录客户 → 客服对话
✅ 金融基础问答 / 公司信息 / 基金信息查询 / 会话上下文记忆
❌ 不能用自然语言查自己的持仓(客服对话无此权限)
❌ 不能代客户购买基金
✅ 客户要建议 → 发起工单给投顾
查看持仓 → 走「我的持仓」自助界面(唯一入口)
购买基金 → 客户自助
```
### 2.3 投顾线(9 步主干)
| # | 环节 | 执行方 | 产出 |
|---|---|---|---|
| ① | **风险测评分级** | **客户本人(问卷)** | C1–C5 + 有效期 |
| ② | **确定投资目标** | 客户(投顾可代录) | 投资目标 |
| ③ | 拉取客户画像 | 系统 | 画像(持仓/交易/偏好) |
| ④ | 组合分析 | 系统 | 组合诊断 |
| ⑤ | 资产配置 | 系统 | 各类资产**目标比例** |
| ⑥ | 候选产品筛选 | 系统 | 候选清单(三重校验) |
| ⑦ | **生成方案** | **agent** | 方案草稿 |
| ⑧ | **审核方案** | **投顾** | 通过 / 驳回 |
| ⑨ | **风险揭示 → 客户确认** | 投顾 → 客户 | 客户确认 |
**闭环**:⑨ → 生效 → 通知客户 → 引导至场内模拟交易 → 跟踪
**关键顺序**:
- **① 测评在前、② 目标在后**
- **⑦ 生成方是 agent,⑧ 审核方是投顾**
- **先风险揭示、后客户确认**(揭示在确认前才有效)
**全局约束**:不生成交易指令;如需交易跳转场内模拟交易。
**客户拒绝**:打回 → agent 重新生成。
---
## 三、MVP 必守项
### 3.1 三条红线
| # | 红线 | 为什么不能省 |
|---|---|---|
| **1** | **风险等级(C1–C5)唯一来源是问卷测评**;对话/记忆/人工均不可修改 | 适当性的根基。该隔离在现有记忆架构中已天然成立(记忆只影响期限、资产类别两类画像字段) |
| **2** | **先风险揭示、后客户确认** | 顺序反了揭示即失效。零成本 |
| **3** | **不生成交易指令,交易跳转** | 划清"投资建议"与"交易执行"。业务性质问题 |
### 3.2 两条已确认进 MVP 的项
| # | 项 | MVP 落地形态 |
|---|---|---|
| **4** | **适当性不匹配告知** | 简化版:提示"该产品超出您的风险承受能力" + 要求客户**主动确认** + 记录 |
| **5** | **留痕最小三条** | ① 方案**版本化**,客户确认**绑定版本号** ② 风险测评结果(含问卷版本与时间)**随方案固化** ③ 产品**排除清单与原因** |
---
## 四、演示验收路径(验收标准 = 演示跑通)
### 4.1 建议的演示顺序
| 序 | 场景 | 预期可见 |
|---|---|---|
| 1 | **游客** 浏览平台 | 公司/行业公开信息正常展示,无投资建议类内容 |
| 2 | **客户登录** → 客服问答 | 正常回答金融基础问题;上下文可延续 |
| 3 | **客户** 问"我的持仓" | 客服**明确说明无此权限**并**引导至自助页面** |
| 4 | **客户** 自助查看持仓 / 自助购买 | 走通持仓查看与购买 |
| 5 | **客户** 发起工单 | 工单生成,投顾侧可见 |
| 6 | **投顾登录** → 选客户 → 走 9 步 | 测评 → 目标 → 画像 → 分析 → 配置 → 筛选 → **agent 生成方案** |
| 7 | **投顾审核方案** | 审核通过 / 驳回 |
| 8 | **风险揭示 → 客户确认** | 揭示文本展示,客户确认并留痕 |
| 9 | **跳转场内模拟交易** | 引导客户前往交易页 |
### 4.2 ⚠️ 演示前必须处理的一个阻断点
**当前系统状态下,第 6 步与第 7 步会产出"没有产品的空方案"**:
实测结果为——
```
fin_product = 26 ← 产品本身有
advisor_product_suitability_reference = 0 ← 适当性证据:空
advisor_product_contract_snapshot = 0 ← 合同证据:空
→ candidate_count = 0 → 方案里 products = []、excluded_candidates = []
```
**原因**:第 ⑥ 步的三重校验是**失败关闭**设计——缺少适当性与合同证据时**排除全部产品**。
**因此在演示中会出现**:方案生成成功(状态 `pending_review`),但**方案里没有具体产品**,界面显示"当前没有通过适当性与证据校验的产品"。
**要让"演示跑通"成立,必须先处理这一条**,三个选项:
| 选项 | 做法 | 说明 |
|---|---|---|
| **甲** | 导入**真实**的销售适当性披露 + 基金合同文件 | 产出可信,需要你提供文件 |
| **乙** | 造**明确标注为演示**的测试证据 | 注意:项目代码注释明确声明**不伪造**证据来源字段,需你明确同意并标注 |
| **丙** | 演示时**主动说明**"产品列表因证据链未就绪而为空,属数据缺失而非功能问题" | 不改数据,但演示观感受影响 |
> **⚠️ 这是"演示跑通"这个验收标准当前唯一的硬阻断点**,其余环节已可走通。
### 4.3 另外两条与演示观感相关的现状
| 现象 | 原因 | 影响 |
|---|---|---|
| 第 ④ 步组合分析结果为空 | 关系数据未就绪,降级后返回空 | 演示时该环节无内容可看;建议演示时说明 |
| 第 ⑨ 步之后的"通知/跟踪" | MVP 范围内实现程度未定 | 若未实现,演示可到"客户确认"为止 |
---
## 五、改动清单(原始提纲 → MVP 定稿)
| # | 原始表述 | 定稿 |
|---|---|---|
| 1 | ①填投资目标 → ②风险测评 | **①风险测评分级 → ②定投资目标** |
| 2 | ⑦生成推荐方案(主体未明) | **⑦ agent 生成 → ⑧ 投顾审核**(明确分工) |
| 3 | "可了解自己的持仓"与"不能查询持仓"并存 | **自助界面可查 / 客服对话不可查** |
| 4 | ⑨ 客户确认即结束 | 补 **生效 → 通知 → 引导交易 → 跟踪** |
| 5 | 无拒绝路径 | 补 **打回 → agent 重新生成** |
| 6 | 披露与确认顺序未明 | 明确 **先风险揭示、后客户确认** |
| 7 | 无适当性不匹配处理 | 补 **简化告知 + 客户主动确认 + 记录** |
| 8 | 无留痕 | 补 **最小三条**(版本绑定 / 测评固化 / 排除清单) |
| 9 | "C1–C5 的固定投顾推荐" | 归入**未来扩展**(新开户基础参考方案) |
---
## 六、未来扩展清单(已归档,可直接作为下一阶段输入)
| 主题 | 归档文档 |
|---|---|
| 卡级体系(分派、升降级、跨档、单点风险、投顾多档) | `投顾归属与工单分派-业务分析-修订版-2026-09-15.md` |
| 工单 SLA 与分层兜底、归属规则(上限/主动更换/转移窗口) | 同上 |
| 两个等级维度(卡级 vs 风险等级,**卡级高 ≠ 风险承受高**) | 同上 |
| 留痕完整体系(逐环节表 + 四条硬性要求) | `业务流程评审-答复对照与修订-2026-09-15.md` §二 |
| ⑤⑦ 一致性三层约束 + 审核对照表 | 同上 §三 |
| 异常分支细化(7 类) | `业务流程(正式版)-2026-09-15.md` §4.3 |
| 记忆影响力边界(三层效力) | 同上 §3.2 |
| 新开户基础参考方案 | 同上 §五 |
| 客户拒绝的结构化原因(多选:收益/风险/期限/具体产品) | `业务流程评审-答复对照与修订-2026-09-15.md` §六 |
---
## 七、下一步
**要让"演示跑通"这个验收标准达成,当前只差一件事**:处理 §4.2 的产品证据链(选项甲/乙/丙 由你定)。
其余环节已具备走通条件。