Skip to content

docs: add Alpha-tier routing CTA to README #12

docs: add Alpha-tier routing CTA to README

docs: add Alpha-tier routing CTA to README #12

Workflow file for this run

name: PR
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip
- name: Install dev deps
run: python -m pip install -e ".[dev]"
- name: Layer 0 — gitleaks (full repo scan)
run: |
# Extract gitleaks to /tmp so its bundled README/docs (full of regex
# examples for AWS/Sidekiq/etc secrets) don't pollute the source scan.
mkdir -p /tmp/gitleaks
curl -sSfL https://github.com/gitleaks/gitleaks/releases/download/v8.18.4/gitleaks_8.18.4_linux_x64.tar.gz \
| tar xz -C /tmp/gitleaks
/tmp/gitleaks/gitleaks detect --source . --redact --verbose --no-git
- name: Layer 0 — pre-commit hooks (excluding network)
run: |
python -m pip install pre-commit
pre-commit run --all-files --hook-stage manual || true
# Re-run to detect mutations from auto-fixers.
pre-commit run --all-files
- name: Layer 0 — secret scan (test backstop)
run: pytest tests/test_layer0_secrets.py -v
- name: Layer 1 — structural
run: pytest tests/test_layer1_structural.py -v
- name: Layer 4 — static tier gating
run: pytest tests/test_layer4_tier_static.py -v
- name: Cookbook tools — unit tests with coverage
run: pytest tests/cookbook_tools/ -v --cov=cookbook_tools --cov=scripts --cov-report=term-missing
- name: Layer 2 — cassette replay
run: pytest tests/test_layer2_execution.py -v -m cassette