Files
kefu/deploy/plaintext-chat-20260918/CHANGES.md
T
2026-09-21 10:34:06 +08:00

30 lines
1.9 KiB
Markdown

# v1.4.29 桌面聊天正文解析
本次接入现有管理端接口,无需改变服务器 API。
## 原因
消息数据库页面已经在桌面端解密,但旧通用解析器把两类数据当错了正文:
- 短数字、单字和短英文不满足旧文本筛选条件,退回十六进制输出。
- 文件、朋友圈卡片的媒体引用较长,被选作正文,导致模型上下文和后台记录出现大段编码。
## 修改
- 桌面消息读取、消息列表、模型上下文和自动归档共用按消息类型解析的入口。
- 文本按已核验的结构恢复正文,保留数字、单字、emoji 和连续文本片段。
- 语音沿用已绑定账号、会话与服务器消息编号的转写;图片等媒体显示明确类型,文件和朋友圈提供可读摘要。
- 未能解析的文字不会伪装成已解密正文;协议模式仅将当前会话交给人工,其他会话继续监听。
- 网关请求的 `messages` 保留可读上下文,`customer_text` 仅包含客户本轮连续消息,不再混入程序提示词和整段历史。
- 归档上传可读 `content`,原始协议正文和二进制只保留大小、SHA256 作为来源证据。
- 旧归档随正常同步分批重解析,每个账号每轮最多扫描 1000 条,保存独立修复断点,保留原消息 ID,不改正常同步水位。
- 修复旧记录时保留已有语音转写和附件状态;旧模型调用日志作为历史诊断证据,不回写改造。
## 验证
- 本机解密缓存只读检查 424 条:144 条原生文本全部可读,14 条原十六进制短消息恢复;摘要未出现媒体令牌或本地路径。
- 通过合成 SQLite 到网关请求的端到端测试;归档测试验证去重、水位保护、失败重试和旧转写保留。
- 打包验证使用隔离配置和合成数据,不发送真实客户消息或触发真实归档上传。
完整安装包及冻结代码验证结果将在同目录的发布结果文件中记录。