kdletters
|
b489244e03
|
修复原生壳 CI 格式化兼容
Project CI / Frontend tests (push) Successful in 3m44s
Project CI / Repository checks (push) Successful in 3m1s
Project CI / Backend tests (push) Successful in 7m54s
Project CI / Native shell tests (push) Failing after 17m32s
放宽移动壳能力数组导出解析的空白匹配
兼容格式化后的移动壳源码断言换行
放宽桌面壳能力数组导出解析的空白匹配
|
2026-09-01 17:00:44 +08:00 |
|
kdletters
|
071faa482c
|
统一 Rust 与 TypeScript 格式化门禁
纳入 AGC Cargo workspace 的统一 rustfmt 检查与格式化入口
完成项目 TypeScript/Prettier 与 Rust 全量格式化
修复 Pingora expected executable 门禁的空白敏感误报
同步开发运维文档与 AGC skill pack 格式化忽略规则
|
2026-09-01 16:28:34 +08:00 |
|
suzmii
|
15a524e6e0
|
Feat: 完善 Game Agent 资源画板与图片精修链路 (#176)
Project CI / Native shell tests (push) Successful in 13m19s
Project CI / Repository checks (push) Successful in 3m31s
Project CI / Frontend tests (push) Successful in 4m16s
Project CI / Backend tests (push) Successful in 5m7s
## 摘要
本 PR 将 Game Agent 资源管理页升级为真实自由画板,并打通图片资源的快速编辑、候选生成、导入、失败归档与正式图提交流程。
同时补齐图片精修的事务恢复、候选身份校验、生成中任务恢复、鉴权重试,以及“设为最终图”后游戏运行资源的稳定刷新链路。
## 主要变更
### 1. 资源管理页自由画板
- “按依赖”视图改为统一自由画板:
- 支持指针拖拽平移
- 滚轮平移
- `Ctrl / Meta + wheel` 以指针为锚点缩放
- 支持复位和全量资源适配
- 增加隐藏导航边界:
- 边界由全量资源世界范围加安全留白决定
- 搜索过滤不会缩小边界
- 用户不能把全部资源拖出可视区域
- 图片资源卡按真实宽高比展示:
- 预览读取真实 `pixelWidth / pixelHeight`
- 布局碰撞、世界范围、依赖连线共同消费同一资源矩形
- 非图片资源保持固定卡片尺寸
- 点击资源改为非模态详情卡:
- 背景画板不卸载
- 顶部工具栏、搜索、排序、缩放状态不重置
- 图片详情不再进入全屏页
### 2. 图片资源快速编辑与精修画布
- 点击图片资源后直接显示快速编辑卡。
- 图片精修顶栏收敛为紧凑操作:
- 返回
- 导入
- 定位当前最终图
- 撤销 / 重做
- 删除、修改、设为最终图进入选中图片的上下文卡片。
- 快速编辑生成不再阻塞整张画布:
- 立即创建生成占位卡
- 占位卡可拖动并持久化位置
- 右上任务列表显示排队 / 生成中 / 完成 / 失败状态
- 任务列表可折叠
- 生成失败只影响当前任务:
- 保留失败占位
- 可显式归档失败任务
- `reconciliation-required` 任务不允许删除
- 原生多选图片导入:
- 使用 Tauri 原生文件选择
- 后端批量安全读取
- 一次推进草稿 revision
- 失败不留下半导入状态
### 3. 候选图与正式图事务
- 生成成功只加入草稿私有候选层,不直接修改 manifest。
- “设为最终图”是唯一正式资源切换入口。
- refine 保持原 asset ID 和来源身份,不追加新的业务资产身份。
- 正式文件使用不可变路径:
```text
assets/canvas/<name>--<commitId>.png
---------
Co-authored-by: kdletters <kdletters@qq.com>
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/176
Co-authored-by: suzmii <suzmii@qq.com>
Co-committed-by: suzmii <suzmii@qq.com>
|
2026-08-24 16:27:33 +08:00 |
|
kdletters
|
27de28a487
|
迁移 npm workspaces 统一依赖边界
根目录统一管理九个 workspace 与唯一 lockfile
迁移 CI、Jenkins 和容器的根目录单次 npm ci
补齐 hoist 兼容、版本校验与 workspace 门禁
同步依赖边界方案、运维文档和长期记忆
|
2026-08-22 13:17:26 +08:00 |
|
kdletters
|
387a1c26e3
|
完成全量检查整改
清理已跟踪原始日志与个人本地配置
修复前后端有效门禁、测试和构建问题
补齐生产 Jenkins、SpacetimeDB 本地命令与文档约束
收紧图片编辑器状态、附件与媒体引用测试
排除已下线旧创作入口测试并清理 warning
|
2026-07-17 16:56:46 +08:00 |
|
kdletters
|
8bd8363ffa
|
修正原生壳公开主站配置
将原生壳公开主站统一为 www.genarrative.world
调整 Tauri release 直接加载线上主站并移除 frontendDist 打包
补齐创作入口配置开发代理与回归测试
同步原生壳方案文档和共享记忆
|
2026-06-22 15:07:02 +08:00 |
|
kdletters
|
768546fdc7
|
补齐移动原生包产物验收
新增移动壳 APK 与 iOS simulator 包产物检查脚本
新增根级 mobile-shell:build-artifacts 验收入口
移动壳配置门禁反查产物验收脚本与真实包内容检查
同步宿主壳方案文档和项目决策记录
|
2026-06-21 21:13:33 +08:00 |
|
kdletters
|
4749a65acb
|
锁定移动壳能力清单共享来源
读取移动壳 capabilities 源码进入单端检查
要求移动基础能力直接引用共享 Expo profile
要求 iOS 移动能力直接引用共享 Expo profile
|
2026-06-21 20:28:42 +08:00 |
|
kdletters
|
e61da67eae
|
收紧移动壳生产源码扫描边界
排除移动壳本地依赖目录进入生产源码扫描
排除移动壳测试工具目录进入生产源码扫描
反查根级 native shells 门禁保持同一排除口径
|
2026-06-21 20:23:13 +08:00 |
|
kdletters
|
c8fed134a0
|
补齐移动壳生成目录追踪门禁
检查 Expo 本机生成目录未被 Git 追踪
检查 Expo export smoke 临时目录未被 Git 追踪
对齐移动壳与桌面壳生成物边界
|
2026-06-21 20:12:32 +08:00 |
|
kdletters
|
e45c0605bb
|
收紧移动壳构建配置边界
禁止 EAS 构建 profile 写入 runtimeVersion
保持移动壳可分发构建不提前接入 OTA 语义
|
2026-06-21 19:44:35 +08:00 |
|
kdletters
|
81c353e586
|
收紧移动壳本机入口传递边界
移动壳 URL 构建默认拒绝本机 H5 入口
Deep Link 与原生页导航显式传递开发态入口选项
补充移动壳 URL 与 Deep Link 边界测试
同步原生壳门禁和项目决策日志
|
2026-06-21 19:19:27 +08:00 |
|
kdletters
|
0393e3fef3
|
限制移动壳生产本机H5入口
生产移动壳只允许公共 H5 主站入口
开发模式继续允许显式本机 H5 联调地址
补充移动壳 URL 与 ShellApp 测试和门禁
同步项目决策日志
|
2026-06-21 19:09:11 +08:00 |
|
kdletters
|
c0624e1576
|
收口宿主导航诊断日志
微信小程序导航失败日志改为固定标签
移动 WebView 进程失败日志不再输出 detail 对象
补充门禁和共享决策记录
|
2026-06-21 16:51:40 +08:00 |
|
kdletters
|
fcd1d30869
|
同步原生壳替身词门禁
移动端和桌面端单端门禁拒绝后续式占位词
共享记忆记录生产壳替身词统一口径
|
2026-06-21 16:41:38 +08:00 |
|
kdletters
|
6ba22b214c
|
收口移动壳加载失败兜底信息
移动壳加载失败兜底层只保留脱敏页面路径
移动壳加载失败详情改为稳定文案不直出系统描述
扩展移动壳配置门禁锁定加载失败脱敏边界
补充宿主壳方案和共享决策中的加载失败边界
|
2026-06-21 00:26:31 +08:00 |
|
kdletters
|
636880d4df
|
收口移动壳外层诊断日志
移动壳 shell 层注入 外链 深链 下载和扫码失败日志只记录稳定标签
移除 WebView 进程失败日志中的 H5 URL 输出
更新移动壳 shell 测试断言和配置门禁防止原生对象回流
补充宿主壳方案中的移动 shell 诊断边界
|
2026-06-20 23:19:07 +08:00 |
|
kdletters
|
05d278f8f7
|
收口移动壳能力诊断日志
移动壳 HostBridge 能力失败日志只记录稳定阶段标签
更新 badge notification haptics network share navigation 失败测试断言
扩展移动壳配置门禁禁止能力日志打印原生 error 对象
补充 Expo 与 Tauri 宿主壳方案中的移动诊断日志边界
|
2026-06-20 23:09:49 +08:00 |
|
kdletters
|
568010b31b
|
收口移动壳剪贴板诊断日志
移动壳剪贴板 HostBridge 失败日志只记录稳定标签
更新剪贴板失败测试避免断言原生错误对象外泄
扩展移动壳配置门禁禁止剪贴板日志打印原生 error 对象
|
2026-06-20 22:51:10 +08:00 |
|
kdletters
|
1a16e8babc
|
收口移动壳文件诊断日志
移动壳文件 HostBridge 失败日志只记录稳定标签
更新文件失败测试避免断言原生错误对象外泄
扩展移动壳配置门禁禁止文件日志打印原生 error 对象
|
2026-06-20 22:44:22 +08:00 |
|
kdletters
|
beb2575dd2
|
锁定移动壳WebView来源白名单
补充移动壳 WebView originWhitelist 仅允许当前 H5 origin 的测试
扩展移动壳配置门禁防止来源白名单被放宽
|
2026-06-20 22:32:43 +08:00 |
|
kdletters
|
69ff4af4e6
|
记录移动壳下载阻断事件
移动壳阻断 WebView 文件下载时记录宿主诊断日志
补充移动壳下载阻断日志测试
扩展移动壳配置门禁防止下载阻断静默回退
|
2026-06-20 22:29:21 +08:00 |
|
kdletters
|
927c4d5f4e
|
锁定移动壳注入消息来源字段
补充移动壳 HostBridge 注入 source 与 origin 断言
更新移动壳配置门禁反查注入来源测试
|
2026-06-20 22:10:19 +08:00 |
|
kdletters
|
9e9f8c8fcb
|
补齐移动外链打开失败日志
移动 HostBridge 外链打开原生异常记录稳定日志
配置门禁反查外链异常不可静默
同步原生壳方案文档和共享决策记录
|
2026-06-20 21:50:11 +08:00 |
|
kdletters
|
c578f6cf29
|
固定移动壳本地构建产物路径
移动壳 EAS 本地构建脚本输出到根 build/native/mobile
移动壳配置检查校验 APK 与 iOS simulator 压缩包路径
同步原生壳方案文档和共享决策记录
|
2026-06-20 21:16:27 +08:00 |
|
kdletters
|
b9abc747da
|
锁定移动壳分发烟测门禁
移动壳配置检查反查根级 EAS 与 Expo 分发烟测
同步原生壳方案文档和共享决策记录
|
2026-06-20 21:09:53 +08:00 |
|
kdletters
|
63f280fb42
|
收紧移动壳导出产物门禁
移动壳 Expo export smoke 校验 Metro metadata 与 Hermes AppEntry bundle 形态
配置检查反查移动导出产物结构门禁
同步原生壳方案文档和共享决策记录
|
2026-06-20 20:58:30 +08:00 |
|
kdletters
|
3be3cc36fc
|
锁定移动壳EAS本地版本
移动壳构建配置检查执行本地 EAS CLI 版本校验
同步原生壳方案文档和共享决策记录
|
2026-06-20 20:52:34 +08:00 |
|
kdletters
|
8a2d756040
|
补齐移动壳本地构建依赖
在移动壳 package 中显式声明 eas-cli 构建依赖
调整移动壳配置检查锁定单端 EAS CLI 依赖来源
|
2026-06-20 20:47:07 +08:00 |
|
kdletters
|
f7122282a3
|
锁定移动壳产物宿主上下文
移动 Expo export smoke 校验生产 bundle 宿主上下文 token
移动壳配置门禁反查 export smoke 宿主上下文验收
补充原生壳方案文档和共享决策记录
|
2026-06-20 20:35:28 +08:00 |
|
kdletters
|
4623709a39
|
锁定移动壳运行时能力回包
移动 HostBridge runtime 单测精确断言共享能力 profile
移动壳配置门禁反查 runtime 能力 profile 断言
补充原生壳方案文档和共享决策记录
|
2026-06-20 20:28:59 +08:00 |
|
kdletters
|
2742daa832
|
补齐移动壳分享失败观测
移动系统分享失败记录原生异常日志
移动分享单测覆盖稳定错误和日志边界
配置门禁和文档同步分享观测约束
|
2026-06-20 20:08:11 +08:00 |
|
kdletters
|
48bad28a96
|
补齐移动壳基础能力失败观测
移动剪贴板触觉网络记录原生异常日志
相关测试覆盖稳定错误和日志边界
配置门禁和文档同步基础能力观测约束
|
2026-06-20 19:34:26 +08:00 |
|
kdletters
|
75bf78f0a5
|
补齐移动壳通知角标失败观测
移动壳通知和角标记录原生异常日志
通知角标测试覆盖稳定错误和日志边界
配置门禁和文档同步通知角标观测约束
|
2026-06-20 19:26:27 +08:00 |
|
kdletters
|
5389a43bfe
|
补齐移动壳文件能力失败观测
移动壳文件系统能力记录原生异常日志
文件能力测试覆盖稳定错误和日志边界
配置门禁和文档同步文件失败观测约束
|
2026-06-20 19:15:15 +08:00 |
|
kdletters
|
c5d899480f
|
补齐移动壳进程崩溃恢复边界
移动壳 WebView 进程失败增加防循环恢复
加载失败面板承接连续进程恢复失败
配置检查和文档同步崩溃恢复约束
|
2026-06-20 19:07:12 +08:00 |
|
kdletters
|
fc9a557978
|
补齐移动壳深链失败观测
移动壳 Deep Link 解析返回状态并记录拒绝路径
ShellApp 记录初始链接读取失败且保留安全入口
移动壳配置检查和文档同步深链失败边界
|
2026-06-20 18:57:13 +08:00 |
|
kdletters
|
52ceb32770
|
收紧原生壳调试与通知权限
桌面壳调试脚本固定 WEB_PORT 以匹配 Tauri devUrl
移动壳 Android 显式声明本地通知权限并纳入门禁
同步原生壳方案与共享决策记忆
|
2026-06-20 18:33:14 +08:00 |
|
kdletters
|
ae3cdf4e69
|
收紧移动壳角标真实结果
移动 iOS 角标改为请求 badge 权限后调用 Expo Notifications
角标设置以 setBadgeCountAsync 返回值作为成功依据
测试和门禁覆盖权限拒绝与系统拒绝设置失败
文档和项目记忆同步角标能力边界
|
2026-06-20 18:00:51 +08:00 |
|
kdletters
|
a2f49bf243
|
收紧移动壳门禁自扫描
移动壳配置脚本纳入受控脚本清单
移动壳配置脚本纳入生产替身词自扫描
项目记忆同步移动壳门禁脚本验收边界
|
2026-06-20 16:59:59 +08:00 |
|
kdletters
|
2f16a43000
|
收紧移动壳外链与扫码边界
移动壳外链原生异常改由壳层记录日志
移动扫码请求使用共享超时自动清理 pending 状态
原生壳结构门禁补充期望清单唯一性自检
项目记忆同步移动壳边界验收约定
|
2026-06-20 16:37:06 +08:00 |
|
kdletters
|
e892113060
|
收紧移动壳能力声明与迟到响应边界
移动壳卸载后丢弃迟到 HostBridge 响应
移动壳 ShellApp 测试覆盖卸载后异步响应不注入
移动壳配置检查拒绝只返回 unsupported 的声明能力
共享决策记录补充移动壳消息注入和能力声明约定
|
2026-06-20 16:02:47 +08:00 |
|
kdletters
|
4f95e29895
|
收紧移动壳消息注入失败边界
移动壳 HostBridge 响应和事件注入统一捕获 WebView 同步异常
移动壳 ShellApp 测试覆盖响应注入失败不崩溃
移动壳配置检查反查统一消息注入边界
共享决策记录补充移动消息注入失败约定
|
2026-06-20 15:54:14 +08:00 |
|
kdletters
|
67954c54de
|
收紧移动壳事件注入失败边界
移动壳 HostBridge 事件注入捕获 WebView 同步异常并记录稳定日志
移动壳 ShellApp 测试覆盖事件注入失败不崩溃
移动壳配置检查反查事件注入失败边界
共享决策记录补充移动事件注入失败约定
|
2026-06-20 15:46:54 +08:00 |
|
kdletters
|
e2433ec02f
|
锁定移动扫码取消边界
移动扫码覆盖权限请求迟到时不重新激活相机视图
移动壳配置检查反查扫码取消异步边界测试
共享决策记录补充扫码权限异步取消约定
|
2026-06-20 15:35:07 +08:00 |
|
kdletters
|
8a0285382c
|
锁定移动壳二进制导出校验顺序
移动壳配置检查覆盖图片导出 MIME 校验早于原生分享探测
移动壳配置检查覆盖音频导出 MIME 校验早于原生分享探测
移动壳文件导出顺序反查复用统一校验逻辑
|
2026-06-20 15:10:24 +08:00 |
|
kdletters
|
cbad531182
|
收紧移动壳文本导出校验顺序
移动壳文本导出先校验 MIME 再探测原生分享能力
移动壳文件测试覆盖非法文本 MIME 不触碰原生分享
移动壳配置检查锁定文本导出本地校验顺序
|
2026-06-20 15:05:23 +08:00 |
|
kdletters
|
3788d0e02c
|
收紧移动壳分享目标缓存
移动壳分享目标缓存改为保存规范化后的分享 payload
移动壳分享测试覆盖缓存裁剪外层目标和私有字段
移动壳配置检查锁定分享目标缓存结构
|
2026-06-20 15:00:03 +08:00 |
|
kdletters
|
6b2a18416a
|
锁定移动壳外链导航失败响应
移动壳外链原生探测失败返回稳定不可打开结果
移动壳外链原生打开失败返回稳定不可打开结果
移动壳 HostBridge 外链异常返回稳定错误
移动壳配置检查补充外链原生失败边界反查
|
2026-06-20 14:47:22 +08:00 |
|
kdletters
|
bdee19b510
|
锁定移动壳剪贴板失败响应
移动壳剪贴板写入失败返回稳定错误
移动壳剪贴板读取失败返回稳定错误
移动壳协议兜底测试改用外链原生异常触发
移动壳配置检查补充剪贴板失败边界反查
|
2026-06-20 14:29:35 +08:00 |
|