Commit Graph

1096 Commits

Author SHA1 Message Date
JenkenB 8956ed6fe6 Unify canvas generation placement and UI changes
Add unified placement and UI updates for canvas generation: docs require ImageCanvasGenerationPlacementModel to compute placeholder positions (avoid overlaps, center viewport on placement) and limit frontend video model entries. Refactor UI components and tests: expose div props on PlatformFloatingMenu, make PlatformInlineOptionButton forwardRef, replace inline placeholder actions with ImageCanvasGenerationImageOptionsView in basic generation composer, enhance character animation panel with parameter menu portal and option choices, add reference chip UI, and update many tests to match new interactions and labels. These changes align generation workflows, accessibility labels, and positioning behavior across editor panels.
2026-06-18 11:40:19 +08:00
kdletters 25b140d63e 收紧移动壳观测渠道初始化边界
移动壳配置检查拒绝观测、渠道、更新 SDK 相关依赖。

移动壳配置检查拒绝生产入口和 HostBridge 提前初始化观测、渠道、更新 SDK。

更新 Expo React Native 与 Tauri 宿主壳方案中的 Phase 4 能力边界。

更新共享决策日志记录移动壳观测与渠道 SDK 初始化前置条件。
2026-06-18 11:39:05 +08:00
kdletters 242f872ac0 收紧桌面壳观测渠道边界
桌面壳配置检查拒绝崩溃上报、analytics、遥测日志、自动更新和渠道分发 SDK 依赖。

桌面壳配置检查拒绝相关 Rust 初始化片段提前进入 Tauri 壳。

更新 Expo React Native 与 Tauri 宿主壳方案中的桌面观测渠道边界。

更新共享决策日志记录桌面壳观测与渠道 SDK 接入前置条件。
2026-06-18 11:33:25 +08:00
kdletters 5a03592f61 关闭移动壳更新通道
移动壳 Expo 配置显式关闭 OTA 更新

移动壳配置检查拒绝更新通道和移动端观测依赖提前接入

宿主壳方案和共享决策记录发布通道边界
2026-06-18 11:23:22 +08:00
kdletters 4e11ffb644 收紧桌面壳宿主版本边界
桌面壳配置检查校验 release 和 dev 入口 hostVersion

桌面壳配置检查要求 runtime 回包使用 Cargo 版本

宿主壳方案和共享决策记录桌面版本边界
2026-06-18 11:17:22 +08:00
kdletters bc6d237a03 统一移动壳宿主版本来源
移动壳入口 query 和 runtime 回包共用宿主版本常量

移动壳配置检查拒绝 HostBridge 版本散落硬编码

宿主壳方案和共享决策记录版本单一来源约束
2026-06-18 11:12:27 +08:00
kdletters 44d0507d98 收紧移动壳通知权限边界
移动壳 Android 包配置阻断重启和精确定时通知权限

移动壳配置检查拒绝远程推送 token 和通知响应监听流程

宿主壳方案和共享决策记录即时本地通知边界
2026-06-18 11:06:28 +08:00
kdletters bbac06c4d8 关闭桌面壳主窗口调试器
桌面壳主 WebView 显式关闭 DevTools

桌面壳配置检查拒绝 DevTools 配置和 feature 漂移

宿主壳方案和共享决策记录桌面调试边界
2026-06-18 10:56:26 +08:00
kdletters 16196464b9 拒绝桌面壳默认下载落盘
桌面壳 WebView 下载事件默认拒绝网页触发的落盘动作

桌面壳配置检查守卫下载拒绝策略

宿主壳方案和共享决策记录桌面保存边界
2026-06-18 10:49:40 +08:00
kdletters db4df0ab9a 收紧桌面壳顶层导航边界
桌面主窗口只允许打包资产和同源 H5 留壳

桌面外链与新窗口请求交给系统 opener 后拒绝留壳

同步宿主壳方案和共享决策记录
2026-06-18 10:39:35 +08:00
kdletters 6b700a0ea0 固定桌面壳运行平台标记
桌面壳创建主窗口前将 hostPlatform 归一为真实系统平台

桌面壳配置检查新增运行平台归一守卫

同步宿主壳方案与共享决策记录
2026-06-18 10:31:59 +08:00
kdletters 0c143afb44 固定移动壳媒体播放策略
设置 Expo WebView 支持内联媒体和用户触发全屏视频

补充移动壳媒体策略门禁和共享决策文档
2026-06-18 10:18:55 +08:00
kdletters 9b1a477cb0 固定移动壳软键盘布局
设置 Expo Android 软键盘布局为 resize

补充移动壳键盘布局门禁和共享决策文档
2026-06-18 10:14:45 +08:00
kdletters 3c64b37fb9 放开移动壳横竖屏方向
将 Expo 移动壳方向配置改为随设备方向

补充移动壳方向策略门禁和共享决策文档
2026-06-18 10:09:37 +08:00
kdletters 580b3a2875 禁止壳层伪声明登录支付能力
补充 Expo 与 Tauri 壳层登录支付能力禁伪声明检查

同步宿主壳方案和共享决策中的登录支付能力边界
2026-06-18 10:01:14 +08:00
kdletters 84156e7d86 补齐移动壳Metro导出烟测
新增 Expo iOS 和 Android production bundle 导出检查

将 mobile-shell:export 纳入原生壳统一验收

同步宿主壳方案、能力协议和共享记忆验收口径
2026-06-18 09:55:49 +08:00
kdletters 21165481b8 补齐移动壳Expo配置烟测
新增移动壳 Expo managed config 解析检查

将 mobile-shell:config 纳入原生壳统一验收

同步宿主壳方案、能力协议和共享记忆验收口径
2026-06-18 09:48:09 +08:00
kdletters 9f1a3fac7d 补齐桌面壳构建烟测
将桌面 release --no-bundle 构建烟测纳入原生壳统一验收

同步宿主壳方案、能力协议和文档入口的验收口径

更新项目共享记忆中的原生壳门禁决策
2026-06-18 09:40:02 +08:00
kdletters a9b297a728 拆分桌面壳CSP配置
桌面壳 release CSP 移除本机调试源

桌面壳 devCsp 单独保留 Vite 和 HMR 本机来源

桌面壳检查脚本校验 release 和 dev CSP 边界

宿主壳方案和共享决策记录桌面 CSP 分层
2026-06-18 09:30:34 +08:00
kdletters a1afd33004 校验移动壳HostBridge消息来源
移动壳 onMessage 按页面 URL 拦截非同源 HostBridge 消息

移动壳导航测试覆盖同源消息入口和异常来源丢弃

移动壳检查脚本要求保留消息来源校验

宿主壳方案和共享决策记录移动消息入口边界
2026-06-18 09:23:53 +08:00
kdletters 7fabb5ed4c 收紧移动壳WebView安全开关
移动壳 WebView 显式禁用多窗口、文件访问、混合内容、第三方 Cookie 和远程调试

移动壳检查脚本拒绝 WebView 安全开关被放宽

移动壳导航测试补充协议降级、协议相对外域和危险协议拦截

宿主壳方案和共享决策记录移动 WebView 安全边界
2026-06-18 09:19:05 +08:00
kdletters 28e5295911 关闭移动壳安卓自动备份
移动壳 Android 包配置显式设置 allowBackup=false

移动壳检查脚本拒绝恢复 Android 自动备份

宿主壳方案和共享决策记录移动端备份边界
2026-06-18 09:14:30 +08:00
kdletters f38fb363ff 禁用移动壳麦克风权限
移动壳 Android 包配置通过 blockedPermissions 移除 RECORD_AUDIO

移动壳检查脚本拒绝麦克风权限缺失拦截或被重新声明

宿主壳方案和共享决策记录移动端权限边界
2026-06-18 09:10:21 +08:00
kdletters d33be9f869 收紧桌面壳命令白名单
桌面壳检查脚本校验 Tauri build manifest、invoke handler 与 capability 只暴露 host_bridge_request

桌面壳检查脚本拒绝残留的非白名单自动生成权限文件

宿主壳方案和共享决策记录桌面壳命令暴露边界
2026-06-18 09:04:25 +08:00
kdletters 3dbc3f0319 收紧移动壳网络安全元数据
禁用 Android 默认明文流量

禁用 iOS ATS 任意网络加载

声明当前未使用非豁免自定义加密

更新原生壳方案和团队决策记录
2026-06-18 08:57:49 +08:00
kdletters 78c317fc32 补齐桌面壳平台图标集
从真实品牌 PNG 派生 Tauri 多尺寸图标

配置 Windows ICO 与 macOS ICNS 图标

校验桌面壳图标尺寸、容器和 bundle 列表

更新原生壳方案和团队决策记录
2026-06-18 08:54:02 +08:00
kdletters 1ced5f2a0e 补齐移动壳启动视觉配置
复用真实品牌图标配置 Expo 启动页

复用透明品牌图标配置 Android adaptive icon

校验启动页、adaptive icon 与品牌底色不漂移

更新原生壳方案和团队决策记录
2026-06-18 08:46:35 +08:00
kdletters 01a346a9b0 禁止壳生产代码保留临时替身
移动壳配置检查扫描生产源码脚手架词

桌面壳配置检查扫描生产源码脚手架词

保留测试文件使用 mock 的边界

更新原生壳方案和团队决策记录
2026-06-18 08:42:18 +08:00
kdletters 64c5c65b20 固定桌面壳安装包身份
校验 Tauri 桌面壳产品名和应用标识

校验桌面壳 Tauri、Node 与 Cargo 版本一致

收紧桌面壳 release/dev 入口、CSP 与 updater 禁用门禁

更新原生壳方案和团队决策记录
2026-06-18 08:36:24 +08:00
kdletters 67a52e444f 固定移动壳安装包身份
补齐 Expo 移动壳 iOS bundleIdentifier 与 buildNumber

补齐 Expo 移动壳 Android versionCode

校验移动壳版本、包标识和构建号不漂移

更新原生壳方案和团队决策记录
2026-06-18 08:29:47 +08:00
kdletters 5bd1fb1a8f 切换移动壳默认主站入口
Expo 移动壳默认 H5 地址改为线上主站

本机 Vite 地址仅通过环境变量显式启用

补充默认入口检查测试和架构文档
2026-06-18 08:23:48 +08:00
kdletters 3b3e83aa7a 收紧移动壳启动地址归一
Expo 移动壳只接受 http 和 https 基准 H5 地址

非法启动地址回退默认 H5 并继续附加宿主上下文

Deep link 继续限制为同源 H5 路径

补充启动地址检查测试和架构文档
2026-06-18 08:19:25 +08:00
kdletters 94a866b48b 接入移动壳安全区布局
Expo 移动壳使用 SafeAreaProvider 和 SafeAreaView 包裹 WebView

新增安全区边界配置和测试

补充移动壳安全区依赖检查和架构文档
2026-06-18 08:14:27 +08:00
kdletters 94046153c6 接入桌面壳单实例唤醒
Tauri 桌面壳启用 single-instance 插件

重复启动只唤醒并聚焦已有主窗口

禁止把第二实例参数透传给 H5

补充单实例检查测试和架构文档
2026-06-18 08:07:50 +08:00
kdletters 88e363586e 完善桌面壳托盘关闭行为
主窗口关闭在托盘可用时隐藏到托盘

托盘不可用时保持默认关闭避免窗口无法恢复

补充关闭策略检查测试和架构文档
2026-06-18 08:01:21 +08:00
kdletters 45a9f9b0cd 接入桌面壳系统托盘
Tauri 桌面壳启用真实系统托盘

托盘菜单提供显示主窗口刷新和退出动作

托盘注册失败不阻断主窗口启动

补充桌面壳托盘检查测试和架构文档
2026-06-18 07:56:47 +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