Files
story/docs/portal-records-fix-20260926.md
Codex Local bf1233d5df
ci / verify (push) Canceled after 0s
feat: expand companion platform, device controls, and memoir workflows
Add customer and operator login, BLE provisioning, device fleet controls, call memory, memoir generation, and refreshed family and maintenance portals. Include API contracts, migrations, firmware sources, tests, assets, and deployment documentation.
2026-10-08 10:06:44 +08:00

28 lines
3.5 KiB
Markdown
Raw Permalink 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.
# 网页聊天记录、音量状态与日常/故事分类修复
2026-09-26 发布 Web `0.99.12-rc.portal-records1`,基于线上 `0.99.11-rc.spoken-volume1` 源码,仅覆盖七个前端源文件。API、callbacks、worker、gateway、数据库、Redis、MinIO 容器未变;无需固件更新或数据库迁移。
## 原因与处理
- 网页只查询旧版 `conversation`,当前设备聊天在 `call_session` / `call_utterance`。接入已有鉴权接口 `POST /api/v1/memories/calls/query` 与 `calls/turns`,支持列表和文字独立分页、权限错误、请求取消和切换长者隔离。原记录仍可从“查看早期聊天记录”进入,原录音和故事操作保持可访问。
- 音量保存后使用固定成功提示,设备回报不会更新文案。改为设备页面每五秒读取实际配置与在线状态,依据实际音量和配置版本同时匹配显示“已生效”。离线、等待确认、已确认分别展示。提交期间中止轮询,防止旧响应覆盖提交结果。
- 线上只读核对:期望/实际上报音量均为 56,期望/上报版本均为 19;发布后仍持续上报。没有为测试改动真实设备音量。
- 在线连接对号改为绿色,离线保留原状态。
- 用户最终确认页签名称为“日常”和“故事”。EVENT、OPEN_ITEM、INTERACTION 显示在日常;PROFILE、RELATIONSHIP、PREFERENCE、STORY 显示在故事。既有故事保留入口。分类依据现有记录类型,不改写事实内容;家人可编辑类型。
## 当前总结来源
设备直连聊天文字由火山回调保存,结束后后台上传到火山记忆库 `memory`,异步提取 `event_v1`,读取结果中的 `summary` 后保存为可管理记忆。当前自动导入记录统一标记 EVENT,因此显示在日常;这次未追加语义分类模型,也未将旧事实自动重写为人生故事。
只读检查时平台有 15 条 EVENT 记录,9 项记忆同步任务为 SYNCED。旧版 `conversation_summary` 的 150 条记录均标记 `local-deterministic-extractor`;worker 的 `CONTENT_GENERATOR=local`、`ARK_CONTENT_MODEL` 为空。火山托管记忆提取未在平台暴露具体底层模型型号,不能把它断言为某个豆包版本。
## 验证
- 线上基线候选 TypeScript 与 Vite 生产构建通过;已有大包体积警告仍存在。
- `node --test web/test/portal-records.test.mjs`:两项通过,覆盖实际音量/版本不匹配、离线和零音量,以及七种记录类型归类。
- `test/e2e/portal-records-fix.mjs`:七组浏览器检查通过。覆盖当前通话列表/详情分页、手机布局、迟到响应不串长者、权限错误、分类、真实组件中的模拟设备回报与绿色对号、完整家属端聊天和页签。使用合成接口数据,未写入真实家庭。
- 老的 `memory-workspace.mjs` 仍期待已被既有改版移除的“修正”按钮,未通过;未以其代替本轮专项验收。
- 发布检查比对线上 HTML/JS/CSS 哈希、运行配置、未改动服务容器 ID,以及聊天接口匿名请求拒绝。首次探测漏 Origin,第二次环境变量列表顺序比较过严,均自动回退;修正验证脚本后发布成功。
- 发布记录:服务器新 release 的 `portal-records-release.json`。专项截图与检查结果位于 `.tmp-portal-records-fix/evidence/`。
- 未在真实家属登录会话中再次操作音量或逐条浏览私密聊天;线上数据核对为只读查询,交互验证使用真实组件与合成数据。