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.
4.3 KiB
2026-09-13 手机号登录发布记录
已部署 0.82.0-rc.phone-login1:https://121.41.46.238/login。
当前目录为 /opt/data-terminal-cloud/releases/0.82.0-rc.phone-login1,/opt/data-terminal-cloud/current 已切换。API、worker、callbacks 和前端使用本次镜像,保留服务器的供应商、短信开关、OIDC、对象存储及密钥配置。当前服务器沿用既有单机演示部署模式。
发布内容
- 家庭端独立登录页、未登录路由保护、原页面返回。
- 手机号验证码 / 手机号密码两种登录方式,同页切换;密码登录带后端校验的图片验证码。
- 个人中心设置与修改密码、短信验证后重置密码。
- 前几轮累计的页面文案清理,以及 CALL-MEMORY-1.1 服务端与记忆管理页面实现。
- 数据库从 58 升至 61,迁移状态正常。新固件没有在此次发布中刷入设备;完整 RTC 设备链路的未完成项仍以 CALL-MEMORY-1.1 实施记录为准。
验证
发布前全量 Go 测试、go vet、前端生产构建通过。11 个模块的隔离数据库集成测试共 186 项顶层测试通过;另有一项依赖真实内容模型的可选测试跳过,未冒称验证。手机号登录浏览器回归 9 项和记忆工作区回归 5 项通过。
线上 API、worker、callbacks 健康接口通过,公网 HTTPS 版本接口返回本次版本。真实公网浏览器检查 9 项通过,包括未登录跳转、双模式切换、PNG 图片刷新、安全 Cookie、缺失图片校验拒绝、CSRF / 跨源拒绝、密码管理鉴权及手机端布局;浏览器无页面异常。检查使用正常 TLS 校验。
已按用户要求将 +86186****1700 绑定到 Keycloak 中既有的 owner 身份,并设置随机初始密码。管理命令核对账号 ID、issuer、subject,事务内写入手机凭据映射和审计事件;不创建新的业务账号、不调整家庭权限,也不将此次人工绑定记作短信验证。已有绑定或不同密码不会被命令覆盖。绑定命令及相关隔离数据库集成测试通过。
通过真实公网浏览器输入图片验证码后,手机号密码登录成功。核对身份仍为既有 owner,原家庭 owner 权限可访问;原页面参数和锚点恢复、刷新会话、退出登录均通过,浏览器无页面异常。初始密码不写入发布记录、源码或验证材料。
线上短信仍关闭,未发送真实短信。 密码修改与会话撤销已在本地真实服务及隔离数据库中验证,线上此次仅验证登录、原页面返回、刷新与退出。
备份和恢复
发布前完整加密备份:/var/backups/data-terminal-cloud/platform-20260913T000247Z.tar.gz.enc,已进行隔离数据库恢复及 Redis、对象存储、Keycloak 文件校验。备份时数据库为 58|false,2 个租户、6 个账号。
旧版本 0.81.0-rc.onboarding1 保留,未删除数据或执行数据库回退。上线后的新数据不可用旧备份直接覆盖;涉及通话或记忆新协议的运行状态应优先前向修复。
修复了备份脚本缺少执行权限的问题。新版本目录内的服务器脚本已恢复 Unix 换行和执行权限,避免 Windows 打包后 systemd 报 203/EXEC。
回调服务不负责设备绑定,因此部署覆盖层显式关闭该服务的 ONBOARDING、激活和短信开关;API / worker 保留原配置。上线时发现并修正了此配置继承问题,最终三个后端服务均正常。
可追溯材料
- 源码基线:
98fb2965d0898cbe08bda36df3bb99e00ed32626,包含未提交工作区改动,以文件清单及哈希为准。 - 源码包 SHA-256:
22f514f5f187a2d72d3a18d33023b5859db4b82bd9b747cc452d78dacefd6d9f。 - 运行文件包 SHA-256:
b5605eee5b2edd66aa5ef19822c85fe1e54c5563f9ec3de85dba40a9df83fb0c。 - 服务器保存
source.zip、release-files.json、构建日志、迁移日志和健康检查结果。回调服务的最终部署配置及本发布记录另行留档。 - 本地验证材料:
.tmp-online-phone-release/;未上传.env、SSH 私钥或本地数据库。 - 后续 owner 手机号绑定材料:
.tmp-owner-phone-bind/verification.json。绑定命令是发布后单独运行的管理工具,未重建业务服务镜像;服务器owner-phone-setup/保存该工具源码、哈希和脱敏验证结果,原发布包哈希不变。