Merge branch 'master' into feat/agc-use-ui-design
Project CI / Repository checks (pull_request) Successful in 3m44s
Project CI / Frontend tests (pull_request) Successful in 4m15s
Project CI / Backend tests (pull_request) Successful in 7m59s
Project CI / Native shell tests (pull_request) Successful in 16m2s

This commit is contained in:
2026-09-02 15:50:18 +08:00
27 changed files with 2967 additions and 178 deletions
@@ -4969,3 +4969,10 @@
- 原因:native job 没有显式预取 `server-rs/Cargo.toml``ai-game-creator-shell:check` 的 server-rs workspace 命令没有 `--locked`
- 处理:native job 预取 server-rs、桌面壳和 AGC 壳三份 lockfile`platform-llm``shared-contracts` 与 AGC 壳测试统一使用 `--locked`,不降低原生测试门禁。
- 验证:workflow 回归测试、锁定的 Rust 测试和原生壳门禁均需运行;若本地 EAS CLI 版本漂移,应单独报告环境阻塞,不把它误判为本次 Cargo CI 修复失败。
## Tauri Windows NSIS 工具缓存不能依赖 Jenkins systemprofile AppData2026-09-02
- 现象:AGC Windows 构建已完成 Rust release binaryTauri 下载并解压 NSIS 后,在 `Running makensis``Unable to start child process, error 0x2`
- 原因:Tauri Windows bundler 执行自己的 `<tauri_tools_path>\NSIS\makensis.exe`,默认位于当前用户 `%LOCALAPPDATA%\tauri`,不使用 PATH 中预装的 `makensis.exe`Jenkins LocalSystem/systemprofile 的 AppData 可能无法启动该缓存程序。
- 处理:Windows 专用 Tauri 配置设置 `bundle.useLocalToolsDir: true`,把工具缓存到 `src-tauri/target/.tauri/NSIS`;Jenkins 预检验证实际用户、项目工具目录可写,并在构建失败时打印实际缓存路径和绝对路径执行结果。
- 验证:不要把 PATH 中 `makensis` 可发现当作 Tauri bundler 工具可执行的充分证据;需要在 Windows Agent 上检查 `target/.tauri/NSIS/makensis.exe`、ACL、EDR/Defender 和直接 `-VERSION` 结果。