核对时间:2026-09-17(Session 036/037) 核对方法:全仓库 grep 网络调用点 → 逐个反查调用方 → 再看它支撑了哪些 用户能感知的行为。复核命令见文末,可重跑。
老接口 = {VITE_API}(//qingpu-data-api.metamaker.cn)。
| 功能 | 接口 | 备注 |
|---|---|---|
| 对话(SSE) | POST {VITE_CHAT_API}/api/chat |
|
| 问答记录(历史)写入 + 读取 | DMS 栏目 1889 | 一问一答一条;title = 问题文本 |
| 点赞/点踩/取消 | DMS 1889 的 c_feedback_* |
|
| 删除会话 | DMS(清 1889 记录 + 1887 旧行) | |
| 政策卡片与协议内容 | 随 /api/chat 下发 |
|
| 惠企政策库数据 | 静态 json policies_public.v1.json |
⚠️ 2026-09-18 起:1887 助手会话不再写入(用户指示「只传具体的会话记录,另一个接口不传了」)。 新建会话、改名都不再同步;前端会话列表退化为纯本地 (
mergeRemoteSessions拿到空数组无害,行为与接 DMS 之前一致)。 停用的调用点按约定注释保留在useBusinessAssistantChat.ts,并有源码级断言防改回。
用户看到什么:右上角账号区。未登录显示「青浦区区内企业登录」(可点,跳一网通办), 登录后显示企业名 + 首字母头像 + 退出登录,还会飘一个气泡「识别到您为我们区内企业,推荐登录」。
怎么走到老接口:
| 入口 | 接口 |
|---|---|
| 从一网通办带 ?access_token= 跳回来 | POST /enterprise/login 换 credit_code + authToken |
| 带 ?credit_code= 跳回来 | GET /fta_ent_policy/enterprise_info 直接拉企业信息 |
这个身份一共被 5 处依赖(所以它不只是"显示个名字"):
isEnterpriseLoggedIn)ba_chat_history;访客 → ba_temp_chat_historyc_credit_code = 企业信用代码,未登录则 访客_<访客id>⚠️ 前端只用企业信息的
name与credit_code两个字段(其余 19 个字段零引用)—— 所以真要用 DMS 的企业信息(栏目 1888)替换它,成本很低。
| 埋点 | 用户什么时候触发 | 上报内容 |
|---|---|---|
| 页面浏览 | 打开页面(onMounted) |
visitor_id(localStorage 里的访客 id)、business_code(= policyMode)、env(= 构建 mode) |
| 回答反馈 | 点赞 / 点踩 / 取消 | 同上 + 反馈内容 |
POST {统计基址}/assistant_statistics/page_view、/assistant_statistics/feedbackVITE_ASSISTANT_STATISTICS_BASE_URL(只有 .env.qingpu 配了),否则回退 VITE_APIc_feedback_*(业务数据),又发统计接口(运营数据){VITE_ASR}/api/human_asr/v2/asr/gen_auth 取鉴权,再开 WebSocket 走识别流POST /common/qp_signed_url
取 OSS 签名 → 直传 OSS/api/chat 只收 {thread_id, question},附件传不上去,
上传入口整块被注释(BusinessAssistantMobileInputShell.vue 里有说明)useBusinessAssistantUpload.ts 里的),
等后端定了附件契约才能接上{VITE_MODEL_SERVER}/v1/policiesfetchPolicyList 里前面两档(惠企政策库 262 条 / 本轮卡片兜底)几乎总能命中,
第三档基本走不到openid 换 token —— 只在 test 构建VITE_USE_KNOWLEDGE_API === false 时执行,四份 env 里只有 .env.test 是 false| 位置 | 原本支撑的功能 | 为什么死了 |
|---|---|---|
src/network/api/card/index.js 的 getMediaList |
卡片里的媒体文件信息(图片/附件的展示) | 无调用方 |
同上的 giveFeedback |
点赞点踩落库(旧接口版) | 反馈改走 DMS 后,最后一个调用点消失 |
同上的 appendHistory |
把每轮问答追加到服务端历史 | 早就注释掉了,历史改由接口的 enable_history 控制 |
useBusinessAssistantChat.ts:2 的 import cardAPI |
— | 未使用的 import,是上面这个模块唯一的引用(2026-09-18 复查仍在) |
PolicyListUpdatedMatch.vue |
旧协议 <policy-list-updated> 卡片列表 |
仍被 BusinessRecord 挂载,但新协议不再产出这种块,只有旧历史内容可能触发 |
清理这些要另开一轮,并先确认没有旧数据依赖。
# 1. 列出所有网络调用点
grep -rn "fetch(\|new WebSocket\|new EventSource\|axios" src/ index.html \
--include=*.ts --include=*.vue --include=*.js --include=*.html
# 2. 对每个点反查调用方(以 card/index.js 为例)
grep -rn "getMediaList\|giveFeedback\|appendHistory\|network/api/card" src/ \
--include=*.ts --include=*.vue --include=*.js | grep -v "^src/network/api/card/index.js"
判据:出现在第 1 步 ≠ 还在用。必须做第 2 步——没有调用方的就是死代码。
第二节每条的「触发条件」也是这么查的(例如第 5 条要看 fetchPolicyList 前面两档 return
才能判断它几乎走不到)。