455 Commits

Author SHA1 Message Date
kdletters 1d6fda4696 收口原生剪贴板桥接边界
将 Expo 剪贴板 HostBridge 读写收口到 clipboard 模块

将 Tauri 剪贴板 HostBridge 响应收口到 clipboard 模块

同步原生壳结构门禁、架构文档和共享记忆
2026-06-19 22:18:54 +08:00
kdletters c0940bc790 收口原生网络查询边界
将 Expo 网络状态查询收口到 HostBridge network 模块

将 Tauri 网络状态查询收口到 HostBridge network 模块

同步原生壳结构门禁、架构文档和共享记忆
2026-06-19 22:08:19 +08:00
kdletters 177c18ddcd 收口原生导航桥接边界
将 Expo 外链打开和受控 WebView 导航收口到 navigation 模块

将 Tauri 外链打开和主窗口导航刷新收口到 navigation 模块

同步原生壳结构门禁、架构文档和共享记忆
2026-06-19 22:01:57 +08:00
kdletters f04daee4a4 收口原生外观查询边界
将 Expo 系统配色读取收口到 appearance 模块

将 Tauri 窗口主题读取收口到 appearance 模块

同步原生壳结构门禁和架构文档清单
2026-06-19 21:51:28 +08:00
kdletters b92b9bbc29 收口原生角标边界
将 Expo 应用角标设置收口到 badge 模块

将 Tauri 任务栏角标设置收口到 badge 模块

同步原生壳结构门禁和架构文档清单
2026-06-19 21:45:04 +08:00
kdletters af6aea3de2 收口桌面通知边界
将 Tauri 本地通知发送收口到 notifications 模块

让桌面 HostBridge dispatch 只负责通知 payload 分发

同步原生壳结构门禁和架构文档清单
2026-06-19 21:37:10 +08:00
kdletters b26168a293 收口桌面剪贴板边界
将 Tauri 剪贴板读写收口到 clipboard 模块

让桌面 HostBridge dispatch 只负责剪贴板 payload 分发

同步原生壳结构门禁和架构文档清单
2026-06-19 21:23:35 +08:00
kdletters 9eeaa6a4e0 收口移动触觉反馈边界
将 Expo 触觉反馈调用收口到 haptics 模块

让 HostBridge dispatch 只负责触觉反馈 payload 分发

同步原生壳结构门禁和架构文档清单
2026-06-19 21:12:41 +08:00
kdletters 2dcc2fa634 收口移动剪贴板边界
将 Expo 剪贴板读写收口到 clipboard 模块

让 HostBridge dispatch 只负责剪贴板 payload 分发

同步原生壳结构门禁和架构文档清单
2026-06-19 18:04:58 +08:00
kdletters 5db17d1a12 收口移动本地通知边界
将 Expo 本地通知权限和调度收口到 notifications 模块

让 HostBridge dispatch 只负责通知 payload 归一和分发

同步原生壳结构门禁和架构文档清单
2026-06-19 17:57:09 +08:00
kdletters cba6e29d1d 统一桌面外链打开 helper
让桌面 WebView 外链和 HostBridge 外链共用 opener helper

用配置检查禁止 HostBridge 直接调用 opener

同步桌面壳外链 helper 共用决策记录
2026-06-19 17:47:24 +08:00
kdletters 8f8c379685 统一移动外链打开 helper
让 HostBridge 外链打开复用移动壳外链 helper

用配置检查防止两条外链路径漂移

同步移动壳外链 helper 共用决策记录
2026-06-19 17:42:06 +08:00
kdletters 8764e25550 收紧移动外链打开边界
将 WebView 外链打开收口到可测试 helper

要求移动壳外链先通过 canOpenURL 再 openURL

同步移动壳外链打开边界记录
2026-06-19 17:38:00 +08:00
kdletters 2c67cd595d 收紧移动事件注入边界
要求 Expo 壳事件注入先校验共享 HostBridge 事件名

保留统一 message script 的 origin 和 source 约束

同步移动壳事件注入边界记录
2026-06-19 17:31:48 +08:00
kdletters 2709f48118 收紧桌面运行时回包来源
将 Tauri host.getRuntime 回包收口到 desktop_runtime

要求桌面运行时平台版本和能力来源保持单一入口

同步桌面壳运行时回包边界记录
2026-06-19 17:26:50 +08:00
kdletters c970711d7a 收紧移动运行时能力上报
统一移动壳 host.getRuntime 的平台归一化来源

要求运行时 capabilities 复用同一个平台值

同步移动壳运行时能力边界记录
2026-06-19 17:21:55 +08:00
kdletters 204e629100 收紧移动文档选择器门禁
锁定文本、文档和音频导入的 DocumentPicker 单选缓存配置

要求移动壳文件导入继续使用受控类型清单

同步 HostBridge 文件选择边界记录
2026-06-19 17:17:26 +08:00
kdletters 83be6c02d9 收紧桌面文件选择器过滤门禁
锁定 Tauri 文本、文档、图片和音频选择器扩展名边界

要求导入与导出文件对话框继续匹配 HostBridge 文件契约

同步桌面壳文件选择边界记录
2026-06-19 17:12:40 +08:00
kdletters db99448baa 收紧移动图片选择器参数门禁
锁定图片导入和拍摄 picker 只允许 images 媒体类型

要求 picker 禁用编辑和 EXIF 并返回 base64 原始图片数据

同步移动图片导入与拍摄边界记录
2026-06-19 17:07:34 +08:00
kdletters dd2e3f4db1 锁定移动壳权限说明文案
要求相册权限说明只描述选择图片导入

要求相机权限说明分别对应拍摄素材和二维码扫描

同步移动壳权限文案防漂移决策记录
2026-06-19 17:03:23 +08:00
kdletters 8d40ec79c8 收紧移动壳相机权限来源门禁
禁止 Android 源 app.json 手写 CAMERA 权限

要求 CAMERA 只由真实扫码和拍摄插件生成到最终 Expo 配置

同步移动壳权限来源决策记录
2026-06-19 16:59:28 +08:00
kdletters a7accef6f8 收紧桌面壳错误响应边界
限制 Tauri HostBridge failed 出口只返回协议错误码

非法桌面错误码统一归一为 host_error 固定失败文案

新增桌面协议测试和配置门禁防止错误码漂移

同步 HostBridge envelope 错误归一决策记录
2026-06-19 16:55:02 +08:00
kdletters fb19e5e55a 收紧移动壳错误响应边界
限制 Expo HostBridge 只透传共享协议错误码和字符串消息

未知原生异常统一归一为 host_error 固定失败文案

新增移动壳测试和配置门禁防止错误对象泄漏

同步 HostBridge envelope 错误归一决策记录
2026-06-19 16:50:33 +08:00
kdletters d224ffbf82 收紧桌面命令权限产物门禁
要求 Tauri 自动生成权限目录必须存在且只包含 HostBridge command 权限

反查 host_bridge_request 自动权限文件的 allow / deny 声明

同步桌面壳权限边界记录
2026-06-19 16:45:50 +08:00
kdletters 14da1a7e12 收紧分享载荷边界
将 share.open 分享目标归一化提升到共享 HostBridge 契约

让 H5 facade 和 Expo 移动壳按共享分享边界发送与消费载荷

把原生分享 URL 统一映射到公开 H5 主站地址

增加分享载荷测试和三端壳总门禁反查

同步宿主壳协议文档和共享决策记录
2026-06-19 16:08:42 +08:00
kdletters 98f62474b6 收紧外链载荷边界
将 app.openExternalUrl 外链载荷归一化提升到共享 HostBridge 契约

让 H5 facade 和 Expo 移动壳按共享外链 payload 边界发起与消费请求

增加外链载荷测试和三端壳总门禁反查

同步宿主壳协议文档和共享决策记录
2026-06-19 15:48:48 +08:00
kdletters 64f496d091 收紧窗口标题载荷边界
将 app.setTitle 标题长度和控制字符规则提升到共享 HostBridge 契约

让 H5 facade 和 Tauri 壳按共享窗口标题边界归一化载荷

增加标题边界测试和三端壳总门禁反查

同步宿主壳协议文档和共享决策记录
2026-06-19 15:34:37 +08:00
kdletters 048c879b20 收紧剪贴板写入文本边界
让 Expo 和 Tauri 壳在写系统剪贴板前按共享上限截断文本

增加移动壳剪贴板写入边界测试和两端配置门禁

补充宿主壳协议文档和共享决策记录
2026-06-19 15:10:23 +08:00
kdletters c956558531 收紧文本导出 MIME 边界
将文本导出 MIME 收窄到共享 HostBridge 文本 MIME 清单

让 Expo 和 Tauri 壳拒绝非文本 MIME 的 file.exportText 请求

增加移动端和桌面端门禁反查文本导出 MIME 边界

补充宿主壳协议文档和共享决策记录
2026-06-19 15:02:19 +08:00
kdletters e0f53f2994 统一移动壳外链协议来源
让移动壳导航测试按共享 HostBridge 外链协议清单反查

增加移动壳配置门禁防止 WebView 外链协议在 shell 层重新硬编码

补充共享决策记录说明 WebView 外链协议必须复用共享归一化逻辑
2026-06-19 14:51:21 +08:00
kdletters e1a8aa4ef2 锁定桌面壳单端结构门禁
为桌面壳配置检查增加 Rust 根目录与 host_bridge/shell 模块清单校验

要求 main.rs 保持薄入口并由 app.rs 承接 Tauri 装配

补充共享决策记录说明桌面壳单端结构门禁
2026-06-19 14:44:57 +08:00
kdletters e51a65138a 统一移动通知频道契约
将移动端 Android 本地通知频道提升到共享 HostBridge 契约

让 Expo 通知调度和测试复用共享频道标识

增加移动壳配置门禁防止通知频道回退到本地字面量

补充宿主壳方案文档和共享决策记录
2026-06-19 14:37:02 +08:00
kdletters b6b1e21211 统一移动下载协议阻断清单
将移动 WebView 禁止下载协议提升到共享 HostBridge 契约

让移动壳导航拦截和注入脚本复用共享协议清单

增加移动壳门禁和测试防止协议清单回退到本地字面量

补充宿主壳方案文档和共享决策记录
2026-06-19 14:27:34 +08:00
kdletters c14d699ee0 统一桌面网络探测超时契约
将桌面网络探测超时提升到共享 HostBridge 契约

让 Tauri 网络状态探测镜像共享超时边界

增加桌面壳配置门禁反查网络探测超时

补充宿主壳方案文档和共享决策记录
2026-06-19 14:10:56 +08:00
kdletters 14f4ae4a65 统一原生扫码超时契约
将二维码扫码超时提升到共享 HostBridge 契约

让 H5 facade 和测试复用共享扫码超时常量

增加原生壳门禁拦截扫码超时字面量回退

补充宿主壳方案文档和共享决策记录
2026-06-19 14:01:29 +08:00
kdletters fb8c9c2880 收口宿主用户交互超时
将宿主用户交互长操作超时提升到共享 HostBridge 契约

让 H5 HostBridge facade 复用共享用户交互超时

增加原生壳门禁拦截 H5 facade 手写交互超时

补充 HostBridge 测试、壳方案和共享决策记录
2026-06-19 13:48:54 +08:00
kdletters ca9581e534 收口宿主运行态回读超时
将原生宿主 runtime 回读短超时提升到共享 HostBridge 契约

让 H5 HostBridge facade 复用共享 runtime 回读超时

增加原生壳门禁拦截本地 runtime 回读超时重声明

补充 runtime 回读测试、壳方案和共享决策记录
2026-06-19 13:41:54 +08:00
kdletters ef2200f8ac 收口宿主响应回放缓存边界
将 HostBridge 响应回放缓存上限提升到共享契约

让 Expo 移动壳复用共享缓存上限并拒绝本地重声明

让 Tauri 桌面壳配置检查反查共享缓存上限

补充两端回放缓存淘汰测试和壳方案文档
2026-06-19 13:33:46 +08:00
kdletters bd0f566e76 收口原生壳请求超时边界
将原生壳请求默认超时和最大超时提升到共享 HostBridge 契约

让 H5 nativeAppHostBridge 复用共享超时边界

增加原生壳门禁拦截本地超时边界重声明

补充原生壳方案和共享决策记录
2026-06-19 13:26:01 +08:00
kdletters d4bc8fcddf 补齐桌面壳媒体权限说明
为 Tauri macOS 包加入摄像头和麦克风用途说明

将 macOS Info.plist 路径和文案纳入桌面壳配置门禁

同步宿主壳方案文档和项目共享决策记录
2026-06-19 13:06:30 +08:00
kdletters 68d0208e2d 开放移动壳同源麦克风玩法
为 Expo 移动壳配置同源 H5 实时玩法所需麦克风权限

为 WebView 增加同源媒体捕获授权策略

更新移动壳配置门禁和 Expo public config 烟测

同步宿主壳方案文档和项目共享决策记录
2026-06-19 13:01:16 +08:00
kdletters f619d861c9 接入原生壳文档导入
新增 HostBridge file.importDocument 契约与文档 MIME 边界

实现 Expo 与 Tauri 受控文档选择和 base64 返回

创作 Agent 工作台优先使用文档导入并保留文本导入兜底

同步宿主壳门禁、测试、架构文档和共享记忆
2026-06-19 09:35:37 +08:00
kdletters 030a9fa209 收紧宿主壳结构门禁
补齐桌面壳单端 Rust 根目录和分层文件清单检查

将移动壳 src/env.d.ts 纳入根级结构门禁和文档反查

同步宿主壳结构门禁的架构文档与共享记忆
2026-06-19 08:54:28 +08:00
kdletters 6d7da493b9 收紧移动壳单端结构门禁
移动壳配置检查新增精确源码模块清单

移动端单端检查拒绝未登记生产模块

更新宿主壳架构文档和共享记忆验收口径
2026-06-19 08:02:54 +08:00
kdletters e27834930f 收紧宿主壳结构门禁
根级原生壳门禁按完整路径反查三端桥接层文档

移动端和桌面端壳目录拒绝未登记子目录或生产入口

桌面端单端配置检查改为精确 Rust 模块清单

更新宿主壳架构文档和共享记忆中的验收口径
2026-06-19 07:54:52 +08:00
kdletters de2798d415 收口宿主上下文查询契约
共享 HostBridge 契约新增宿主上下文 query 字段和值

移动壳和 H5 运行态改用共享 query 契约

桌面壳和微信壳门禁反查共享 query 契约

微信请求头和 H5 路由保留字段跟随共享契约

同步宿主上下文契约文档和共享记忆
2026-06-19 07:39:51 +08:00
kdletters f6ef336091 收口移动壳深链域名门禁
移动壳配置检查从共享公开主站 origin 推导 iOS associated domain

Expo public config smoke 从共享公开主站 origin 推导 Android App Link host

同步移动壳深链声明文档和共享决策记录
2026-06-19 06:28:06 +08:00
kdletters 629d8f9974 收口桌面壳网络探测来源
桌面壳网络探测从 WEB_APP_ORIGIN 解析主站 host 和端口

桌面壳配置检查禁止 network.rs 重新写死公开主站域名

同步 HostBridge 协议文档、壳方案文档和共享决策记录
2026-06-19 06:20:43 +08:00
kdletters b6db1ad07d 收口移动壳角标边界来源
移动壳角标错误文案改为读取共享上限

补充移动壳配置门禁防止本地重声明角标上限

同步宿主壳协议文档与共享决策记录
2026-06-19 06:07:30 +08:00
kdletters 5a569a9e4d 收口移动壳宿主版本来源
移动壳 HostBridge 版本改为从 Expo 配置读取

补充运行时版本解析测试和配置门禁

同步宿主壳方案文档与共享决策记录
2026-06-19 05:56:48 +08:00