用途:在 TiDB 仓库中执行构建或测试命令前,判断是否需要先运行 make bazel_prepare。策略来源为 AGENTS.md 的 Build Flow 中“何时需要 make bazel_prepare”一节。日常编码循环中,除非很可能命中决策规则触发条件,否则可跳过本技能。
主要能力:通过检查本地改动与规则比对,给出是否需要 make bazel_prepare 的结论。
使用方式:在仓库根目录运行以下命令查看改动: git status --short git diff --name-status git diff --name-status --cached git ls-files --others --exclude-standard git diff -U0 -- '.go' git diff -U0 --cached -- '.go'
决策规则:触发条件定义在 AGENTS.md 的 Build Flow 中。将上述命令输出与条件比对。对于已有 _test.go 文件中顶层测试函数的触发条件,检查 git diff -U0 -- '.go' 与 git diff -U0 --cached -- '*.go' 输出中新增行是否出现类似 +func TestXxx(t *testing.T) { 的模式,若出现则视为需要 make bazel_prepare。对于已有 Go 文件的 import 段改动,检查上述 diff 输出中新增或删除的 import 行,例如 +import (、-import "fmt"、+ "context",若出现则视为需要 make bazel_prepare。
结果处理:若任一条件命中,运行 make bazel_prepare;若均未命中,则跳过 make bazel_prepare 继续,并报告判断依据。
限制:具体触发条件以 AGENTS.md 为准,本技能不替代该文档;未提供其他平台、收费或效果信息。