Commit Graph

92 Commits

Author SHA1 Message Date
kdletters 67e781c886 加固原生壳分发失败门禁
桌面壳外链和新窗口外链失败改为统一日志记录

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

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

宿主壳方案和项目记忆同步分发约束
2026-06-20 06:23:40 +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 ed05b410c9 收口双端分享目标有效性校验
移动壳 share.setTarget 只缓存可生成分享内容的目标

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

双端配置检查反查分享目标有效性边界
2026-06-20 04:25:31 +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 838bd86ea0 收口桌面壳未声明方法测试派生
桌面壳 Rust 测试从 method 白名单和 capability 差集派生 unsupported 覆盖

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

架构文档记录桌面壳未声明方法派生规则
2026-06-20 04:01:09 +08:00
kdletters 1355d6f90b 收口桌面壳未声明能力语义
桌面壳未声明共享方法自动派生 unsupported 覆盖清单

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

架构文档记录桌面壳未声明能力不得伪成功
2026-06-20 03:25:52 +08:00
kdletters 74661b1a5a 收口本地通知交付结果语义
新增共享本地通知系统交付结果契约

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

H5 兼容结构化结果并同步门禁、测试和文档
2026-06-20 03:13:53 +08:00
kdletters 87f2532a02 收口桌面运行时响应边界
将 Tauri host.getRuntime 成功响应包装收口到 runtime 模块

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

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

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

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

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

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

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

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

同步桌面壳结构门禁、架构文档和共享记忆
2026-06-19 23:29:08 +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 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 cba6e29d1d 统一桌面外链打开 helper
让桌面 WebView 外链和 HostBridge 外链共用 opener helper

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

同步桌面壳外链 helper 共用决策记录
2026-06-19 17:47:24 +08:00
kdletters 2709f48118 收紧桌面运行时回包来源
将 Tauri host.getRuntime 回包收口到 desktop_runtime

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

同步桌面壳运行时回包边界记录
2026-06-19 17:26:50 +08:00
kdletters a7accef6f8 收紧桌面壳错误响应边界
限制 Tauri HostBridge failed 出口只返回协议错误码

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

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

同步 HostBridge envelope 错误归一决策记录
2026-06-19 16:55:02 +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 c14d699ee0 统一桌面网络探测超时契约
将桌面网络探测超时提升到共享 HostBridge 契约

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

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

补充宿主壳方案文档和共享决策记录
2026-06-19 14:10:56 +08:00
kdletters ef2200f8ac 收口宿主响应回放缓存边界
将 HostBridge 响应回放缓存上限提升到共享契约

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

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

补充两端回放缓存淘汰测试和壳方案文档
2026-06-19 13:33:46 +08:00
kdletters d4bc8fcddf 补齐桌面壳媒体权限说明
为 Tauri macOS 包加入摄像头和麦克风用途说明

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

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

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

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

同步宿主壳门禁、测试、架构文档和共享记忆
2026-06-19 09:35:37 +08:00
kdletters de2798d415 收口宿主上下文查询契约
共享 HostBridge 契约新增宿主上下文 query 字段和值

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

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

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

同步宿主上下文契约文档和共享记忆
2026-06-19 07:39:51 +08:00
kdletters 629d8f9974 收口桌面壳网络探测来源
桌面壳网络探测从 WEB_APP_ORIGIN 解析主站 host 和端口

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

同步 HostBridge 协议文档、壳方案文档和共享决策记录
2026-06-19 06:20:43 +08:00
kdletters 41bccdd9fc 收紧桌面壳主窗口启动门禁
按 label=main 解析 Tauri 主窗口配置并补写宿主上下文

缺少主窗口配置时阻断启动而不是静默跳过 WebView 创建

补充桌面壳配置门禁和 Rust 单测覆盖

同步宿主壳方案文档与共享决策记录
2026-06-19 05:41:13 +08:00
kdletters e4b9cbf09d 接入移动端原生扫码能力
新增 scanner.scanQrCode HostBridge 契约与二维码结果归一。

接入 Expo Camera 扫码 overlay 并保留 H5 浏览器扫码回退。

让 Tauri 白名单识别扫码 method 但不声明桌面扫码能力。

同步原生壳门禁、Expo 权限检查、方案文档和共享决策记录。
2026-06-19 05:13:21 +08:00
kdletters a471e69455 补齐桌面壳后台生命周期
桌面壳生命周期按可见性、最小化和焦点统一归一

托盘隐藏前注入 background 并在恢复窗口时回放当前状态

H5 lifecycle 测试覆盖 background 暂停语义

宿主壳文档和原生壳门禁同步桌面 background 约定
2026-06-19 04:25:42 +08:00
kdletters 81b51ed405 拆薄桌面壳入口
新增桌面壳 app.rs 承接 Tauri 应用装配

收敛 main.rs 为薄入口并调用 app::run

扩展原生壳门禁锁定桌面入口职责边界

更新宿主壳方案和共享决策记录
2026-06-19 04:07:08 +08:00
kdletters 5ab7b53bf2 收紧桌面壳分享地址边界
桌面壳分享文本只接受公开主站同源地址

拒绝外域和危险分享地址且不回退缓存目标

补充桌面壳分享地址回归测试和配置门禁

更新 HostBridge 分享边界文档和共享决策
2026-06-19 03:12:27 +08:00
kdletters 429e65952d 收口宿主事件白名单
新增共享 HostBridge event 白名单与类型守卫

让 H5、Expo 和 Tauri 只分发白名单宿主事件

补齐移动端、桌面端和根级原生壳门禁

更新宿主壳方案文档和项目决策记录
2026-06-19 02:18:36 +08:00
kdletters 1f5c752302 统一桌面壳宿主上下文补写
收敛 Tauri 配置为基础 H5 入口

由 Rust shell/url 统一补写桌面宿主上下文

增加桌面 HostBridge 协议常量漂移检查

增加微信壳 capability 共享白名单校验

更新原生壳方案和共享决策记录
2026-06-19 00:10:14 +08:00
kdletters 9eee997731 收紧原生壳桥接权限边界
移动壳 HostBridge 协议名和版本改为共享契约常量

移动壳配置检查锁定主动导航和 deep link 宿主上下文补写

桌面壳主窗口 capability 移除 Tauri core 默认权限

桌面壳配置检查拒绝 core 默认权限和插件权限外露

更新原生壳方案与共享决策记录
2026-06-18 23:52:40 +08:00
kdletters 04d2498579 桌面壳主动导航保留宿主上下文
抽出 Tauri H5 宿主上下文补写方法

让桌面深链和主动同源跳转共用宿主上下文

补充桌面壳检查脚本和文档决策
2026-06-18 23:34:44 +08:00
kdletters 32d7061b52 原生壳收紧外链协议门禁
让桌面壳外链归一改用 URL parser 校验允许协议

在统一原生壳检查中对齐共享契约与桌面壳外链协议清单

同步原生壳方案文档和团队决策记录中的外链协议口径
2026-06-18 22:40:35 +08:00
kdletters 13f1738d9c 桌面壳补齐返回栈状态事件
为 Tauri 壳声明 navigation.canGoBack 能力

注入固定脚本追踪 H5 当前文档路由栈并回放 HostBridge 事件

补充 H5 返回栈事件订阅 facade 与测试

更新原生壳门禁、方案文档和共享决策
2026-06-18 21:50:18 +08:00
kdletters ddfdc409f3 桌面壳补齐历史导航菜单
为桌面应用菜单增加后退和前进历史动作

补充桌面菜单测试与配置门禁

更新桌面壳菜单导航文档
2026-06-18 21:14:51 +08:00
kdletters 19ec8daf37 桌面壳校验文件真实内容
为图片和音频导入导出增加 bytes 头部校验

桌面图片拖入跳过伪装文件继续寻找有效图片

更新桌面壳门禁与宿主壳文件能力文档
2026-06-18 20:39:34 +08:00