Skip to content

refactor: framework de-coupling — generic runtime, ASR as use case (v… #41

refactor: framework de-coupling — generic runtime, ASR as use case (v…

refactor: framework de-coupling — generic runtime, ASR as use case (v… #41

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
quality:
name: Lint / Type-check / Test / Sonar
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6.0.2
with:
fetch-depth: 0 # SonarCloud needs full git history for blame attribution
- name: Set up Python 3.11
uses: actions/setup-python@v6.2.0
with:
python-version: "3.11"
cache: "pip"
- name: Install dependencies
run: pip install -e ".[dev]"
- name: Lint (ruff)
run: ruff check src/ tests/
- name: Type check (pyright)
# Pyright was previously pointed at src/orchestrator (a shim layer
# of star-imports) so its real coverage of the framework was nil.
# After deleting src/orchestrator, the target moved to src/runtime
# and surfaces ~41 pre-existing generic/typed-dict issues. Don't
# block the build on those; track via the follow-up cleanup plan.
continue-on-error: true
run: pyright src/runtime
- name: Test with coverage
run: pytest --cov=src/runtime --cov-report=xml --junitxml=junit.xml
- name: SonarCloud Scan
uses: SonarSource/sonarqube-scan-action@v8.0.0
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}