工程(闸件自检档): 纯闸件/管线批不再零触发——domain_route只含tools/.gitea判gates(空diff仍skip) + run_all_gates新增--gates档(文档域python机检件+熵增+静态扫描+闸壳bash -n自检,不启引擎,判据口径原样) + ci.yml档位映射三值化(full/docs/gates)并排除gates档导入缓存刷新
This commit is contained in:
1 parent
202fd3d665
commit
a20ca0df0b
3 files changed
+78
-21
No files matched your search
@@ -1,13 +1,14 @@
|
||||
#!/usr/bin/env bash
|
||||
# 乙案域分流——push 触发的远端 CI 按改动域选闸(2026-11-03 用户裁)。
|
||||
# 用法: tools/ci/domain_route.sh <base_sha> <head_sha>
|
||||
# 输出: stdout 打印 full|docs|skip;GITHUB_OUTPUT 在位时另写 mode= 行(Actions 步骤输出)。
|
||||
# 输出: stdout 打印 full|docs|gates|skip;GITHUB_OUTPUT 在位时另写 mode= 行(Actions 步骤输出)。
|
||||
# 规则(唯一事实源,乙案语义):
|
||||
# 1. diff 含 game/ 下非 .md 文件(行为载体:代码/场景/数据表/素材)→ full(两域全量,渲染闸随 code 域)
|
||||
# 2. 否则 diff 非空(design/ 文档、reports/、根 md、game/ 下 .md 等一切非代码面)→ docs
|
||||
# (乙案:文档批只跑文档域秒级闸——gdd_lint/doc_link/doc_term/pipeline/doc_ref/capability+熵增)
|
||||
# 例外:diff 只含 tools/ 与 .gitea/(闸件与管线自身改动)→ skip——闸件改动不占合回全量,
|
||||
# 质量义务=落批人工确认可跑通(run_all_gates.sh 头注既有口径,不在远端重复烧引擎)。
|
||||
# 例外:diff 只含 tools/ 与 .gitea/(闸件与管线自身改动)→ gates——闸件自检档:跑不启引擎的
|
||||
# 机检面(文档域 python 机检件+熵增闸+静态扫描+闸壳 bash -n 自检,见 run_all_gates.sh
|
||||
# --gates),闸件改动不再零触发,也不在远端重复烧引擎。
|
||||
# 3. diff 空 → skip。
|
||||
# 判定面说明:game/tests/** 与 game/sim/** 属 game/ 行为载体(.md 除外)→ full,
|
||||
# 与 run_all_gates.sh 关联档口径一致(测量面批单元与集成测试照跑全套件)。
|
||||
@@ -28,7 +29,7 @@ else
|
||||
mode="full"
|
||||
else
|
||||
non_tools="$(echo "$files" | grep -vE '^(tools/|\.gitea/)' || true)"
|
||||
if [ -n "$non_tools" ]; then mode="docs"; else mode="skip"; fi
|
||||
if [ -n "$non_tools" ]; then mode="docs"; else mode="gates"; fi
|
||||
fi
|
||||
fi
|
||||
if [ -n "${GITHUB_OUTPUT:-}" ]; then printf 'mode=%s\n' "$mode" >> "$GITHUB_OUTPUT"; fi
|
||||
|
||||
Reference in new issue
Block a user