feat: expand companion platform, device controls, and memoir workflows
ci / verify (push) Canceled after 0s

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.
This commit is contained in:
Codex Local
2026-10-08 10:06:44 +08:00
parent 98fb2965d0
commit bf1233d5df
861 changed files with 94614 additions and 3209 deletions
+33
View File
@@ -0,0 +1,33 @@
# EchoEar 屏幕点击开始与挂断
后续反馈:用户发现挂断后再次启动无法聊天。`.30` 资源回收修复已通过本地回归,并在用户回复“升级”后于 2026-10-05 14:49:32 北京时间通过单设备 OTA 安装成功。设备已恢复 `.30 / code 13` 在线心跳,实际连续通话仍待实物验收。详见 [再次开聊修复记录](device-call-restart-20261005.md)。
2026-10-05,已对用户确认的当前在线设备 `KP01-8995ACF5E69E`(公开编号 `3ef575a6-bbc0-4e00-9a5c-58a8157d9520`,ECHOEAR-S3)完成远程升级,运行 `1.7.0-controls.29 / code 12`。
随后核对电脑 USB:COM6 的 VID:PID 为 `303A:1001`,序列标识 `B4:3A:45:16:34:A8`。本地烧录助手备份 `20261004T161207Z-dd5c8edfa07f` 的身份写入计划、工厂清单及 `written_and_verified` 回执确认这个硬件 MAC 对应 `KP01-8995ACF5E69E`,因此电脑连接的设备就是本次远程升级目标。核对只枚举串口并被动监听,没有再次复位或刷写。
## 操作
- 待机且屏幕亮起时,轻触屏幕开始通话。
- 正在连接或通话时,再次轻触屏幕取消或挂断。
- 正在结束时,连续点击不会创建第二通;等待结束和待机后可重新轻触开聊。
- 短触沿用按下 50—1500 ms、松开后响应的规则,去抖间隔改为 300 ms,取消原来 5 秒只允许开聊的间隔。
- 屏幕底部中央长按 3 秒的重新配网入口保持原有行为。
点击事件交给现有通话管理任务处理,管理器根据是否仍持有通话任务决定开始或停止。连接中和结束中的任务仍占用开聊入口,直到音频、SDK及结束上报完成并收到 OVER。停止沿用现有本地音频关闭和平台收尾流程。
本版本同时包含此前未下发的 `.28` 双方静默 60 秒自动结束修复;有效语音、字幕和回应状态刷新活动时间,静音音频包和平台续期不刷新。
## 验证与交付
ESP-IDF 5.5.1 编译通过,检查 5403 项构建输入。与已安装 `.27` 相比,生产输入仅变更触摸入口、通话管理器、事件枚举、静默计时和版本头;依赖、分区、配置与 RTC 源码保留。
三个提取实际生产函数的 C 主机测试通过 UBSan,覆盖点击开始、300 ms 后再次点击挂断、连接及结束阶段的重复点击、任务创建失败、投递失败重试、计时回绕、通话结束显示、本地音频关闭、慢结束上报和静默计时。设备实物的触摸与静默听感测试尚未人工验收,不把软件测试当成实物触摸验证。
应用镜像 3,772,928 字节,SHA256 `2fc8ddacfb751fb5a479dd909955336bf1484005263964167c6249dfa73544d9`,在 4 MiB OTA 槽限制内。维护发布走现有平台服务、真实 service 身份审计和 HTTPS 全量回读,不构造用户登录会话。浏览器扩展本地文件上传权限未开启,未更改扩展权限。
发布过程中发现清库后保留的发布记录最大顺序号 11,而固件序列停留在 5;Prepare 返回 PostgreSQL 23505。仅将 `fleet_firmware_version_code_seq` 向上同步到现有最大值,写入 service 审计,随后平台自动生成顺序号 12。
真实已登录家庭端对确认的单设备发起 OTA:任务 `e4933f76-5c1e-4fb3-9634-0748f3244640`,2026-10-05 11:28:37 北京时间发起,11:29:29 回报 success。设备报告下载写入校验耗时 28.075 秒,重启后新版本心跳及 code 12 已确认。11:29:55 后再次在线;原绑定数 1、绑定代次 1、配置版本 2/2 保留。
交付文件位于 `artifacts/firmware/1.7.0-controls.29`,包含应用 `.bin`、manifest、源码差异、verification 和真实升级完成截图。私有脱敏操作证据保存在工作区 `.local-evidence/screen-call-20261005`。