validateWorld is push, dispatch, wait and gate as one call.
Validation runs the pull request’s own world source. The push files the checkout as a version on the pull request’s branch, the dispatch pins that version, and the platform resolves the branch back to its open pull request.
Validate a checkout in one call
onProgress reports each step as it happens: the push, the resolved run config, and each run’s status while it waits.
Every option
The first argument is the directory holding the world source.
Without a
branch and outside both a git checkout and GitHub Actions, the call throws rather than guessing which branch it is validating.
What the gate actually checks
Three conditions, all of them required forok to be true.
- Every dispatch was accepted.
- Every run reached a terminal
COMPLETEDstatus. - When
minScoreis set, every run’s score meets it.
A run that completes with no score fails a score gate rather than passing it. Null means not scored, never zero.
The report
Each
ValidatedRun.failure is null when that run passes, and otherwise says why it did not: a dispatch error, a non-completed status, a missing score, or a score under the bar. report is the full RunReport, or null when the dispatch itself failed.
The markdown is the comment
report.markdown is a finished summary: a pass or fail headline, the commit and content hash that ran, a table of models with scores and links to each run, and a table of per-scenario rewards. Scenario tables longer than twelve rows fold into a <details> block.
gh CLI, or write it to $GITHUB_STEP_SUMMARY as above to get it on the job’s own page.
In GitHub Actions
Three secrets and one script. Branch, commit and actor are detected from the Actions environment, so nothing about provenance has to be configured.Content-hash deduplication means an unchanged tree files no new bundle. Validation resolves the branch tip and pushes on top of it, so a re-run replaces its own previous push instead of conflicting with it.
Which gate to reach for
Where to go next
- Run API worlds in CI for the terminal workflow and the world test suite.
- Publish a world for the
pushthatvalidateWorldcalls. - Worlds for run configs and the run report.