Cross-platform mutual exclusion for CI runners shared between
Forgejo Actions and GitHub Actions. Ensures only one CI job
runs at a time on the same machine.
Uses atomic `set -C` (O_EXCL / noclobber) file creation —
works identically on Linux, macOS, and Windows.
The lock auto-expires after CI_LOCK_MAX_AGE seconds (default 2h)
and is released if the owning process dies, so a crashed build
will never deadlock the machine.