# CI `.forgejo/workflows/checkpoint.yml` runs the full checkpoint suite (`scripts/run_checkpoint_tests.py`: migrations on a fresh DB, backend `pytest`, all Godot smoke tests, the 2-player multiplayer test, and the fresh-clone boot check) on every push to `main` and every PR. **It does not run yet** — it needs a Forgejo Actions runner, which is a one-time operator setup on the AGP host. ## Enabling it 1. **Turn on Actions in Forgejo** — in the `forgejo` container's `app.ini`, add: ```ini [actions] ENABLED = true ``` then restart the container. 2. **Register a `host` runner.** The suite starts Docker containers and runs the Godot binary, so a container runner would need docker-in-docker + a Godot image. A `host`-type runner (runs jobs directly on the AGP box, where Docker, `~/godot/godot`, and Python already live) is simplest: ```bash # on the AGP host FORGEJO_URL=http://localhost:3000 # get a token: Forgejo → Site Admin → Actions → Runners → Create forgejo-runner register --no-interactive \ --instance "$FORGEJO_URL" --token "" \ --name agp-host --labels host forgejo-runner daemon & # or a systemd unit ``` Install `forgejo-runner` from . 3. Push a commit — the `checkpoint` workflow should appear under the repo's **Actions** tab. ## Interim: run it by hand Until the runner is up, the same gate is: ```bash python scripts/run_checkpoint_tests.py ``` which is also what `/checkpoint/` on the dashboard runs before a playtest build.