cachekit-core 0.7.1

LZ4 compression, xxHash3 integrity, AES-256-GCM encryption for byte payloads
Documentation
name: Runner Guard

# Drift protection (LAB-3501): every job in this repo must run on a GitHub-hosted
# runner. This job fails the workflow if any `runs-on` or matrix `os:`/`runner:`
# value in .github/workflows/ is not a hosted label — an allow-list, so a NEW
# self-hosted label nobody has named yet still fails.
#
# This is protection against MAINTAINER drift on trusted branches only.

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

permissions:
  contents: read

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  assert-hosted-runners:
    name: Assert all runners are GitHub-hosted
    runs-on: ubuntu-latest
    timeout-minutes: 5
    steps:
      - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6
      - name: Self-test the guard, then scan every workflow
        run: |
          python3 .github/scripts/assert_hosted_runners.py --selftest
          python3 .github/scripts/assert_hosted_runners.py