6.8 KiB
网页多图层与扩展画布实施验收(2026-10-09)
实施范围:scene v2、模板schema v2、动图schema v3、配置v11;192×192逻辑编辑区和64×64输出;画笔/多段文字图层、背景、复制/排序/命名、位移和持久裁切。VERSION保持1.1.3,功能时间2026-10-09T15:27+08:00。未导出OTA/IMG。
验收覆盖
| 行为 | 证据 |
|---|---|
| 图层增删、至少一画笔、多段文字隔离、复制/排序/重命名 | Node模型测试;桌面浏览器入口check_layers_browser.mjs |
| 透明空白、黑色遮挡、各层背景/关闭颜色记忆、擦除/清空 | Node/Pillow合成;浏览器背景操作 |
| 192外围、扩展开关记忆、中央64边框、64输出 | 浏览器/节点;Python PNG逐像素对比 |
| 图层移动、偏移提交/步进/限位;视线不改内容 | 浏览器桌面鼠标和移动触摸;模型测试 |
| 越界确认取消、文字部分裁切/全删、移回不恢复、缩放与重载、撤销 | 6次原生确认的浏览器验收及模型/持久化测试 |
| 保存/复制静态与单帧/多帧/全部帧、冲突、脏目标保存 | 浏览器操作及REST/存储测试 |
| 场景/缩略图/索引写入故障、重启无半提交 | 动图存储事务故障注入测试 |
| 旧草稿/模板/动图迁移中央输出一致、损坏保全 | Node/Python严格迁移测试;设备原数据摘要比对 |
| 手机共享内容库/播放接口兼容 | 相关Python协议测试;App无需更新 |
| 桌面/390px/320px悬浮菜单及面板、文字拖动/字号、触摸/视线缩放 | 本目录截图、浏览器正常UI输入验证 |
绕开正常路径的验证包含:确认取消后草稿完全一致、移回后不恢复已裁内容、迟到文字请求不覆盖新状态、If-Match过期冲突、两帧部分写入失败全部保全,以及旧草稿未知字段/不合法数字拒绝迁移。
已完成本机检查
最后版本本机全套513通过/9跳过(all-ready.log),上一轮512通过/9跳过(all-final-retest.log);最新迁移边界59通过;全部Node87通过/无跳过。隔离中文空格目录全套499通过/11跳过,最新相关59通过。隔离副本未复制凭据、旧venv或运行数据,使用现有解释器运行其源码。各结果存在重叠,不相加。
本机9跳过:6个视频格式测试的默认环境没有FFmpeg、libheif编码器1项、Windows目录symlink1项、只供旧OTA隔离子进程的probe1项。随后复用已有FFmpeg单独执行6项视频格式并通过,HEIC编码器仍未提供。隔离目录另有完整Git工作区和发行构建依赖缺省导致的2项跳过。无需摄像头、实屏视觉、Android真机回归。
Windows一次媒体任务原子替换WinError5已保留失败日志all-final.log;单测重测与关闭本轮浏览器/mock后的完整回归通过。较早隔离迁移目录rename及WiFi替换也曾偶发拒绝访问;未证实根因,未修改无关持久化实现。经验已登记测试流程。
部署验证
通过私有凭据门禁和远端工具检查,上传离线载荷并核验SHA-256,使用既有update_walnutpi.sh在数据副本上迁移及完整预检,原子切换后健康检查并重启。本轮未更新驱动源码,也未发送实屏诊断图案。
部署前基线9个模板、6个动图、195帧。既有名称/顺序/间隔、64输出摘要、配置和其余持久文件逐项对比;允许清理13个不属于当前修订的严格命名手机缩略图缓存,未泛化忽略mobile目录。旧缓存失效是scene摘要改变后既有PreviewCache.reconcile的预期清理。
板端存在原有BlueZ LEAdvertisement1 TxPower属性告警,服务启动及健康通过;此告警未在本轮修改范围处理,不写为已消除。相关共享协议回归通过。
可重复入口和经验
稳定需求见整体开发需求/01_网页配置端需求.md;测试映射与经验见测试相关资料/如何测试/核桃派点阵屏控制服务测试流程.md;跨端兼容见移动端相关内容/开发要求/跨端兼容与变更记录.md。浏览器入口为核桃派软件源代码/scripts/check_layers_browser.mjs,调用方提供已有Playwright page与隔离mock URL。一次性SSH载荷、设备测试脚本和隔离测试数据在本轮完成后精确清理,持续使用的测试环境、凭据与主机密钥保留。
最后部署版本的板端预检508通过/7跳过(device-deployment-deploy-ready.log),完整重启和健康检查通过。7跳过对应源载荷没有完整Git1项、没有本机harness3项、没有大型镜像构建依赖1项、板端没有Node的跨语言对比1项,以及旧OTA子进程probe1项;Node/Pillow对比已在本机执行。
设备实际REST保存重载、中央PNG输出、文字裁切状态、独立图层ID、单帧/全部帧追加、原间隔及If-Match冲突、64/192文字预览全部通过(device-rest.log)。测试创建的独立模板与两帧动图均删除;之后基线复核9模板/6动图/195帧以及其他业务持久文件全部保持一致(device-ready-verification.log)。
最终网页桌面验收通过、6次原生确认、无pageerror;320px窄屏触摸整层X移动10像素、中央屏幕边框可见,切到视线模式后重新打开菜单仍可使用偏移面板。菜单坐标x74/y394、尺寸224×438,在320×844视口内,更多控件可滚动。截图见device-desktop-menu.png和device-mobile-menu.png;结果见device-browser.json。一次性浏览器操作曾引用错误的canvas选择器及错误地二次切换已打开菜单,导致自动化超时;改为实际DOM选择器和逐步检查后通过,应用源码无需修改。
校验已安装的33个变更/新增源码文件SHA-256与本机一致;VERSION为1.1.3、FEATURE_UPDATED_AT为2026-10-09T15:27+08:00(installed-source.log)。驱动截止丢失0、OE脉冲故障0、最后错误null;未改变显示模式进行视觉测试。
已清理远端本轮独立目录 /run/matrix-screen-controller-layers-20261009,其中包括离线部署tar、wheel副本、frpc副本、测试脚本和文件校验清单(device-cleanup.log);更新脚本的stage/data副本由既有事务清理。浏览器与本轮SSH本地转发已关闭。本机一次性目录 测试相关资料/如何测试/本机测试环境/.local/work/layers-implementation 的精确删除被自动安全审批拒绝(仅返回 blocked by policy),未更换手段重试。该目录已无使用进程、所需证据已归档,可由用户手动删除;测试venv、私有凭据及主机密钥继续保留。
最后再次比对所有设备用户内容并确认37个本轮远端载荷、stage、rollback、迁移及测试绝对路径均不存在(device-cleanup-confirmed.log)。本机安全拦截使删除临时目录与随后检查的组合命令整体未执行;本轮仅重新执行证据复制及只读检查,未再次请求删除。