455 Commits

Author SHA1 Message Date
kdletters cde936bd6d 拆分移动壳文件载荷边界
移动壳文件执行与载荷校验拆成 files 和 filePayloads

移动壳单端门禁登记文件载荷模块

宿主壳方案和统一协议同步移动文件桥接分层
2026-06-20 07:11:57 +08:00
kdletters 823186462b 拆分桌面壳文件载荷边界
桌面壳文件对话框与载荷校验拆成 files 和 file_payloads

桌面壳单端门禁登记文件载荷模块

宿主壳方案和统一协议同步文件桥接分层
2026-06-20 06:55:23 +08:00
kdletters c026db0f32 纳入移动壳烟测脚本扫描
移动壳单端门禁登记 EAS 和 Expo 烟测脚本

移动壳生产替身词扫描覆盖烟测脚本

宿主壳方案和项目记忆同步烟测脚本验收口径
2026-06-20 06:42:06 +08:00
kdletters a51ed00712 加固移动壳隐私清单验收
移动壳 Expo 配置烟测反查 PrivacyInfo 插件消费路径

宿主壳方案和项目记忆同步隐私清单验收口径
2026-06-20 06:30:08 +08:00
kdletters 67e781c886 加固原生壳分发失败门禁
桌面壳外链和新窗口外链失败改为统一日志记录

桌面壳托盘关闭生命周期和隐藏失败改为统一日志记录

移动壳补齐 iOS Privacy Manifest 与配置门禁

宿主壳方案和项目记忆同步分发约束
2026-06-20 06:23:40 +08:00
kdletters c4193e27db 补齐移动壳原生包构建配置
移动壳新增 EAS Android 和 iOS 构建 profile

移动壳增加原生包构建配置 smoke 门禁

原生壳总验收接入移动 EAS 配置检查

宿主壳文档同步移动原生包构建口径
2026-06-20 06:11:53 +08:00
kdletters 8f29ddf8e0 记录桌面壳宿主动作失败
桌面壳菜单托盘动作失败改为统一日志记录

桌面壳单实例唤醒失败改为统一日志记录

桌面壳配置门禁禁止宿主动作静默吞错

宿主壳文档同步动作失败处理规则
2026-06-20 05:57:05 +08:00
kdletters 52526bd2ae 加固原生壳生产入口门禁
桌面壳深链打开失败改为显式日志记录

移动壳生产导出校验共享主站 URL

原生壳方案文档同步生产入口验收规则
2026-06-20 05:47:44 +08:00
kdletters 0cac82e982 补强原生壳事件注入链路
移动壳 ShellApp 补充生命周期网络和返回栈事件注入测试

移动壳网络状态重放失败改为显式日志记录

桌面壳生命周期和拖拽图片事件失败改为统一日志记录

两端配置门禁反查 HostBridge 事件注入和失败处理

宿主壳协议和共享决策记录同步事件失败规则
2026-06-20 05:38:48 +08:00
kdletters 73ea93ccc8 收紧桌面壳事件注册失败处理
桌面壳新窗口策略增加可测试决策函数

桌面壳 WebView 事件注册失败改为启动阻断或日志记录

桌面壳配置门禁禁止事件注册静默吞错

宿主壳协议和共享决策记录补充事件注册失败规则
2026-06-20 05:27:02 +08:00
kdletters 6c0d929e91 补齐移动壳扫码真实链路测试
新增 ShellApp 级扫码 HostBridge 测试覆盖 WebView 请求到相机扫码回注

移动壳 Vitest 纳入 TSX 组件测试

单端与根级原生壳门禁反查扫码链路测试存在
2026-06-20 05:17:13 +08:00
kdletters ed05b410c9 收口双端分享目标有效性校验
移动壳 share.setTarget 只缓存可生成分享内容的目标

桌面壳 share.setTarget 写缓存前校验目标有效性

双端配置检查反查分享目标有效性边界
2026-06-20 04:25:31 +08:00
kdletters 038b5d995d 收口移动壳分享目标缺失语义
移动壳 share.setTarget 缺少 target 时返回 invalid_request

移动壳分享目标测试覆盖缺目标不清空已有缓存

移动壳配置检查反查分享目标必填边界
2026-06-20 04:21:39 +08:00
kdletters b8562dfdd9 补齐移动壳剪贴板Unicode截断覆盖
移动壳剪贴板测试覆盖多字节文本按共享上限截断

移动壳配置检查反查剪贴板 Unicode 截断用例
2026-06-20 04:17:17 +08:00
kdletters 61f2dec93a 补齐桌面壳剪贴板Unicode截断覆盖
桌面壳剪贴板测试覆盖多字节文本按字符截断

桌面壳配置检查反查剪贴板 Unicode 截断用例
2026-06-20 04:13:44 +08:00
kdletters b547466db7 补齐桌面壳图片导出空字节边界
桌面壳图片导出解码后拒绝空字节内容

桌面壳 Rust 测试覆盖图片导出空内容拒绝

桌面壳配置检查反查图片导出字节边界
2026-06-20 04:09:35 +08:00
kdletters 395006a90a 补齐移动壳图片导出空内容边界
移动壳图片导出拒绝零字节 base64 内容

移动壳 HostBridge 测试覆盖图片导出空内容拒绝

移动壳配置检查反查图片导出字节边界
2026-06-20 04:04:46 +08:00
kdletters 838bd86ea0 收口桌面壳未声明方法测试派生
桌面壳 Rust 测试从 method 白名单和 capability 差集派生 unsupported 覆盖

桌面壳配置检查反查 unsupported 测试派生路径

架构文档记录桌面壳未声明方法派生规则
2026-06-20 04:01:09 +08:00
kdletters 2f39794471 收口移动壳角标平台差异门禁
移动壳配置检查反查 Android 角标请求返回 unsupported_capability 的测试覆盖

HostBridge 协议文档明确 Android 不声明角标且不得伪造成功

项目记忆记录移动壳角标平台差异测试门禁
2026-06-20 03:53:55 +08:00
kdletters 79708e69b2 收口原生壳未声明能力覆盖
移动壳测试从共享 HostBridge method 和 iOS capability profile 派生未声明 method 覆盖

原生壳门禁反查 H5 native request 能力统一 helper 门控和移动壳派生测试

架构文档补齐移动端和桌面端 file.importText 能力清单与未声明 method 规则
2026-06-20 03:43:04 +08:00
kdletters 1355d6f90b 收口桌面壳未声明能力语义
桌面壳未声明共享方法自动派生 unsupported 覆盖清单

桌面壳测试补齐拍照扫码触觉等未声明方法的 unsupported 语义

架构文档记录桌面壳未声明能力不得伪成功
2026-06-20 03:25:52 +08:00
kdletters 8f107cd991 收口原生壳替身词扫描范围
桌面壳配置检查跳过 Tauri target 构建产物

原生壳文档说明替身词扫描只覆盖源码和配置

共享项目记忆记录构建产物不进入生产扫描
2026-06-20 03:20:37 +08:00
kdletters 74661b1a5a 收口本地通知交付结果语义
新增共享本地通知系统交付结果契约

Expo 与 Tauri 壳返回结构化通知交付结果

H5 兼容结构化结果并同步门禁、测试和文档
2026-06-20 03:13:53 +08:00
kdletters e2fc7d78f3 收口移动壳导入文件名归一
新增共享 HostBridge 导入文件名清洗函数

移动文件导入改用导入专用文件名归一边界

补充契约测试、移动配置门禁和协议文档
2026-06-20 03:04:21 +08:00
kdletters eb869fb844 补齐原生壳配置门禁
将 Tauri Info.plist 纳入生产替身词扫描

强制移动壳文档导入复用共享 MIME 与大小边界

同步原生壳协议、方案和共享记忆
2026-06-20 02:57:29 +08:00
kdletters 057f1233bb 补强原生壳替身词扫描
将未实现和临时纳入 Expo 与 Tauri 生产壳源码替身词门禁

区分 H5 HostBridge 调用链真实兼容语义与替身词扫描范围

同步原生壳方案、统一协议和共享记忆
2026-06-20 02:45:21 +08:00
kdletters 87f2532a02 收口桌面运行时响应边界
将 Tauri host.getRuntime 成功响应包装收口到 runtime 模块

让桌面 dispatch 只委托运行时请求

同步桌面壳配置门禁和共享记忆
2026-06-20 02:29:09 +08:00
kdletters 40603e0163 收口移动文件导出响应边界
将 Expo 文本、图片和音频导出成功响应包装收口到 files 模块

让移动 dispatch 只委托文件导出请求

同步移动壳配置门禁和共享记忆
2026-06-20 02:23:45 +08:00
kdletters ef198f6d4f 收口移动图片导入响应边界
将 Expo 图片选择和拍摄成功响应包装收口到 files 模块

让移动 dispatch 只委托图片导入和拍摄请求

同步移动壳配置门禁和共享记忆
2026-06-20 02:18:31 +08:00
kdletters 7784b15999 收口移动文档导入响应边界
将 Expo 文本、文档和音频导入成功响应包装收口到 files 模块

让移动 dispatch 只委托 DocumentPicker 导入请求

同步移动壳配置门禁和共享记忆
2026-06-20 02:14:22 +08:00
kdletters 890937f6fe 收口移动扫码响应边界
将 Expo 二维码扫码成功响应包装收口到 scanner 模块

让移动 dispatch 只委托扫码请求

同步移动壳配置门禁和共享记忆
2026-06-20 02:03:42 +08:00
kdletters 65b9125d22 收口移动运行时响应边界
将 Expo host.getRuntime 成功响应包装收口到 runtime 模块

让移动 dispatch 只委托运行时请求

同步移动壳配置门禁和共享记忆
2026-06-20 01:55:58 +08:00
kdletters 941e7d979a 收口移动导航响应边界
将 Expo 外链打开、WebView 刷新和受控导航成功响应包装收口到 navigation 模块

让移动 dispatch 只委托导航请求

同步移动壳配置门禁和共享记忆
2026-06-20 01:43:35 +08:00
kdletters b57998d55e 收口移动分享响应边界
将 Expo 分享目标缓存和系统分享成功响应包装收口到 share 模块

让移动 dispatch 只委托分享请求

同步移动壳配置门禁和共享记忆
2026-06-20 01:27:04 +08:00
kdletters c42afe86a6 收口移动通知响应边界
将 Expo 本地通知成功响应包装收口到 notifications 模块

让移动 dispatch 只委托本地通知请求

同步移动壳配置门禁和共享记忆
2026-06-20 01:11:39 +08:00
kdletters 2e64713562 收口移动触觉响应边界
将 Expo 触觉反馈成功响应包装收口到 haptics 模块

让移动 dispatch 只委托触觉反馈请求

同步移动壳配置门禁和共享记忆
2026-06-20 00:58:04 +08:00
kdletters 55f915e387 收口移动外观查询响应边界
将 Expo 外观查询成功响应包装收口到 appearance 模块

让移动 dispatch 只委托外观查询请求

同步移动壳配置门禁和共享记忆
2026-06-20 00:45:46 +08:00
kdletters 982a9ed55e 收口移动角标响应边界
将 Expo 角标成功响应包装收口到 badge 模块

让移动 dispatch 只委托角标请求

同步移动壳配置门禁和共享记忆
2026-06-20 00:31:22 +08:00
kdletters d780d354ba 收口移动剪贴板响应边界
将 Expo 剪贴板读写成功响应收口到 clipboard 模块

让移动 dispatch 只委托剪贴板请求

同步移动壳配置门禁和共享记忆
2026-06-20 00:24:45 +08:00
kdletters 6ecfc89233 收口桌面角标通知响应边界
将 Tauri 角标成功响应包装收口到 badge 模块

将 Tauri 本地通知响应映射收口到 notifications 模块

让桌面 dispatch 只委托角标和通知请求

同步桌面壳配置门禁和共享记忆
2026-06-20 00:17:25 +08:00
kdletters e51d92f0d5 收口移动网络桥接响应边界
将 Expo network.status 成功响应包装收口到 network 模块

让移动 dispatch 只委托网络状态请求

同步移动壳配置门禁和共享记忆
2026-06-20 00:06:30 +08:00
kdletters 3d4657432a 收口桌面网络桥接响应边界
将 Tauri network.status 响应映射收口到 network 模块

让桌面 dispatch 只委托网络状态请求

同步桌面壳配置门禁和共享记忆
2026-06-19 23:50:13 +08:00
kdletters 2f37a143f1 收口移动外链桥接系统调用
将 Expo app.openExternalUrl 的 Linking 调用收口到 navigation 模块

让移动 dispatch 只委托外链请求载荷

同步移动壳配置门禁和共享记忆
2026-06-19 23:39:00 +08:00
kdletters 582fb20347 收口桌面运行时桥接边界
将 Tauri host.getRuntime 回包组装收口到 runtime 模块

让桌面 dispatch 只委托运行时请求

同步桌面壳结构门禁、架构文档和共享记忆
2026-06-19 23:29:08 +08:00
kdletters ffe7bda460 收口移动运行时桥接边界
将 Expo host.getRuntime 回包组装收口到 runtime 模块

让移动 dispatch 只委托运行时请求

同步移动壳结构门禁、架构文档和共享记忆
2026-06-19 23:09:55 +08:00
kdletters c3b2c73879 收口移动触觉反馈载荷边界
将 Expo 触觉反馈 HostBridge payload 解析收口到 haptics 模块

让移动 dispatch 只委托触觉反馈请求

同步移动壳触觉反馈门禁、架构文档和共享记忆
2026-06-19 22:59:46 +08:00
kdletters ff64021c20 收口桌面文件桥接执行边界
将 Tauri 文件导入导出执行编排收口到 files 模块

让桌面 dispatch 只委托文件能力请求

同步桌面壳文件边界门禁、架构文档和共享记忆
2026-06-19 22:54:54 +08:00
kdletters dfeea9e93c 收口桌面窗口标题桥接边界
将 Tauri 窗口标题 HostBridge 处理收口到 title 模块

让桌面 dispatch 只委托窗口标题请求

同步桌面壳结构门禁、架构文档和共享记忆
2026-06-19 22:45:02 +08:00
kdletters d53bd66e99 收口原生分享桥接边界
将 Expo 分享目标状态收口到 share 模块

将 Tauri 分享目标与剪贴板 fallback 响应收口到 share 模块

同步两端分享结构门禁和共享记忆
2026-06-19 22:31:05 +08:00
kdletters b1c42885ba 收口移动壳通知桥接边界
将 Expo 本地通知 payload 归一收口到 notifications 模块

让移动壳 dispatch 只委托通知 HostBridge 请求

同步移动壳结构门禁、架构文档和共享记忆
2026-06-19 22:24:41 +08:00