清单续修、主题读取与崩溃日志留存 · 2026-10-26
该批源码基线与运行改动 11137251,分支 perf/direct-rime-startup-20261024。来源、计数与已发布APK边界。
原清单已处理
- B1:宏、弹出和字体编辑器保存主体草稿与独立原始比较基准,Bundle只携带文件名,大文本不进入Binder;字体恢复后保存菜单正确启用。12个API23/28执行覆盖连续新Activity+Parcel、大文本、多编辑器隔离、字体顺序/字号和损坏回退。未确认的选择框在重建时按取消处理,已确认的主体编辑保留。
- P1-3:正常AIDL语音接口保持原样。可选浮窗回退需声明支持请求令牌,结果须携带启动时令牌;宿主核对原输入框、在Main同步交付、最终结果只消费一次。无声明的旧浮窗回退不启用,无令牌广播不直接上屏,AIDL失败仍会显示连接失败。8个纯逻辑与12个真实框架接收器/能力声明执行通过。
- N4:6种支持方向宏的键型、4种方向与4种符号位置,在实际共享表单中修改外观,再更换偏好和主题位置后重开;每个API96个组合,API23/28共14个测试执行通过。旧固定下划触发链未观察到。
- P2-6:实际框架
currentInputBinding == null条件下调用解绑,编辑器令牌和引擎代号失效、旧按键缓存清空,准备下一输入框后旧key ticket仍拒绝;API23/28共4个执行通过。直连gate在UID提前返回前已失效,旧Fcitx activeIC后果不适用;该验证不冒充OEM多屏硬件验收。
该批时点原139条对照剩 3条需处理(1条仍存在、2条部分修复)及1条待验证。D7按用户明确选择保留同步兜底:后台预备不可用时优先保存最新编辑,包含三类独立编辑器的新文件草稿;此项按需求保留,不计为代码修复。
同步传输与备份续修
- P0-10 /
143ccf73:新地址默认HTTPS;显式HTTP保留兼容,既有隐式HTTP一次性迁移为明确HTTP。真实TLS 307到明文的重定向在发送凭据前拒绝,新配置不再含硬编码局域网地址。30项定向执行日志,其中19项新增。 - P1-1 /
11137251:系统备份/设备转移仅含独立的设置界面外观白名单;手动导出默认加密,保留清楚标注的明文ZIP兼容选项及旧ZIP导入。64KiB独立认证块避免GCM实现缓存整个备份;全部认证通过后才进入ZIP验证,不记录密码。格式与兼容边界、21项定向执行日志,其中16项新增。系统云服务实际备份恢复未冒充已验收。
主题与日志的补充修复
2dd2d5af 修复严格文件名校验漏掉旧内置预设命名兼容:例如 sage-journey.json 的内部名称为 Sage Journey。读取时校验名称和目标边界,再迁移到规范文件名;已有同名文件时保留两份文件并优先读取规范文件。12份真实源配置的加载、重复读取、冲突、删除与路径越界,在API23/28共8个执行通过。
ea16a375 在私有no-backup目录原子保存最近一次Java未捕获异常,带发生时的提交、进程和时间,保留24小时;重新打开普通/筛选日志页导出时也附上该记录,清空日志会删除留存。6个纯JVM执行验证新实例读取、失败保留旧记录、长度/期限、软链接与普通导出。它不能补回此前缺失的堆栈,也不捕获native信号或系统杀进程。
用户报告改变符号显示位置后手势返回主题页时发生一次闪退,随后无法复现,提供的导出没有致命异常栈。主题名称警告已被捕获,只能确认预设被跳过。按用户要求等待下一次完整堆栈,未猜测修改主题页逻辑;不将上述两个补充修复当作该闪退根因修复。
验证与失败记录
- 完整1101项应用JVM统计及运行日志:失败、错误和跳过均为0;构建逻辑6项、Python包校验4项通过。此前第一组完整1042项日志保留。
- N4初次夹具误将不支持方向宏的AlphabetKey纳入,原始失败保留;修正为生产支持的6键型。大矩阵单个方法触及512MB测试堆上限,原始失败保留;按键型拆方法并排空UI延迟任务,所有组合和断言均保留。
- Robolectric无法打开APK中UTF-8标志未置位的中文资源名,原始夹具失败保留;主题文件读取测试改用源树中完全相同的12份配置,不将其当作APK资源读取验收。
- 本轮没有新装机结果;最近模拟器仍运行
6f96066b。用户手机7ec08c8e的日志也不是本轮修复的装机验收。
当前可下载安装包(11137251)
下载11137251 ARM64 Release:CI40297595560全部通过。归档与APK SHA-256已核对,远端报告ZIP确认1101项/0失败/0跳过,仅ARM64直连原生库、2dex、16KiB对齐。本包包含截至11137251的全部续修,不含其后WebSocket改动。
历史安装包 ea16a375
CI 40279688181 对应 ea16a375,该次远端1042项应用JVM、Python及签名ARM64 Release构建全部通过。单测产物已下载并核对归档SHA-256及HTML中的1042/0失败/0跳过。
下载 ea16a375 ARM64 Release,包含编辑器草稿、内置主题兼容及崩溃日志留存。CI APK校验输出:2个dex,仅arm64-v8a的direct-rime/c++原生库,16KiB对齐。
后续语音、解绑、HTTPS及备份续修均已推送;此安装包仍对应ea16a375,尚不包含这些后续提交。构建范围保持用户指定的arm64-v8a。
11137251 的完整本地1101项应用JVM与6项构建逻辑全部通过,失败/错误/跳过均为0;ARM64 CI 40297595560已通过并产出上方对应安装包。
后续WebSocket已在c72115de完成,最新1125项验证与全绿CI。当时清单仅P1-8、P2-3仍待处理,P1-10待验证。后续 d3cb8769 已完成 P2-3,1156项回归与下载恢复边界;当前剩 P1-8 需处理、P1-10 待验证。