Commit Graph

157 Commits

Author SHA1 Message Date
kdletters e4b9cbf09d 接入移动端原生扫码能力
新增 scanner.scanQrCode HostBridge 契约与二维码结果归一。

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

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

同步原生壳门禁、Expo 权限检查、方案文档和共享决策记录。
2026-06-19 05:13:21 +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 a54210b0d1 收口原生壳公开主站来源
新增共享 HostBridge 公开主站 origin 和默认 URL 常量

移动壳启动 URL、分享和 WebView 策略改为引用共享主站来源

桌面壳配置检查反查 Rust WEB_APP_ORIGIN 与共享契约一致

同步原生壳方案和共享决策记录
2026-06-19 01:40:22 +08:00
kdletters 759b2cb388 收紧原生壳载荷边界门禁
导出 HostBridge 文件和通知载荷边界常量
校验移动壳文件大小和 MIME 清单与共享契约一致
校验桌面壳载荷限制和 MIME 清单与共享契约一致
更新原生壳方案和共享决策记录
2026-06-19 00:26:18 +08:00
kdletters e8713a396b 收口移动壳触觉反馈强度边界
共享HostBridge契约固定触觉反馈强度白名单

移动壳拒绝未知触觉反馈强度并避免误触发设备反馈

移动壳配置检查锁定触觉反馈归一化规则

宿主壳协议和共享决策日志记录触觉反馈边界
2026-06-18 15:02:07 +08:00
kdletters 8754269705 收口H5桌面壳命令入口
共享HostBridge契约导出唯一Tauri命令名

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

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

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

共享决策日志记录H5 Tauri命令边界
2026-06-18 14:06:05 +08:00
kdletters 71b18002d4 收口HostBridge请求信封校验
共享契约新增HostBridge method白名单和request id归一规则

Expo与Tauri壳在能力分发前拒绝非法id和未知method

补充两端测试、配置门禁、原生壳方案和共享决策记录
2026-06-18 13:22:27 +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 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 38ed2227d3 按宿主能力声明启用原生能力
HostBridge 契约沉淀 method 与 capability 白名单

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

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

补充能力声明测试和宿主壳文档
2026-06-18 00:48:13 +08:00
kdletters d67f9d5725 接入桌面壳文本文件导出能力
新增 HostBridge file.exportText 契约、文件名清洗和 H5 导出入口

Tauri 桌面壳通过受控 host_bridge_request 打开保存对话框并写入文本文件

Expo 移动壳对未接入的文件导出能力明确返回 unsupported

更新宿主壳方案、统一协议和项目共享决策记录
2026-06-17 23:02:01 +08:00
kdletters 6f19e1c3ba 接入移动壳返回栈事件
移动壳声明 host.events 和 navigation.canGoBack 能力

Expo WebView 导航状态变化时向 H5 注入返回栈事件

H5 native_app transport 支持订阅 HostBridge 事件

补充事件订阅测试、移动壳能力测试和配置守卫

更新宿主壳方案和团队共享决策记录
2026-06-17 22:42:44 +08:00
kdletters a87f3dcc82 接入桌面壳窗口标题同步
HostBridge 契约新增 app.setTitle 方法和标题 payload

Tauri 桌面壳通过主窗口 API 同步非空窗口标题

桌面壳能力清单和配置守卫声明 app.setTitle

补充标题校验测试并更新宿主壳方案和团队共享决策记录
2026-06-17 22:36:52 +08:00
kdletters 61d910400e 收口宿主壳外链打开协议
共享 HostBridge 契约新增外链 URL 协议白名单校验

Expo 移动壳打开外链前拒绝危险协议

Tauri 桌面壳打开外链前拒绝危险协议

补充共享契约、移动壳和桌面壳外链校验测试

更新宿主壳方案和团队共享决策记录
2026-06-17 22:31:24 +08:00
kdletters 9b7da18879 新增 Expo 与 Tauri 原生宿主壳
新增 HostBridge 原生宿主契约和 H5 native_app transport

新增 Expo React Native 移动壳并收紧 WebView 外链边界

新增 Tauri 桌面壳并用 capability 收口受控命令

更新宿主壳方案、文档索引和共享记忆
2026-06-17 21:39:34 +08:00
kdletters 6984af782c 更新 API meta 版本号
将 shared-contracts 与前端共享 API_VERSION 更新为 2026-06-16

同步 healthz 响应头断言与 API envelope 测试夹具

补充 api-server 文档中的 API_VERSION 来源说明
2026-06-16 16:37:40 +08:00
kdletters 951caac32d 扩展外部生成Worker队列
新增外部生成队列概览和单任务状态契约

将跳一跳、拼消消、敲木鱼图片生成动作接入worker队列

前端生成等待页展示当前任务和队列数量

更新外部生成worker运维文档和团队决策记录
2026-06-12 23:15:55 +08:00
kdletters e29992cf01 点赞和改造开关加入后台配置 2026-06-10 14:37:04 +08:00
wuxiangwanzi a0473771f1 fix: 优化跳一跳运行态与地块资源 2026-06-09 01:28:30 +08:00
kdletters 5ea9f0a120 按后台配置扣除创作泥点
前端创作表单泥点预校验改为读取入口契约配置

拼图和抓大鹅初始生成后端扣费改为解析后台配置

汪汪声浪初始三图生成按入口总成本拆分扣费

创作工作台按钮和确认弹窗展示后台配置泥点成本

补充泥点扣费回归测试并同步文档与共享记忆
2026-06-08 15:47:48 +08:00
kdletters 78791af424 修正跳一跳排行榜展示名
新增排行榜 displayName 契约并在 api-server 出口补齐展示名

调整跳一跳结果页和运行态排行榜只显示 displayName

补充禁止展示 user_id 的前后端回归测试

更新跳一跳 PRD、后端契约文档和 Hermes 决策记录
2026-06-07 16:27:14 +08:00
kdletters 8131894bb5 fix: tighten public work type routing 2026-06-07 14:53:03 +08:00
kdletters 8f460feb41 fix: route recommend puzzle next through feed 2026-06-07 14:15:45 +08:00
kdletters e3ecac85f3 fix: refine mini program nickname collection flow 2026-06-07 00:42:05 +08:00
kdletters b74440373f feat(auth): 小程序登录采集微信昵称 2026-06-06 23:59:15 +08:00
kdletters b2543ba8a2 Merge branch 'master' into codex/puzzle-clear-template-runtime-fixes 2026-06-06 20:01:52 +08:00
kdletters 2db3a6e185 Merge remote-tracking branch 'origin/master' into dev-jenken
# Conflicts:
#	.hermes/shared-memory/pitfalls.md
#	server-rs/crates/api-server/src/modules/jump_hop.rs
#	src/components/rpg-entry/RpgEntryFlowShell.agent.interaction.test.tsx
#	src/services/jump-hop/jumpHopClient.test.ts
2026-06-05 23:59:40 +08:00
JenkenB 7140ac72b5 1 2026-06-05 23:41:24 +08:00
wuxiangwanzi cd8088d1fd feat: polish jump hop themed runtime assets 2026-06-05 22:55:40 +08:00
JenkenB 27b30f974b Update spacetime-client bindings and frontend
Large update across server and web clients: regenerated/added many spacetime-client module bindings and input types (including new delete/work_delete input types and numerous procedure/reducer files), updates to server-rs API modules (bark_battle, jump_hop, wooden_fish, auth, module-runtime and shared contracts), and fixes in module-runtime behavior and domain logic. Frontend changes include new/updated components and tests (creative audio helpers, bark-battle/jump-hop/wooden-fish clients and views, unified generation pages, RPG entry views, and runtime shells), plus CSS and service updates. Documentation and operational notes updated (.hermes pitfalls and multiple PRD/docs) to cover daily-task refresh, banner asset fallback, recommend-key bug, and other platform behaviors. Tests and verification steps added/updated alongside these changes.
2026-06-04 22:44:19 +08:00
wuxiangwanzi c442c3c3f0 Merge remote-tracking branch 'origin/codex/tiaoyitiao' into codex/tiaoyitiao
# Conflicts:
#	docs/prd/【玩法创作】跳一跳俯视角玩法模板PRD-2026-05-19.md
#	server-rs/crates/spacetime-client/src/jump_hop.rs
#	server-rs/crates/spacetime-client/src/mapper/runtime.rs
#	server-rs/crates/spacetime-client/src/wooden_fish.rs
#	src/components/jump-hop-result/JumpHopResultView.test.tsx
#	src/components/jump-hop-runtime/JumpHopRuntimeShell.test.tsx
#	src/components/platform-entry/PlatformEntryFlowShellImpl.tsx
#	src/components/rpg-entry/RpgEntryFlowShell.agent.interaction.test.tsx
#	src/components/unified-creation/workspaces/JumpHopCreationWorkspace.tsx
#	src/components/unified-creation/workspaces/JumpHopWorkspace.test.tsx
2026-06-04 11:34:31 +08:00
wuxiangwanzi b9de2f2a43 Merge branch 'master' into codex/puzzle-clear-template-runtime-fixes
# Conflicts:
#	.hermes/shared-memory/decision-log.md
#	.hermes/shared-memory/project-overview.md
#	docs/【开发运维】本地开发验证与生产运维-2026-05-15.md
#	scripts/dev.test.ts
#	server-rs/crates/api-server/src/creation_entry_config.rs
#	server-rs/crates/api-server/src/wooden_fish.rs
#	server-rs/crates/module-auth/src/lib.rs
#	server-rs/crates/spacetime-client/src/wooden_fish.rs
#	server-rs/crates/spacetime-module/src/auth/procedures.rs
#	src/components/custom-world-home/creationWorkShelf.ts
#	src/components/platform-entry/PlatformEntryFlowShellImpl.tsx
#	src/components/rpg-entry/rpgEntryWorldPresentation.ts
#	src/services/miniGameDraftGenerationProgress.test.ts
#	src/services/miniGameDraftGenerationProgress.ts
2026-06-04 11:24:14 +08:00
wuxiangwanzi 7d2d67a3f5 feat(jump-hop): redesign sling platform gameplay 2026-06-03 22:21:00 +08:00
wuxiangwanzi 1b5e098225 feat: add puzzle clear template runtime 2026-06-03 22:11:46 +08:00
kdletters 67ba40c678 Refine play type integration flow and docs 2026-06-03 01:25:53 +08:00
kdletters 2fdeb34567 fix: lock recharge flow until virtual payment settles 2026-06-02 01:47:54 +08:00
kdletters 78448d2a7b merge master into codex/wechat-mini-program-virtual-payment 2026-05-30 16:46:11 +08:00
kdletters 1a56bb1e8a refactor auth payloads to slim snapshots 2026-05-28 20:46:21 +08:00