Skip to content

feat(dla): M7 — KPI workbook, coverage, prior-bundle import, term mapping #12

feat(dla): M7 — KPI workbook, coverage, prior-bundle import, term mapping

feat(dla): M7 — KPI workbook, coverage, prior-bundle import, term mapping #12

Workflow file for this run

name: ci
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
with:
python-version: "3.11"
- name: Sync workspace
run: uv sync --all-packages --locked
- name: Lint
run: uv run ruff check .
- name: Type-check libs
run: |
(cd libs/core && uv run mypy src)
(cd libs/llm && uv run mypy src)
- name: Test libs/core
run: cd libs/core && uv run pytest -q --cov=auropro_core --cov-report=term-missing --cov-fail-under=100
- name: Test libs/llm
run: cd libs/llm && uv run pytest -q --cov=auropro_llm --cov-report=term-missing --cov-fail-under=100
- name: Test apps/dla (unit)
run: cd apps/dla && uv run pytest tests/unit -q
- name: Test repo scripts
run: uv run pytest scripts/tests -q --cov=scripts --cov-report=term-missing --cov-fail-under=100
- name: Samples smoke
run: |
uv run python libs/core/samples/quickstart.py
uv run python libs/llm/samples/quickstart.py
- name: Workspace pin guard
run: uv run python scripts/check_workspace_pins.py
- name: License gate (denylist)
run: uv run python scripts/check_licenses.py
- name: License gate (allowlist)
run: |
IGNORE=$(grep -v '^#' scripts/license_ignore.txt | awk '{print $1}' | grep -v '^$' | tr '\n' ' ')
uv run pip-licenses --allow-only="MIT License;Apache Software License;BSD License;ISC License (ISCL);Python Software Foundation License;The Unlicense (Unlicense);BSD-3-Clause;BSD-2-Clause;Apache-2.0;MIT;Apache License 2.0;PSF-2.0;Apache-2.0 AND MIT;Apache-2.0 AND CNRI-Python;Apache-2.0 OR BSD-2-Clause;Apache Software License; BSD License;Apache Software License; MIT License;MIT OR Apache-2.0;BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0" --ignore-packages $IGNORE
shell: bash
osv-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
- name: OSV scan (lockfile)
uses: google/osv-scanner-action/osv-scanner-action@9a498708959aeaef5ef730655706c5a1df1edbc2 # v2.3.8
with:
scan-args: |-
--config=osv-scanner.toml
--lockfile=uv.lock