Commit Graph

584 Commits

Author SHA1 Message Date
kdletters 7c50fa489d 接入反馈凭证原生拍摄
反馈页在移动壳声明拍摄能力时展示拍摄凭证入口

拍摄图片复用现有凭证校验、预览和提交链路

同步原生壳测试、文档和共享记忆
2026-06-19 11:20:32 +08:00
kdletters 48cd76918b 接入视觉小说原生素材导入
视觉小说结果页图片和音频上传优先消费原生壳受控导入

保留平台素材上传、历史素材和 AI 图片生成原链路

补齐原生壳门禁、测试和架构文档
2026-06-19 11:12:39 +08:00
kdletters ce0765b298 接入原生返回栈状态消费
H5 新增 navigation.canGoBack hook 并在直达二级页时补齐返回锚点

路由导航保留完整原生宿主上下文并标记应用历史状态

补齐 HostBridge 返回栈消费测试、门禁和文档
2026-06-19 10:59:47 +08:00
kdletters 4a16263729 接入汪汪声浪结果页原生图片导入
汪汪声浪结果页三图槽位上传优先复用file.importImage宿主能力

补充原生导入取消和浏览器回退测试

将汪汪声浪结果页纳入原生壳H5调用链门禁

更新宿主壳协议、方案文档和共享记忆
2026-06-19 10:13:26 +08:00
kdletters bda650e598 接入创作参考图原生导入
Creation Agent参考图上传优先复用file.importImage宿主能力

补充原生导入取消和浏览器回退测试

更新宿主壳协议、方案文档和共享记忆
2026-06-19 09:57:56 +08:00
kdletters f619d861c9 接入原生壳文档导入
新增 HostBridge file.importDocument 契约与文档 MIME 边界

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

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

同步宿主壳门禁、测试、架构文档和共享记忆
2026-06-19 09:35:37 +08:00
kdletters c054e51580 加固宿主事件订阅门禁
新增原生壳检查脚本对 H5 HostBridge 事件订阅双能力门控的静态反查

补齐 HostBridge 事件订阅测试矩阵里的返回栈事件负向覆盖

更新宿主壳协议、壳方案和共享记忆中的事件门禁说明
2026-06-19 08:41:42 +08:00
kdletters 153cd8db9c 收紧宿主事件订阅门控
H5 HostBridge 事件订阅统一要求 host.events 与具体事件能力

补充事件通道和事件能力缺失的双向门控测试

更新宿主壳事件能力文档和共享决策记录
2026-06-19 08:30:19 +08:00
kdletters b88ed43aef 接入创作工作台会话导出
创作 Agent 工作台在原生壳中消费 file.exportText 导出会话 Markdown

补充会话导出按钮门控、payload 和错误提示测试

更新宿主壳能力文档和共享决策记录
2026-06-19 08:22:38 +08:00
kdletters de2798d415 收口宿主上下文查询契约
共享 HostBridge 契约新增宿主上下文 query 字段和值

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

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

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

同步宿主上下文契约文档和共享记忆
2026-06-19 07:39:51 +08:00
kdletters 4790f1dca5 补齐小程序壳路由一致性门禁
根级原生壳验收新增小程序页面路由一致性检查

订阅授权页面常量纳入微信协议反查

小程序 H5 页面常量、分享入口、来源 query 和 HTTPS 域名格式纳入门禁

同步宿主壳文档和共享决策记录
2026-06-19 06:51:34 +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 49fffbca74 补齐平台壳宿主消费门禁
新增平台壳草稿通知和角标 HostBridge 同步层

补充真实 Tauri transport 单测和跳一跳完成集成测试

扩展原生壳门禁覆盖 H5 宿主消费链路

更新宿主壳协议、方案和共享决策记录
2026-06-19 03:38:24 +08:00
kdletters deea0e8655 扩展宿主调用链扫描
自动发现 H5 HostBridge 真实能力调用链

补齐 runtime 回读与 wrapper 消费者扫描兜底

区分壳源码和 H5 业务调用链的禁替身词表

将视觉小说生产预览数据从 mock 命名收口为本地预览命名

更新原生壳验收文档和共享决策记录
2026-06-19 02:45:56 +08:00
kdletters 429e65952d 收口宿主事件白名单
新增共享 HostBridge event 白名单与类型守卫

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

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

更新宿主壳方案文档和项目决策记录
2026-06-19 02:18:36 +08:00
kdletters 75cd4f1abc 收口原生壳能力来源
新增共享 HostBridge capability profile,区分 Expo 移动通用、iOS 额外和 Tauri 桌面能力

移动壳能力清单改为引用共享 profile,入口 URL 类型支持 readonly 能力数组

两端配置检查和原生壳总门禁改为反查共享 profile,桌面 Rust 清单保持运行时镜像

补充 HostBridge profile 单测和 H5 readonly 能力合并类型兼容

同步 Expo/Tauri 壳方案、HostBridge 协议文档和项目决策记录
2026-06-19 02:02:15 +08:00
kdletters 6c17b4917f 原生壳补齐Tauri请求超时
H5 Tauri HostBridge transport 按 timeoutMs 释放卡住的 invoke 请求

补充 Tauri 超时、计时器清理和迟到回包不改写结果的单测

桌面壳配置门禁锁定 Tauri transport 超时封装

同步宿主壳方案文档和共享决策日志
2026-06-18 23:02:07 +08:00
kdletters 13f1738d9c 桌面壳补齐返回栈状态事件
为 Tauri 壳声明 navigation.canGoBack 能力

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

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

更新原生壳门禁、方案文档和共享决策
2026-06-18 21:50:18 +08:00
kdletters ab27815810 方洞结果页接入宿主图片导入
方洞结果页图片槽位在原生壳内优先调用 file.importImage

保留浏览器文件输入回退并覆盖原生导入、回退和取消选择测试

同步方洞玩法链路、HostBridge 方案和团队决策记录
2026-06-18 19:02:21 +08:00
kdletters 8754269705 收口H5桌面壳命令入口
共享HostBridge契约导出唯一Tauri命令名

H5原生壳Transport改用共享Tauri命令常量

桌面壳配置检查对齐H5与Rust命令入口

宿主壳方案文档补充Tauri命令入口门禁

共享决策日志记录H5 Tauri命令边界
2026-06-18 14:06:05 +08:00
kdletters 6cf1038ff3 收口HostBridge入站消息来源
让Expo和Tauri注入的HostBridge消息显式携带当前窗口origin和source

H5原生HostBridge监听器拒绝非当前窗口或非当前origin的消息

补充伪造来源回包测试,防止sandbox消息结算宿主请求

更新原生壳方案和共享决策记录
2026-06-18 12:43:53 +08:00
kdletters 29cd7866fc 接入账号状态宿主刷新
账号状态变化优先通过宿主刷新当前 WebView

宿主刷新不可用时回退浏览器刷新

补充 AuthGate 宿主刷新测试和宿主壳文档
2026-06-18 07:43:26 +08:00
kdletters 621719077f 接入宿主网络状态队列轮询
新增宿主网络在线 Hook 并覆盖离线与恢复事件测试

平台外部生成队列概览在原生壳离线时暂停轮询

同步宿主壳网络状态消费方案与共享决策记录
2026-06-18 07:31:41 +08:00
kdletters 20e4e88bd4 同步草稿未读原生角标
平台壳按可见作品架未读完成草稿同步 app.setBadgeCount

新增草稿未读更新计数模型并覆盖多恢复ID去重

更新原生壳方案、HostBridge 协议和共享决策记录
2026-06-18 07:18:42 +08:00
kdletters cdcbaf4cee 接入草稿生成原生通知
平台壳生成完成和失败收口消费 notification.showLocal

新增 HostBridge 草稿通知 payload 与去重模型测试

迁移生成状态纯函数以通过组件 Fast Refresh 约束

更新原生壳方案、HostBridge 协议和共享决策记录
2026-06-18 07:10:01 +08:00
kdletters e8c2e8d532 接入填码原生剪贴板读取
邀请码填写和兑换码弹窗在宿主声明 clipboard.readText 时显示粘贴入口

粘贴动作只读取宿主纯文本并填入现有受控输入框,不自动提交或伪造兑换成功

补充填码粘贴回归测试和 profile 剪贴板 helper

更新 Expo/Tauri 宿主壳方案、HostBridge 协议和共享决策记录
2026-06-18 06:48:46 +08:00
kdletters a0497cb39d 接入个人头像原生图片导入
个人头像上传在原生壳声明 file.importImage 时调用 HostBridge 图片导入

头像导入结果转换为 File 后复用现有类型校验、5 MiB 限制、方形裁剪和资料更新链路

补充头像原生导入回归测试,确认不会触发隐藏文件输入

更新 Expo/Tauri 宿主壳方案、HostBridge 协议和共享决策记录
2026-06-18 06:39:19 +08:00
kdletters 01349e7882 接入反馈凭证原生图片导入
反馈页上传凭证在原生壳内优先调用 HostBridge 图片导入

宿主图片结果转换为 File 后复用现有凭证预览和提交校验

补充反馈凭证原生导入测试和宿主壳文档边界
2026-06-18 06:24:44 +08:00
kdletters a7d713c806 接入创作工作台原生文档导入
创作 Agent 文档上传在原生壳内优先调用 HostBridge 文本导入

宿主返回文本继续转换为 File 并复用现有后端文档解析链路

补充工作台原生导入测试和宿主壳文档边界
2026-06-18 06:14:36 +08:00
kdletters f7126f9556 接入移动端壳相机图片导入能力
新增 HostBridge file.captureImage 契约与 H5 facade

Expo 移动壳通过系统相机拍摄图片并复用图片导入校验

通用图片输入面板按宿主能力展示拍摄入口并转换为现有 File 回调

补充移动壳、HostBridge、图片面板测试和原生壳文档
2026-06-18 06:03:45 +08:00
kdletters b3278739a5 接入原生壳音频文件导出能力
新增 file.exportAudio HostBridge 契约和 H5 facade

移动端通过 Expo 缓存文件与系统分享导出受控音频

桌面端通过 Tauri 保存对话框写入受控音频字节

通用音频输入面板仅对本地音频资产展示宿主导出入口

更新壳能力检查、测试、方案文档和共享决策记录
2026-06-18 05:42:16 +08:00
kdletters 3be997e286 接入原生壳音频文件导入能力
新增 file.importAudio HostBridge 契约和 H5 facade

移动端通过 Expo DocumentPicker 读取受控音频文件

桌面端通过 Tauri 文件选择框读取受控音频文件

通用音频输入面板在原生壳复用宿主导入和现有音频处理管线

更新壳能力检查、测试、方案文档和共享决策记录
2026-06-18 05:25:39 +08:00
kdletters 51dcff6d16 接入原生壳页面刷新能力
新增 app.reloadWebView HostBridge 契约和 H5 facade

移动端通过 react-native-webview reload 刷新当前 WebView

桌面端通过 Tauri WebviewWindow reload 刷新主窗口

更新壳能力检查、测试、方案文档和共享决策记录
2026-06-18 05:07:01 +08:00
kdletters 1c6749b53e 接入原生壳文本文件导入能力
新增 file.importText HostBridge 契约和 H5 facade

移动端通过 Expo DocumentPicker 读取受控文本文件

桌面端通过 Tauri 文件选择框读取受控文本文件

更新壳能力检查、测试、方案文档和共享决策记录
2026-06-18 04:51:56 +08:00
kdletters c7a24fba37 接入原生壳剪贴板读取能力
新增 clipboard.readText HostBridge 契约和 H5 facade

移动端通过 expo-clipboard 读取纯文本剪贴板

桌面端通过 Tauri clipboard-manager 读取纯文本剪贴板

更新壳能力检查、测试、方案文档和共享决策记录
2026-06-18 04:38:16 +08:00
kdletters bbfe4b7181 接入原生壳本地通知能力
新增 notification.showLocal HostBridge 契约和 H5 facade

移动端通过 expo-notifications 发送即时本地通知

桌面端通过 Tauri notification 插件发送系统通知

更新壳能力检查、测试、方案文档和共享决策记录
2026-06-18 04:24:55 +08:00
kdletters f34f98c1a0 接入固定玩法宿主生命周期音频暂停
新增 useHostLifecycleActive 统一归一宿主生命周期状态

拼图和抓大鹅运行态背景音乐按宿主后台与失焦状态暂停恢复

useBackgroundMusic 复用统一生命周期状态避免重复订阅逻辑

补充生命周期音频测试和宿主壳架构文档
2026-06-18 03:58:56 +08:00
kdletters 8d30cf65bb 接入宿主生命周期暂停背景音乐
useBackgroundMusic 订阅 app.lifecycle 统一事件

宿主进后台或桌面失焦时暂停音频循环并 suspend WebAudio

宿主恢复 active 后按用户原音乐状态继续播放

更新测试和原生壳架构文档
2026-06-18 03:39:00 +08:00
kdletters d261cc8d0b 接入桌面图片拖入创作槽位
CreativeImageInputPanel 订阅 file.imageDropped 桌面拖入事件

按拖入坐标命中主图卡片后转换为现有 File 回调

避免窗口级拖入被多个创作面板同时消费

更新组件测试和原生壳架构文档
2026-06-18 03:27:55 +08:00
kdletters d5cab219a1 接入创作图片上传宿主导入
CreativeImageInputPanel 在原生壳优先使用 file.importImage

宿主图片导入结果转换为现有 File 上传回调

浏览器和小程序继续保留原文件输入路径

更新测试和原生壳架构文档
2026-06-18 03:19:00 +08:00
kdletters 14f838c414 接入移动壳图片导入能力
Expo 壳通过系统相册选择器实现 file.importImage

限制导入图片 MIME 与大小并避免暴露设备本地 URI

H5 facade 将用户取消导入归为无选择回退

更新移动壳依赖、配置校验、测试和架构文档
2026-06-18 03:04:21 +08:00
kdletters 199f02cf9f 接入桌面壳图片导入能力
新增 file.importImage 与 file.imageDropped HostBridge 能力

Tauri 壳通过系统图片选择和主窗口拖拽读取真实图片文件

H5 统一使用导入图片与拖入图片事件 facade

限制图片 MIME 与大小并避免暴露本机绝对路径

更新壳能力校验、测试和架构文档
2026-06-18 02:52:37 +08:00
kdletters 586e46fa63 接入原生壳网络状态能力
新增 network.status 与 network.statusChanged HostBridge 能力

Expo 壳通过 expo-network 查询并订阅真实网络状态

Tauri 壳通过主站可达性查询和 WebView online/offline 事件同步网络状态

更新壳能力检查、测试和架构文档
2026-06-18 02:35:48 +08:00
kdletters 346368f0e7 接入原生壳生命周期事件
新增 app.lifecycle HostBridge 能力与 H5 订阅入口

Expo 壳通过 React Native AppState 注入真实前后台状态

Tauri 壳通过主窗口 focus 和 blur 注入真实激活状态

更新壳能力漂移检查、测试和架构文档
2026-06-18 02:16:47 +08:00
kdletters 45eec17007 接入原生壳外观查询能力
新增 HostBridge appearance.getColorScheme 只读契约和 H5 facade

Expo 壳通过 React Native Appearance 读取系统配色

Tauri 壳通过主窗口 theme 读取桌面配色

补齐外观查询测试、漂移检查和架构文档
2026-06-18 02:00:49 +08:00
kdletters 6b39bdbe19 接入原生壳应用角标能力
新增 HostBridge app.setBadgeCount 契约和 H5 能力门控

Expo 壳按平台声明能力并在 iOS 调用系统角标 API

Tauri 壳通过主窗口设置任务栏角标并校验 payload

补齐角标能力测试、漂移检查和架构文档
2026-06-18 01:50:15 +08:00
kdletters 910625d5e1 接入原生壳分享卡图片导出
新增 file.exportImage 宿主能力契约

分享卡下载在原生壳中优先走宿主图片导出

Expo 壳写入缓存图片并调用系统分享保存

Tauri 壳通过保存对话框写入图片字节

补齐能力漂移检查、测试和架构文档
2026-06-18 01:31:28 +08:00
kdletters 5c3b70caf1 回读宿主运行态能力
HostBridge 启动时通过真实 host.getRuntime 回读并缓存宿主能力

主 App 订阅宿主能力变化并在回读后刷新能力入口

补充宿主 runtime 回读测试和 App 能力刷新测试

更新 Expo/Tauri 壳方案、HostBridge 协议文档和共享决策记录
2026-06-18 01:02:58 +08:00
kdletters 38ed2227d3 按宿主能力声明启用原生能力
HostBridge 契约沉淀 method 与 capability 白名单

H5 解析 hostCapabilities 并按能力调用原生桥

发布分享弹窗仅在声明 share.open 时显示系统分享

补充能力声明测试和宿主壳文档
2026-06-18 00:48:13 +08:00