Files
group_fqcd_jr/开发文档/D1.2-南方基金业务事实基座与虚构数据规范-2026-09-17.md
张胜宇 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

377 lines
31 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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.
# 南方基金业务事实基座与虚构数据规范
> **体系编号**:`D1.2` · 域:一、治理与索引 · 编号体系见 `D1.1` §4.0
**编号**:CS-CONTENT-2026-015 | **版本**:**v1.1** | **日期**:2026-09-17
**定位**:知识源与 RAG 语料改写的**唯一口径来源**。凡与本文冲突的知识源表述,以本文为准。
**性质**:内部资料。**「〔真实〕」= 公开可核实的工商与披露事实;「〔虚构〕」= 教学实训用虚构数据;「〔口径〕」= 本项目自定的内部约定。**
> **v1.1 相对 v1.0 的三处修正**(均由二次取证发现,见 §0.2):
> 1. **v1.0 §0 把 `公司信息\南方基金-*` 判为「✅ 已正确」是错的** —— 它只对了品牌名,**身份是「代销机构」**,与品牌名自相矛盾。
> 2. **新增第 4 个品牌表面**:`app/static/portal/**` 前端 **24 个文件**使用 `南方财富`,这是评审**唯一会用眼睛看到**的品牌面,v1.0 未收录。
> 3. **v1.0 §4.2 的虚构量级全部偏低**(AUM 4,860 亿 vs 真实公开口径约 1.43 万亿),违反「写错比写虚构更致命」自身原则 → 改为 **§4.2 三分法**。
---
## 0. 为什么要有这份文档
### 0.1 全项目并存 **4 套品牌 + 1 个身份矛盾**
| # | 位置 | 品牌 | 身份设定 | 判定 |
|---|---|---|---|---|
| 1 | `开发文档\公司信息\南方基金-*`(3 份) | 南方基金 | ❌ **代销机构**(「不自行发行公募基金」「合作基金公司 126 家」) | 🔴 **品牌对、身份错** |
| 2 | `开发文档\公司业务\`、`用户研判规则\`、`金融政策\`(7 份) | `XX科技` | ❌ **持牌综合财富管理机构**(信贷 + 代销 + 保险经纪) | 🔴 品牌、身份双错 |
| 3 | `group_fqcd_jr\knowledge\**`(**真正入库的语料**,6 份) | **南方科技** | ❌ 同上(代销机构) | 🔴 品牌、身份双错 |
| 4 | `group_fqcd_jr\app\static\portal\**`(**前端**,24 份) | **南方财富** | —(仅作图面品牌) | 🔴 品牌错(**肉眼可见**) |
| 5 | `group_fqcd_jr\app\**`、`tools\**` 业务代码 | **南方基金** | ✅ **基金管理人**(`fin_product.fund_manager = '南方基金'`、`hq.py` 自有产品白名单) | ✅ 真实、可用 |
### 0.2 两个比「品牌没统一」严重得多的问题
**问题一:`D6.1.1-南方基金-企业信息.md` 是「代销机构」穿了「基金管理人」的名字。**
它写着「公司**不自行发行公募基金**,所有基金产品均为代销」「合作基金公司 **126 家**」「营业收入 38.6 亿中手续费及佣金 **26.8 亿**」「员工 **1,268 人**、营业网点 **56 家**」「成立于 **2013 年 4 月**,杭州滨江」。**这些全部是「第三方基金销售机构」的画像**,与「南方基金管理股份有限公司」(成立于 1998-03-06、注册于深圳福田、注册资本 3.6172 亿)**不是同一类主体**。这份文件被当作「已正确的参照物」使用,是**最危险的错误源**。
**问题二:`D6.2.2-企业金融服务方案.md` 通篇是银行业务。**
流动资金贷款 / 固定资产贷款 / 票据贴现 / 供应链金融(应收账款、存货质押、预付款融资)/ 内保外贷 / 结构性存款 / 结售汇。**基金管理人依法不得吸收存款、发放贷款、办理票据贴现与结售汇。** 只换品牌名会产出「南方基金办理票据贴现」这种**一眼假的硬伤**。
**问题三(v1.1 新增):数据层与知识层已经互相矛盾。**
`group_fqcd_jr` 的业务代码**早已按「基金管理人」实现**:
- `tools\fetch_live_quotes.py:61`、`backfill_product_snapshot.py:59`、`sync_advisor_market_data.py:61` —— `WHERE fund_manager = '南方基金'`
- `hq.py:89/94/126/220/298` —— 「基金代码不在**南方基金白名单**内」直接拒绝
- `tools\sync_nav_history.py:16` —— 「`fin_product` 里有非南方基金的产品(510300 是华泰柏瑞的)」
⇒ **产品主数据里 `fund_manager='南方基金'` 指的是「由本公司管理的基金」**,即**自主发行**。而知识层却写「本公司不发行公募基金」。**两边不可能同时为真,必须有一个改。** 本基座裁定:**以「公募基金管理人 + 官方直销」为准**(与真实主体一致、与代码一致、改动面最小)。
### 0.3 因此本次的做法
**「先立基座 → 再改写内容 → 最后统一品牌面」**,而不是全局替换品牌名。
---
## 1. 品牌与主体口径
| 项 | 取值 | 来源 |
|---|---|---|
| 平台品牌 = 主体名称 | **南方基金** | 〔真实〕 |
| 公司全称 | **南方基金管理股份有限公司** | 〔真实〕 |
| 简称 | 南方基金 | 〔真实〕 |
| 英文名 | **China Southern Asset Management Co., Ltd.** | 〔真实〕 |
| 平台定位 | **本公司公募基金与专户产品的官方直销平台** | 〔口径〕 |
| 对外客服人格 | 奶龙(沿用,专业 + 适度活泼) | 〔口径〕 |
> ⚠️ **v1.0 曾写「本公司公募基金与专户产品的官方直销平台」但同段又把身份判成代销机构 —— 现将身份唯一确定为「基金管理人」,见 §3。**
### 1.1 已作废的旧口径(全项目禁止再出现)
| 作废值 | 曾用于 | 出现量(实测) |
|---|---|---|
| `XX科技` / `XX科技有限公司` | `开发文档\公司业务`、`用户研判规则`、`金融政策` | 7 份文件 |
| `南方科技` | `group_fqcd_jr\knowledge\**` | 6 份文件(`_chunks.jsonl` 312 行) |
| **`南方财富`** | **`group_fqcd_jr\app\static\portal\**` 前端 + 3 个 py** | **24 份文件(v1.1 新增)** |
| `南方财富管理有限公司` | 早期 `公司信息\` 版本 | 已清 |
| `400-XXX-XXXX` / `400-826-9518` / `15936583816` | 全项目占位与旧值 | 见 §7.2 |
| `nanfangwm.com` / `nanfangtech.com` / `xxtech.com` | 旧域名与邮箱 | 见 §7.2 |
| 「智能财富管家系统」 | 旧系统名 → 已改「**智能服务系统**」 | 见 §7.2 |
| `南方基金管理有限公司`(少「股份」) | `promotion.js:29` + 2 个测试 | **3 处,v1.1 新增** |
### 1.2 系统名
| 用途 | 名称 |
|---|---|
| 平台/系统统称 | **南方基金·智能服务系统** |
---
## 2. 真实公开事实基座(〔真实〕,可直接用于知识源)
> 全部来自公开渠道(工商公示、基金业协会、公司官网、基金定期报告),**可被评审核实**。**这些不能写错**——写错比写「虚构」更致命。
> **数据截止**:除标注外,采用 2026 年可获取的最新公开口径。
| 项目 | 值 |
|---|---|
| 公司全称 | 南方基金管理股份有限公司 |
| 统一社会信用代码 | `91440300279533137K` |
| 公司类型 | **股份有限公司(非上市、国有控股)** |
| 成立日期 | **1998-03-06**(经中国证监会批准设立,**国内首批规范基金管理公司之一**,「老十家」) |
| 设立批准文号 | 中国证监会证监基字〔1998〕4 号 |
| 注册资本 | **人民币 3.6172 亿元(36,172 万元)**;2019-07-30 经核准通过员工持股计划 + 股东增资由 3 亿元增至 3.6172 亿元 |
| 注册及办公地址 | **深圳市福田区莲花街道益田路 5999 号基金大厦 32-42 楼**(邮编 518048) |
| 法定代表人 / 董事长 | **周易**(2022-05-27 起兼任;同时任华泰证券董事、首席执行官) |
| 总经理 | **杨小松** |
| 客服热线 | **`400-889-8899`** |
| 公司总机 / 传真 | 0755-82763888 / 0755-82763889 |
| 官网 | **`www.nffund.com`** |
| 客服邮箱 | `service@nffund.com` |
| 经营范围(许可项目) | **基金募集、基金销售、资产管理、中国证监会许可的其他业务**(一般经营项目:无) |
| 股权结构 | 华泰证券 **41.16%**、深圳市投资控股 **27.44%**、厦门国际信托 **13.72%**、兴业证券 **9.15%**、厦门合泽吉 1.72%、合泽祥 2.24%、合泽益 2.25%、合泽盈 2.32% |
| 分公司 | 北京、上海、深圳、南京、成都、合肥 **6 地** |
| 境外子公司 | **南方东英资产管理有限公司**(中国香港)—— **境内基金公司获批成立的第一家境外分支机构** |
| 境内子公司 | **南方资本管理有限公司**(深圳前海) |
### 2.0 真实业务资质(〔真实〕,改写「公司持有哪几块牌照」时必须用这一版)
| 年份 | 资质 | 说明 |
|---|---|---|
| 1998 | 公募基金管理资格 | 首批规范基金管理公司 |
| 2002 | 全国社保基金投资管理人 | 首批 |
| 2005 | 企业年金投资管理人 | 首批 |
| 2007 | **QDII 资格** | **业内首家** |
| 2008 | 特定客户资产管理(专户)业务资格 | 首批 |
| 2012 | 保险资金投资管理人 | — |
| 2016 | 基本养老保险基金证券投资管理机构 / 职业年金投资管理业务资格 | 首批 |
| 2019 | **基金投资顾问业务试点** | 首批获准 |
| 2020 | 基础设施公募 REITs 业务资格 | — |
> 🔴 **替换关系**:知识源里的「基金销售牌照 + 保险经纪牌照 + 证券投资咨询资格 + 私募基金管理人登记 + QDII」**五项**,应整体替换为**上表的基金管理人资质序列**。「保险经纪」尤其必须删除(详见 §3.2)。
### 2.1 真实产品样例(〔真实〕,用于产品手册的锚点产品)
| 产品 | 代码 | 已核实事实 | 复核状态 |
|---|---|---|---|
| 南方中证 500ETF(场内 ETF) | **510500** | 2013 年成立;跟踪中证 500 指数;基金经理**罗文杰、龚涛**;管理费 0.15%/年、托管费 0.05%/年;托管行中国农业银行;风险等级 R3 | 代码✅ / 经理✅ / **最新规模待复核** |
| 南方中证 500ETF 联接(LOF)A | **160119** | ETF 联接基金;基金经理罗文杰;管理费 0.15%/年 | 代码✅ / **规模与费率待复核** |
| 南方安康混合 A | **004517** | **混合型,中低风险(R2)**;基金经理龙一鸣、柯达元 | 代码✅ / 风险等级✅ |
| 南方科技创新混合 A | **007340** | 混合型;曾获 2021 年度金基金·责任投资(ESG)基金奖 | 代码✅ |
| 南方沪深 300ETF 联接 A | **202015** | ETF 联接基金 | 代码✅ |
> ⚠️ **使用纪律(三条硬约束)**:
> ① 真实产品的**代码必须与公开披露一致**,**不得张冠李戴**;
> ② **不得**为真实产品编造收益率、规模、基金经理或评级 —— 凡真实产品,**只写已核实字段,未核实的宁可不写**;
> ③ 需要承载「收益率 / 规模 / 回撤 / 费率演示」时,**一律改用虚构产品**(§4.3),并在字段旁标「示例代码」。
> 🔴 **v1.0 曾把「510500 规模 380.87 亿元(2026-06-30)」写成已核实值,v1.1 降级为「待复核」** —— 未独立核实的动态数字不得进基座。
---
## 3. 身份边界:基金管理人能做什么、不能做什么
**这是本次改写最核心的一节。知识源里凡越界业务,一律删除或改为「本公司不涉及」。**
### 3.1 ✅ 本公司可开展的(改写后知识源只允许写这些)
| 业务类别 | 具体内容 | 监管依据 |
|---|---|---|
| 公募基金 | 募集、**官方直销**、投资管理、份额登记 | 《证券投资基金法》《公开募集证券投资基金运作管理办法》 |
| 专户业务 | 特定客户资产管理(一对一 / 一对多);合格投资者 + 面签 + 冷静期 | 《基金管理公司特定客户资产管理业务试点办法》 |
| 养老金投资管理 | 社保基金、基本养老保险基金、企业年金、职业年金 | §2.0 资质 |
| 基金投资顾问 | 基金投资组合策略建议与受托管理 | 《公开募集证券投资基金投资顾问业务管理规定》(首批试点) |
| QDII / 境外投资 | 通过**南方东英**(中国香港)开展跨境业务 | §2.0 资质(业内首家) |
| 机构直销 | 面向银行自营 / 理财子 / 保险 / 央国企 / 财务公司 / 信托 / 上市公司等机构客户的**直销**与配置服务 | 基金销售业务资格 |
| 上市基金 | ETF / LOF 的募集与上市 | 交易所相关规则 |
### 3.2 ❌ 本公司**不得**开展(知识源必须明确划出边界)
| 越界业务 | 处理 |
|---|---|
| 吸收存款 / 大额存单 / 结构性存款 | ❌ 无资格 → **删除** |
| 发放贷款(流贷、固贷) | ❌ 无资格 → **删除** |
| 票据贴现 | ❌ 无资格 → **删除** |
| 供应链金融(应收账款 / 存货质押 / 预付款融资) | ❌ 无资格 → **删除** |
| 内保外贷 / 外保内贷 | ❌ 无资格 → **删除** |
| 银行理财子公司产品代销 | ❌ **本公司发行自家基金,不做第三方代销** → **删除** |
| **保险产品(年金险、增额终身寿险)与保险经纪服务** | ❌ 无保险中介资格 → **删除**(`南方基金-*` 里的保险经纪牌照同步删) |
| 家族信托设立(作为受托人) | ❌ 非信托公司 → 改「**咨询 + 对接持牌信托公司**」 |
| 跨境结算 / 结售汇 / 外汇期权 | ❌ 非银行 → **删除** |
| 第三方基金代销(「代销 126 家 / 8,600 只」) | ❌ 与官方直销定位冲突 → 改「**只销售本公司管理的产品**」 |
| 券商资管计划 / 私募股权基金代销 | ❌ 越界 → **删除** |
### 3.3 改写映射表(旧业务 → 新业务)
| 旧章节(越界) | 新章节(合规) | 保留的合理内核 |
|---|---|---|
| 企业信贷服务 | **机构直销与资金管理方案** | 客户分层、准入条件、方案设计的**结构** |
| 供应链金融 | **ETF 与指数化机构配置** | 「围绕客户现金流做方案」的**思路** |
| 企业理财(对公存款 / 理财) | **机构定制专户** | 期限、风险等级、起投门槛的**表格结构** |
| 现金管理服务 | **机构资金流动性管理(货币基金 + 短债基金组合)** | 资金归集 / 划转的**业务流程描述** |
| 跨境金融服务 | **跨境投资与 QDII / 香港子公司业务** | 币种、结算周期的**字段结构** |
| 银行理财产品(第二章) | **专户与特定客户资产管理** | 封闭期 / 业绩比较基准 / 费率**字段结构** |
| 保险产品(第三章) | **本公司不涉及的产品与服务(边界声明)** | — |
| 「代销 126 家基金公司」 | **「本公司管理公募基金 XXX 只」** | 产品分类与筛选维度的**结构** |
| 五项代销类牌照 | **§2.0 基金管理人资质序列** | 资质「按获批年份列举」的**表格结构** |
| 家族信托(受托人视角) | **传承与信托对接咨询** | 分层门槛、需求诊断的**流程结构** |
---
## 4. 数据口径规范(v1.1 修订为三分法)
### 4.1 三条总原则
1. **真实公开事实用真值**(§2、§2.0、§2.1);**动态经营数据用「真实公开口径 + 数据截止日」**;**只有演示性数据才虚构**。
2. **虚构≠随便编**:量级、结构、口径须符合公募基金行业实际。
3. **每份文档页脚统一标注**:
> 本文件为教学实训用虚构资料;公司名称、工商登记信息与公开披露业务资质取自公开渠道,**产品业绩、规模、费率、人员名单与客户数据均为虚构**,不构成任何投资建议。
### 4.2 三分法(**取代 v1.0 §4.2 的虚构量级表**)
| 类别 | 内容 | 口径 | 理由 |
|---|---|---|---|
| **A 类:工商与公开披露事实** | 全称、信用代码、成立日、注册资本、地址、法人、总经理、股东结构、经营范围、资质序列、热线、官网、分公司与子公司 | **必须真值**(§2 / §2.0) | 公开可查;写错 = 事实错误,比虚构更致命 |
| **B 类:公司级经营规模** | AUM、公募产品数、基金经理人数、员工数、客户数、累计分红 | **用真实公开口径 + 标注截止日**;若需简化,取该口径的**同一量级**值并标注 | 公开可得;写成 1/3 会显得作者不了解本公司 |
| **C 类:演示性数据** | 单只产品的收益率 / 回撤 / 规模 / 费率、虚构产品名称与代码、基金经理姓名、客户画像与持仓、内部制度阈值、演示账号 | **一律虚构**(§4.3) | 不对外披露,且是系统演示所必需 |
**B 类参考量级(〔真实〕公开口径,供改写时对齐)**:
| 指标 | 公开口径值 | 来源与截止 |
|---|---|---|
| 母公司管理资产规模 | **约 1.43 万亿元** | 天天基金公司页(2026 可获取最新) |
| 公募基金数量 | **835 只** | 同上 |
| 基金经理人数 | **106 人** | 同上 |
| 员工人数 | **1,109 人**(博士 34 / 硕士 920 / 本科 147 / 其他 8) | 基金定期报告(2026-06) |
| 客户数量 | **超过 1.7 亿** | 公司公开口径(2022-03 披露) |
| 累计向客户分红 | **超过 1,500 亿元** | 同上 |
| 分公司 | **6 地** | 公司官网 |
> 🔴 **改写时的取值规则**:B 类数字**不必逐字照抄**,但**必须落在公开口径的同一量级**(如 AUM 写「超过 1.4 万亿元」),并**统一标注「数据截止 2026 年 6 月 30 日」**。**禁止**再出现 v1.0 那种「4,860 亿 / 780 人 / 218 只」的缩水值。
> ⚠️ **不写「营业网点 XX 家」**:基金公司以直销 + 电商为主,**没有银行式网点**。线下触点统一定为 **6 个客户服务中心**(北京、上海、广州、深圳、成都、杭州)〔虚构〕,并明确「与 §2 的 6 家分公司不是同一概念」。
### 4.3 C 类虚构规则
| 字段 | 规则 |
|---|---|
| **产品名称** | 「南方 + 主题/策略」结构,如 `南方稳健增利债券A`、`南方量化优选混合`〔虚构〕 |
| **产品代码** | 6 位数字;**不得与真实代码碰撞**(已核实真实代码见 §2.1;港/深/沪 ETF 代码段亦须避开)。虚构代码统一取 **`9xxxxx` 段**并标「示例代码」 |
| **收益率** | 货币基金**七日年化** 1.5%—2.3%;纯债近一年 3.0%—5.0%;混合型近一年 −5%—+15%;股票型近一年 −20%—+30%;QDII 另标「人民币计价」 |
| **最大回撤** | 纯债 ≤ 2%;混合 8%—16%;股票 18%—30% |
| **夏普比率** | 纯债 1.2—2.0;混合 0.6—1.1;股票 0.4—0.9 |
| **基金规模** | 单只 5 亿—500 亿元;ETF 可至千亿 |
| **费率** | 管理费:货币 0.15%—0.30% / 纯债 0.30%—0.70% / 混合 1.00%—1.50% / 股票 1.20%—1.50% / ETF 0.15%—0.50% / QDII 1.20%—1.80%;托管费 0.05%—0.25% |
| **基金经理姓名** | 一律虚构。**真实在任基金经理姓名(罗文杰、龚涛、崔蕾、龙一鸣、柯达元等)仅可出现在 §2.1 真实产品参数中**,不得作为虚构产品的经理 |
### 4.4 适当性映射(**以需求文档 §1.6.1 为准,不得改**)
| 客户风险承受能力 | 可购买风险等级 |
|---|---|
| C1 保守型 | **R1—R2** |
| C2 稳健型 | **R1—R3** |
| C3 平衡型 | **R1—R4** |
| C4 进取型 | **R1—R5** |
| C5 激进型 | **R1—R5(全部)** |
> 🔒 **权威来源**:`客服agent\D2.2-客服Agent需求文档.html` §1.6.1「适当性红线」矩阵(`_build\_body_requirements.html:272-280`)——
> C1 → R1 ✅ R2 ✅ R3/R4/R5 ❌;C2 → R1/R2/R3 ✅;C3 → R1—R4 ✅;C4/C5 → 全部 ✅。
> **本表即该矩阵的文字化,任何文档与代码均以此为准。**
>
> 🔴 **v1.1 修正**:v1.0 §4.4 的表格把 C1 写成「R1」、C2 写成「R1—R2」,**整表比权威矩阵少一档**(该表是裁决前的旧版本,同行下方的裁决注记又写「C1 可买 R1—R2」,表与注记自相矛盾)。**现已按需求文档 §1.6.1 全表更正。**
>
> ⚠️ **注意内部不一致(改写时以本表为准)**:
> - ✅ `D6.1.2-南方基金-高频问答对.md` **Q19** 写「C1 可购买 R1—R2 …… C4 可购买 R1—R5」→ **与本表一致,不要改**;
> - ❌ `D6.1.4-公司新人指南.md` §5.2 写「C1 → 只能购买 R1」→ **须改**;
> - ❌ `D6.4.3-用户信息数据示例.md` 客户C、`公司业务\用户测试数据\D6.5.2-客户B-普通投资者.md` 按「C1 只能 R1」叙述 → **须改**。
---
## 5. 受众档位规则(visibility)
知识源每条内容必须能判定档位。**唯一判据 = 答案是否含「具体数值型产品要素」**。
| 档位 | 含义 | 典型内容 | 可见对象 |
|---|---|---|---|
| `public` | 公开信息 | 公司概况、概念解释、交易时限、C—R 匹配规则 | 访客 + 客户 |
| `registered` | 仅登录客户 | **含具体数值型产品要素**:费率、起投金额、收益率区间、产品规模、门槛金额 | 仅登录客户 |
| `internal` | 不入库 | 风控阈值、客户个人信息、内部制度 | 任何人(不入 RAG) |
**三类易错边界(必须保持 `public`)**:概念解释(R 等级定义、业绩比较基准、七日年化)、交易时限(申购确认 T+1、赎回到账 T+N)、C—R 匹配规则。
**当前核查值**:`公司信息\D6.1.2-南方基金-高频问答对.md` 已按此重划 **public 54 条 / registered 10 条**(合计 64 条;registered = Q17/20/21/27/28/29/30/33/47/53)。**改写前(V1.0)为 55 / 9,两版成员不同**(V1.0 含 Q15、不含 Q47/Q53),**勿再引用该旧值**。该文件的「内容」已按 §0.2 改写完成,档位口径与 `D2.2` / `D2.4` / `D3.1` / `D3.2` / `D1.4` §3.6 一致。
---
## 6. 字段结构与业务流程的硬约束
### 6.1 产品类文档必备字段
**公募基金**须含:产品代码 / 基金类型 / 风险等级 / 起投金额 / 基金经理 / 基金规模 / 成立日期 / 业绩表现 / 管理费 / 托管费 / 申购费率 / 赎回费率(按持有期分档)/ 投资策略 / 适合人群(对应 C 等级)。
**专户产品**须含:资产管理人 / 资产托管人 / 起始规模 / 存续期限 / 开放频率 / 业绩报酬计提方式 / 风险等级 / 合格投资者条件 / 费率。
### 6.2 业务流程必须闭环
| 流程 | 必须体现的环节 |
|---|---|
| 基金申购 | 客户适当性校验 → 风险揭示书签署 → 提交申请 → **T+1 确认份额** → 可查询 |
| 基金赎回 | 提交申请 → T+N 确认 → 资金到账(**货币 T+1、普通 T+1~T+3、QDII T+7~T+10**) |
| 专户申购 | 合格投资者认定 → 面签 → 合同签署 → 冷静期 → 成立 |
| 投诉处理 | 受理 → 分级 → 处置 → 反馈 → 回访 → 归档(**须与 MVP「发工单」能力对齐**) |
### 6.3 与代码侧的一致性锚点(改写时**不要改这些值**)
| 常量 | 取值 | 代码侧位置 |
|---|---|---|
| 客服热线 | `400-889-8899` | `app\service\agent\governance.py` 热线常量(**待改**,见 §7.2 / D-4) |
| 官网 | `nffund.com` | `promotion.js`(**待改**) |
| 人工客服服务时间 | 每日 7:00—22:00 | 服务时间本身不变 |
| 品牌白名单(入库门禁) | `南方基金` + `nffund.com` | 🔴 `tools\build_knowledge_chunks.py` —— **该门禁当前并不存在**(见 §7.2 G-01) |
| 产品归属字段 | `fin_product.fund_manager = '南方基金'` | ✅ **已是「基金管理人」口径,不要改** |
| embedding 维度 | 1024 | 通义千问 text-embedding-v3 |
---
## 7. 改写执行清单(本次范围与状态)
### 7.1 知识源(15 份,v1.1 由 13 份扩为 15 份)
| # | 文件 | 品牌 | 身份 | 主要病灶 | 状态 |
|---|---|---|---|---|---|
| 1 | `开发文档\公司业务\D6.2.1-个人理财产品手册.md` | 待改 | ❌ 代销 | 第二章银行理财整章、第三章保险整章、第五章「财富中心」 | 本次改写 |
| 2 | `开发文档\公司业务\D6.2.2-企业金融服务方案.md` | 待改 | ❌ **信贷** | 全篇 6 章中 5 章越界;21 处品牌残留 | 本次改写 |
| 3 | `开发文档\公司业务\D6.2.3-高净值客户服务规范.md` | 待改 | ⚠️ 信托受托人 | 第三章「家族信托服务」;12 处品牌残留 | 本次改写 |
| 4 | `开发文档\公司信息\D6.1.4-公司新人指南.md` | 待改 | ❌ **三块牌照 + 网点** | §1.1 三牌照、§2.1 六大事业部、§3 业务线全景、28 处品牌残留 | 本次改写 |
| 5 | `开发文档\用户研判规则\D6.4.3-用户信息数据示例.md` | 1 处 | ⚠️ 银行理财 / 保险 / 加密 | 客户C、客户D、客户E 的产品口径;C1 风险等级口径 | 本次改写 |
| 6 | `开发文档\金融政策\D6.3.1-理财产品销售管理办法.md` | — | ⚠️ 银行业监管依据 | §1 依据含《银行业监督管理法》《商业银行理财业务监督管理办法》;1 处占位热线 | 本次改写 |
| 7 | `开发文档\公司业务\用户测试数据\D6.5.2-客户B-普通投资者.md` | — | ⚠️ 银行理财为主 | 金融资产明细全为银行理财 / 存款 / 国债;2 处占位热线 | 本次修 |
| 8 | 🔴 `开发文档\公司信息\D6.1.1-南方基金-企业信息.md` | ✅ | ❌ **代销机构** | **§1.1 主营、§2 五项牌照、§2.6 合规声明、§3.1 网点、§8 发展历程** | **本次改写(v1.1 新增)** |
| 9 | 🔴 `开发文档\公司信息\D6.1.2-南方基金-高频问答对.md`(+ `.txt`) | ✅ | ❌ **代销机构** | Q05、Q06、Q07、Q15、Q29、Q45、Q46 等;**档位需重算** | **本次改写(v1.1 新增)** |
| 10 | `group_fqcd_jr\knowledge\company\企业信息.md` | ❌ **南方科技 ×16** | ❌ 代销 | 全文(8 章) | 本次改写 |
| 11 | `group_fqcd_jr\knowledge\faq\高频问答对.txt` | ❌ **×18** | ❌ 代销 | Q1-Q11、Q20、Q30、Q32、Q35、Q36 | 本次改写 |
| 12 | `group_fqcd_jr\knowledge\product\D6.2.1-个人理财产品手册.md` | ❌ **×9** | ❌ 代销 | 同 #1 | 本次改写 |
| 13 | `group_fqcd_jr\knowledge\product\D6.2.3-高净值客户服务规范.md` | ❌ **×12** | ⚠️ 信托受托人 | 同 #3 | 本次改写 |
| 14 | `group_fqcd_jr\knowledge\policy\D6.3.1-理财产品销售管理办法.md` | — | ⚠️ 银行依据 | 同 #6 | 本次改写 |
| 15 | `group_fqcd_jr\knowledge\_chunks.jsonl` | ❌ **×312 行** | — | **派生件** | **不手改;须重跑灌库**(前置见 §7.2 G-01) |
> ⚠️ **#10—#14 与 #1—#6 的「同源不同版」**:`knowledge\**` 与 `开发文档\公司业务\**` 的 5 组文件**内容各自独立**(md5 不同、`南方科技` 与 `XX科技` 各写一套)。**必须分别改写,不能只改一边。** 方向是:**以「开发文档」侧为母本改写 → 再同步进 `knowledge\`**。
### 7.2 代码与前端表面(**v1.1 新增,本次只出方案、不动代码**)
| ID | 表面 | 文件数 | 内容 | 为什么必须处理 |
|---|---|---|---|---|
| **G-01** | `tools\build_knowledge_chunks.py` | 1 | 🔴 **「四查门禁」当前并不存在**:文件中只有 `assert_no_duplicate_contents`,**没有占位符检查、没有品牌白名单、没有禁止类目、没有 visibility 缺省拒绝** | `D3.4-客服Agent重构Todolist.md` B-01 与 `构造报告` 把这个门禁**当作已实现**来引用。**不补上,重跑灌库会把 `南方科技` / `400-XXX-XXXX` 直接灌进去而无声通过** |
| **G-02** | **前端品牌面** | **24** | `南方财富` —— 18 个 `index.html` 的 `<title>` + 导航栏品牌名(`app-shell.js:64` `<strong>南方财富</strong>`)+ `brandmark.svg` 的 `aria-label` + `products.js` / `product-detail.js` 的 `document.title` | 🔴 **评审唯一会用眼睛看到的品牌**。文档改得再干净,打开页面还是「南方财富」= 前功尽弃 |
| **G-03** | `app\service\agent\governance.py:47` | 1 | `CUSTOMER_SERVICE_HOTLINE = "15936583816"`(**手机号**,非 `400-` 号;脱敏白名单靠它放行) | 改成 `400-889-8899` 后,脱敏正则 `1[3-9]\d{9}` **不再匹配** `400-` 号 → 该白名单**失去作用但不会报错**(须同步把脱敏逻辑改为「放行热线常量」而非「放行手机号」) |
| **G-04** | `app\static\portal\employee-operations\promotion\promotion.js:29` | 3 | `'南方基金管理有限公司'`(**少「股份」**);另 2 处同名测试内联值 | 与 §1 全称冲突 |
| **G-05** | `app\service\risk_analysis_service.py:27`、`app\service\agent\implementations\risk_agent.py:1/192/364`、`app\static\portal\employee-risk\dashboard\index.html:80/139`、`app\worker\risk_scan_scheduler.py:173` | 5 | `南方财富风控智能助手` 等 | 风控 Agent 的自我标识 |
| **G-06** | `tests\unit\service\test_knowledge_keyword_recall.py:23-24` | 1 | 断言里写死 `南方科技有限公司 个人理财产品手册 · …` | 灌库后标题链会变 → **测试必然失败**,须同步改断言 |
| **G-07** | `app\service\knowledge_search_service.py:280` | 1 | 注释里举例 `南方科技有限公司 个人理财产品手册` | 仅注释,但属品牌残留 |
> **推荐顺序**:**G-01 → G-02 → G-03 → G-04 → G-06**(G-01 与 G-02 是「能否把新语料正确灌进去」与「评审看到什么」两条必经之路;G-06 与灌库同批,否则测试红)。
### 7.3 本次**不做**(边界声明)
| 不做 | 原因 |
|---|---|
| 改写 `group_fqcd_jr\docs\**`(8 份含旧品牌) | 属历史记载;`文档规整方案` §6.3 已定「由 F-05 回写」 |
| 修改 `app\static\portal\**` 代码 | 用户明示「暂不编写或提交任何代码」;本次**只出方案**(G-02) |
| 重跑灌库 / 重建向量 | 需先完成 G-01(门禁)+ 语料改写,且要求 Worker 停机 |
| 删除 `advisor_*` 21 张表 / alembic 迁移 | `AGENTS.md` 规则 3 禁删表 |
| 改动 `fin_product.fund_manager = '南方基金'` | ✅ 该口径**本来就对**,是本次的**立足点** |
---
## 8. 关联文档
- `开发文档\D1.4-知识源与品牌整改变更说明-2026-09-17.md`(**CS-CONTENT-2026-016**)—— 每处修改的原因与影响范围
- `开发文档\D1.3-文档规整方案与开发前待决事项-2026-09-17.md`(CS-DOC-2026-014)—— D-1~D-5 决策台账
- `客服agent\D2.4-客服Agent知识库设计方案.html` v1.2 —— 三集合三档的工程承载
- `客服agent\D2.2-客服Agent需求文档.html` v2.4 —— §1.10 MVP 必守项(品牌口径即出自此处)
- `客服agent\D2.1-客服Agent执行Todolist.md` v5.2 —— 批次 B(B-01~B-05)是本次内容改写的**工程承载**
---
## 9. 取证记录(v1.1 新增)
| 结论 | 取证方式 |
|---|---|
| `南方基金-*` 身份是代销机构 | 通读 `D6.1.1-南方基金-企业信息.md` §1.1 / §2.6 全文 |
| 数据层已是基金管理人口径 | `Grep` `fund_manager = '南方基金'` → `tools\` 3 处;`hq.py` 白名单 6 处 |
| 前端 24 文件用 `南方财富` | `Grep -c 南方财富 app/` → 24 文件命中 |
| 「四查门禁」不存在 | 通读 `tools\build_knowledge_chunks.py` 全文(290 行),仅 1 个守卫 |
| 真实工商与规模事实 | 工商公示 / 基金业协会 / `nffund.com/new/about` / 基金定期报告 / 天天基金公司页(2026-09-17 检索) |
| 产品代码 | `nffund.com` 产品详情页 + 天天基金(510500 / 160119 / 004517 / 007340 / 202015 全部命中) |