Repository navigation
Gate framework
cdowin edited this page Oct 4, 2026
·
1 revision
A game's Makefile includes the gate framework. Makefile.gates -includes Makefile.tiers
and reads the tier lists it declares (GDK_PRECOMMIT_TIERS, GDK_VERIFY_TIERS):
GDK_CHECKS := godot-check # make targets that join `check`; add uid-scan, hermetic-scan...
include Makefile.gates-
make checkrunsshell(shellcheck over every tracked*.sh) and then each target inGDK_CHECKS. Every gate runs, the last line is the verdict, and the exit is the worst exit. -
make precommitischeckplusGDK_PRECOMMIT_TIERS. -
make verifyischeckplusGDK_VERIFY_TIERS, lessGDK_VERIFY_SKIP. CI runs it. -
make milestoneis a deprecated alias ofverify, kept for 3.x (removed in 4.0), as areGDK_MILESTONE_TIERSandGDK_MILESTONE_SKIP.
Makefile.gates reads no TOML. A builder runs make spot SYS=<slice>: gdlint and a compile of
only the .gd files changed against BASE (default main), then that unit slice. Every machine
and CI runs the same gate code because uv.lock pins the bits. install-gates --diff prints what
a re-install would change and writes nothing.
See also: Runners and install-runners, Installing and pinning.
Getting started
Reference
Guides
Upgrading
Maintaining