Results on the pull request
A check run on the commit carries the run summary, failures first.

Reviewers should not have to open a CI log to see what failed. With @vzn/vx-ci, vx posts a check run with the summary: tasks, cache hits, failures and their output.
It is on by default when a token is there; checks: false turns it off.
// config
// vx.workspace.ts
import { defineWorkspace } from '@vzn/vx/config'
import { github } from '@vzn/vx-ci'
export default defineWorkspace({
plugins: [github({ checks: true })],
})More in CI

Run only what a change reaches
--affected follows task edges from the change, and nothing else runs.

vx lock
CI runs exactly the config you reviewed.

Flaky task detection
Local and free: the same key failing after it passed is called flaky.

Results on GitHub
Every run on GitHub Actions writes a job summary and a check.

Cache scope from the branch
On Actions, main writes trusted cache entries and a pull request writes only its own.