step③ game-studio 联调(编译验证待 mini-desktop): - request.ts 注入 tenant-id:1;user.ts token 取 VITE_STUDIO_TOKEN(=test1) - vite.config.ts: VITE_API_BASE 非空则关 mock + 启动打印 baseURL/mock 状态 - runtimeApi.ts: 取包改委托 src/api/runtime.ts(带 base+token+tenant,修 Codex C3 裸 axios 同源) - inject.ts: manifestUrl resolve 到 VITE_API_BASE + 带鉴权头(修 Codex C4) - telemetry: 信封补 eventId(randomUUID)+ traceId 兜底非空;sendBeacon→fetch keepalive 带头(sendBeacon 不能带 Authorization/tenant) - Play.vue onTelemetry 白名单原样转发 like/share/play_end(修 Codex H8 吞事件) - 新增 game-studio/.env.staging + vite-env.d.ts;.gitignore 豁免 .env.staging(防 gitignore-swallows-frontend-source 同类坑) - 注:Feed.vue 互动经 buildEnvelope traceId 兜底覆盖,免改 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
43 lines
1.5 KiB
Plaintext
43 lines
1.5 KiB
Plaintext
node_modules/
|
||
.pnpm-store/
|
||
|
||
dist/
|
||
build/
|
||
coverage/
|
||
.next/
|
||
.turbo/
|
||
.vite/
|
||
|
||
.env
|
||
.env.*
|
||
!.env.example
|
||
|
||
.idea/
|
||
*.log
|
||
.DS_Store
|
||
.gstack/
|
||
|
||
# ── 例外 1:源码树(src/)下名为 build 的目录是合法源码,绝非构建产物 ──
|
||
# 第 5 行笼统的 build/(为构建产物设计)会误吞 Java/前端源码中名为 build 的包/目录,例如:
|
||
# 后端 cn.wanxiang.game.module.runtime.{dal.dataobject,dal.mysql,service}.build(编译任务域,4 文件)、
|
||
# 前端 game-admin/src/views/infra/build。
|
||
# 构建产物绝不落在 src/ 下,故一律豁免 src/ 下的 build/,避免克隆/CI 缺源码而编译失败。
|
||
!**/src/**/build/
|
||
!**/src/**/build/**
|
||
|
||
# ── 例外 2:game-admin(yudao 前端 fork)模块根级例外 ──
|
||
# yudao 约定将「模块根」build/(vite 插件配置源码,不在 src 下,故需单独豁免)与 .env*(前端构建配置,非密钥)纳入版本库。
|
||
!game-admin/build/
|
||
!game-admin/build/**
|
||
!game-admin/.env
|
||
!game-admin/.env.dev
|
||
!game-admin/.env.local
|
||
!game-admin/.env.prod
|
||
!game-admin/.env.stage
|
||
!game-admin/.env.test
|
||
|
||
# ── 例外 3:game-studio 联调 env(staging 后端地址 + studio token,非密钥,须入库供 mini-desktop 克隆联调)──
|
||
# 同 gitignore-swallows-frontend-source 记忆:根 .env.* 笼统忽略会吞掉 game-studio/.env.staging,
|
||
# 致 mini-desktop 匿名克隆后拿不到联调配置、vite --mode staging 起不来。故显式豁免。
|
||
!game-studio/.env.staging
|