Skip to content

Use final AsDecided repository paths #31

Use final AsDecided repository paths

Use final AsDecided repository paths #31

Workflow file for this run

name: CI
# Gate every per-tool benchmark on every push to main and every pull request.
# rac is installed from its public source and consumed strictly as an external
# CLI on PATH (DG-ADR-0001) — the suite imports no engine code. Re-baselining
# is human-gated: no step here may ever pass --update-baseline (a test
# enforces this).
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
jobs:
benchmarks:
name: benchmarks (py${{ matrix.python-version }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v5
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip
- name: Install rac (external CLI on PATH, never an import)
run: |
python -m pip install --upgrade pip
pip install "git+https://github.com/itsthelore/rac-core.git"
- name: Install the harness
run: pip install -e ".[dev]"
- name: Validate every fixture corpus
run: |
for bench in search-artifacts find-decisions get-artifact get-related get-summary; do
rac validate "$bench/corpus"
done
- name: Run the benchmark battery
run: python -m pytest -q
- name: Gate every benchmark against its committed baseline
run: |
for bench in search-artifacts find-decisions get-artifact get-related get-summary; do
python "$bench/run.py" --check
done