e8d9367df7
## 问题 合并后的 `master` 连续暴露了三个既有的 AGC 原生构建 blocker: 1. `npm ci --prefix apps/ai-game-creator-shell` 因 lockfile 缺少 `@emnapi/core` / `@emnapi/runtime` 嵌套节点而失败。 2. 修复安装后,Linux Tauri build 又因通用配置无条件引用未生成的 Windows Codex 侧车而失败。 3. Native shell 全量测试继续暴露三项内置 Skill 指纹从初次提交起即与最终文件字节不一致,以及 Linux 会把 Windows 路径语法误判为普通相对路径。 这些问题都在画布优化合并前的 AGC 集成提交中已经存在;画布优化未修改 AGC manifest、lockfile、Tauri 配置或 Skill Pack。 ## 修复 - 使用子包 manifest 重新生成独立 package-lock 元数据 - 恢复 Tailwind oxide WASM bundled `@emnapi` 节点并保留 npm 元数据规范化 - 把 Codex Windows x64 侧车映射从通用配置迁到 `tauri.windows.conf.json` - 配置门禁同时约束通用配置无 Windows resource、Windows 配置保留完整白名单 - 重算三项内置 Skill 内容指纹并提升审核包版本 - Skill 引用路径按平台无关规则拒绝反斜杠、盘符、UNC、绝对路径和父目录段 - 补充 MCP 回归,并同步技术方案、迁移计划和长期排障记录 ## 验证 - npm 10.9.7 / npm 9.2.0:`npm ci --prefix apps/ai-game-creator-shell` 通过 - Linux:`npm run ai-game-creator-shell:build -- --no-bundle` 通过 - Skill 指纹 5/5 复算匹配;Skill / MCP 定向测试通过 - `npm run check:native-shells` 完整通过:AGC Rust `2159 passed / 0 failed / 15 ignored`,最终输出 `[check:native-shells] OK` - `npm run check:encoding`、`npm run check:rustfmt`、本次目标文件 Prettier、`git diff --check` 通过 - AGC、desktop、server-rs Cargo.lock 与两份 package-lock 均无漂移 Reviewed-on: #174 Co-authored-by: kdletters <kdletters@qq.com> Co-committed-by: kdletters <kdletters@qq.com>
51 lines
1.9 KiB
JSON
51 lines
1.9 KiB
JSON
{
|
|
"$schema": "https://schema.tauri.app/config/2",
|
|
"productName": "Genarrative AI Game Creator",
|
|
"version": "0.1.0",
|
|
"identifier": "world.genarrative.ai-game-creator",
|
|
"build": {
|
|
"beforeDevCommand": "npm --prefix ../.. run agc:serve",
|
|
"beforeBuildCommand": "npm --prefix ../.. run ai-game-creator-shell:typecheck && npm --prefix ../.. exec vite -- build --config vite.config.ts",
|
|
"devUrl": "http://127.0.0.1:3080/",
|
|
"frontendDist": "../dist"
|
|
},
|
|
"app": {
|
|
"withGlobalTauri": true,
|
|
"windows": [
|
|
{
|
|
"label": "client",
|
|
"title": "陶泥儿",
|
|
"url": "index.html",
|
|
"width": 1280,
|
|
"height": 800,
|
|
"minWidth": 1280,
|
|
"minHeight": 720
|
|
}
|
|
],
|
|
"security": {
|
|
"csp": "default-src 'self' customprotocol: asset:; img-src 'self' asset: data: blob:; media-src 'self' asset: data: blob:; connect-src 'self' http://127.0.0.1:* ws://127.0.0.1:*; script-src 'self'; style-src 'self' 'unsafe-inline'; frame-src 'self' http://127.0.0.1:*",
|
|
"devCsp": "default-src 'self' customprotocol: asset: http://127.0.0.1:*; img-src 'self' asset: http://127.0.0.1:* data: blob:; media-src 'self' asset: http://127.0.0.1:* data: blob:; connect-src 'self' http://127.0.0.1:* ws://127.0.0.1:*; script-src 'self'; style-src 'self' 'unsafe-inline'; frame-src 'self' http://127.0.0.1:*"
|
|
}
|
|
},
|
|
"bundle": {
|
|
"active": true,
|
|
"targets": "all",
|
|
"linux": {
|
|
"deb": {
|
|
"depends": ["bubblewrap"]
|
|
},
|
|
"rpm": {
|
|
"depends": ["bubblewrap"]
|
|
}
|
|
},
|
|
"icon": [
|
|
"../../desktop-shell/src-tauri/icons/32x32.png",
|
|
"../../desktop-shell/src-tauri/icons/128x128.png",
|
|
"../../desktop-shell/src-tauri/icons/128x128@2x.png",
|
|
"../../desktop-shell/src-tauri/icons/icon.icns",
|
|
"../../desktop-shell/src-tauri/icons/icon.ico",
|
|
"../../desktop-shell/src-tauri/icons/icon.png"
|
|
]
|
|
}
|
|
}
|