chore: W1 项目骨架 — 基线 v1.0 架构落盘(Godot 4.7.2 / gl_compatibility)
架构基线:docs/architecture/2026-10-19-F-architecture.md(v1.0) 范围:WRATH OF THE DEAD《怨返》单人挂机 · GDScript · 1280×720 · 12 班底数据驱动 - 骨架:project.godot(4.7 + GL Compatibility)、架构 §2.1 完整目录树(含占位说明)、 .gitignore/.gitattributes(LF 纪律)、README.md、CLAUDE.md、export_presets.cfg 占位、 pipeline/README.md(3ds Max 侧契约) - 数据管线段 1:data/sheets/generators.csv(GDD §3.1 十二班底逐值抄录) + data/schema/generators.schema.json(v0)+ src/tools/sheet_importer.gd (import_all/import_sheet/validate + ImportReport + .tres stub + 行号/列名/原因失败策略) + src/tools/import_main.gd(CI CLI 入口)+ data/build/generators.json(字节级确定性产物) - 探针:P1(SCREEN_TEXTURE/CanvasLayer 排序)与 P3(NoiseTexture2D seamless)场景代码与 截图/统计工具;实测手册与结论模板在工作区 docs/engineering/(随仓库外文档树) - CI:数据门激活(import_all + schema validate + build 漂移门);单测/sim/导出 W3+ 注释占位; 4.7.2 headless CLI 行为标注待本机验证 待用户侧:P1/P3 实测回填结论;P6 字体许可 / P7 GPU 实测;look-dev 游魂初版(Max 侧)
This commit is contained in:
commit
856326a766
42 files changed
+1814
No files matched your search
@@ -0,0 +1,99 @@
|
||||
# ============================================================================
|
||||
# CI —— F《怨返》数据门(架构 §7.2;W1 激活部分)
|
||||
#
|
||||
# W1 激活:checkout → setup Godot 4.7.2 → headless import → SheetImporter
|
||||
# import_all → schema validate → build 漂移门(git diff)
|
||||
# W3 激活:GUT 单测(需先合入 gd-unit-testing addon) —— 见下方注释块
|
||||
# W4 激活:headless sim 14 门报告(artifact) —— 见下方注释块
|
||||
# W5 激活:Windows 导出 → artifact(templates + export_presets 补全)
|
||||
#
|
||||
# 待本机验证(4.7.x 超出训练数据):
|
||||
# - `godot --headless --path . --import` 的 4.7.2 实际行为(若失效改 -e --quit-after 200)
|
||||
# - setup-godot@v1 对 4.7.2 版本串/模板的支持
|
||||
# 首跑后按实际更新本文件与 README §5。
|
||||
# ============================================================================
|
||||
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
branches: [main]
|
||||
|
||||
jobs:
|
||||
data-gate:
|
||||
name: data-gate(schema v0 数据门)
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Godot 4.7.2
|
||||
uses: chickensoft-games/setup-godot@v1
|
||||
with:
|
||||
version: 4.7.2
|
||||
export-templates: false # W5 导出步骤再置 true
|
||||
|
||||
- name: Godot version sanity
|
||||
run: godot --headless --version
|
||||
|
||||
# 首次 import:生成全局类缓存 + 资源导入(SheetImporter 才能被解析)
|
||||
- name: Headless import
|
||||
run: godot --headless --path . --import
|
||||
|
||||
# 数据门 1:CSV → build/*.json(schema 违规 = 中止 + 行号/列名/原因,退出码 1)
|
||||
- name: SheetImporter import_all
|
||||
run: godot --headless --path . -s res://src/tools/import_main.gd
|
||||
|
||||
# 数据门 2:build/*.json 对 schema 合规性
|
||||
- name: Schema validate
|
||||
run: godot --headless --path . -s res://src/tools/import_main.gd -- --validate-only
|
||||
|
||||
# 数据门 3:漂移门——改了 CSV 没重新生成提交 build = 红("CI 生成并提交"纪律)
|
||||
# 行尾由 .gitattributes 钉 LF,避免格式性误报
|
||||
- name: Build drift check
|
||||
run: git diff --exit-code -- data/build/
|
||||
shell: bash
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# W3 激活(前置:合入 gd-unit-testing addon 到 addons/gut/):
|
||||
# unit-tests:
|
||||
# runs-on: windows-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - uses: chickensoft-games/setup-godot@v1
|
||||
# with: { version: "4.7.2", export-templates: false }
|
||||
# - run: godot --headless --path . --import
|
||||
# - run: godot --headless --path . -s res://addons/gut/gut_cmdln.gd
|
||||
# -gtest=res://tests/unit -gexit
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# W4 激活(sim 14 门;W6 起门 #5/#10 设硬门,此前 informational):
|
||||
# sim-gates:
|
||||
# runs-on: windows-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - uses: chickensoft-games/setup-godot@v1
|
||||
# with: { version: "4.7.2", export-templates: false }
|
||||
# - run: godot --headless --path . --import
|
||||
# - run: godot --headless --path . -s res://src/core/sim/sim_main.gd
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# with: { name: sim-report, path: tests/sim_reports/ }
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# W5 激活(release tag:Windows 导出 → artifact → 人工上传 Steamworks):
|
||||
# export-windows:
|
||||
# if: startsWith(github.ref, 'refs/tags/')
|
||||
# runs-on: windows-latest
|
||||
# steps:
|
||||
# - uses: actions/checkout@v4
|
||||
# - uses: chickensoft-games/setup-godot@v1
|
||||
# with: { version: "4.7.2", export-templates: true }
|
||||
# - run: godot --headless --path . --import
|
||||
# - run: godot --headless --path . --export-release "Windows Desktop" build/wrath-of-the-dead.exe
|
||||
# - uses: actions/upload-artifact@v4
|
||||
# with: { name: windows-build, path: build/ }
|
||||
# ---------------------------------------------------------------------------
|
||||
Reference in new issue
Block a user