0f829cd252
## 变更 单 HTML → Phaser 4 + Vite 的迁移链路现在有明确且可执行的工程合同:Phaser/npm 目标固定走 DirectProject,旧 JSON Generator 继续只处理单文件 HTML。 - 新增受控 `project.bootstrap`,仅允许项目内 `game` 目录执行无参数 `npm install`,校验 package/lock、路径、npm 管理器并记录依赖指纹。 - `project.verify` 支持相对 `cwd`,构建前诊断缺失依赖,`cwd=game` 的 build 必须产出 `game/dist/index.html`。 - npm bootstrap 使用受控网络沙箱;通用 `command.exec npm install` 仍被拒绝。 - 同步 Runtime 工具广告、执行分发、审计、权限策略、DirectProject/Generator 提示、前端权限面板、TypeScript/Rust 契约和项目文档。 - Phaser 迁移提示覆盖 Scene、输入、敌人/守卫、波次、胜负、重开和桌面/移动双视口验收。 ## 验证 - `npm run ai-game-creator-shell:typecheck` - `cargo check --manifest-path apps/ai-game-creator-shell/src-tauri/Cargo.toml` - `cargo fmt --manifest-path apps/ai-game-creator-shell/src-tauri/Cargo.toml -- --check` - `cargo test --locked -p shared-contracts --manifest-path server-rs/Cargo.toml game_creation_app` - 定向 `project.verify` Rust 测试 - `npm run check:encoding` - `npm run check:doc-index` - `git diff --check` - 真实 DirectProject:`npm install`、`npm run build` 成功,`game/dist/index.html` 存在。 - 浏览器试玩:桌面视口画布非空;移动视口触摸开火、键盘换道和重开逻辑均已观察确认。 真实项目没有纳入仓库提交;PR 只包含客户端合同、Runtime 能力和验证门禁。 Reviewed-on: #353