Spaces:
Running
Running
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| name: Test (Python ${{ matrix.python-version }}) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12"] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: pip | |
| - name: Install package + extras | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -e '.[llm,eval,demo,frontier,dev]' | |
| - name: Verify dependency consistency | |
| run: pip check | |
| - name: Run pytest | |
| run: pytest tests/ -v --tb=short | |
| - name: Smoke test (env reset+step) | |
| run: make smoke-test | |
| - name: Link check (local paths, strict) | |
| run: make link-check | |
| link-check-http: | |
| # External URL probe — best-effort. Step-level continue-on-error so the | |
| # job shows green even when transient external failures happen (e.g. HF | |
| # Space mid-rebuild after a push). | |
| name: README http(s) link probe (allowed-fail) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: HEAD-probe external links | |
| continue-on-error: true | |
| run: make link-check-http | |
| - name: Annotate result (always succeeds) | |
| run: echo "Link probe ran (failures, if any, are non-blocking)." | |
| validate-openenv: | |
| name: openenv validate | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Set up Python 3.11 | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.11" | |
| cache: pip | |
| - name: Install package | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -e '.[llm]' | |
| - name: Validate openenv manifest (static) | |
| run: openenv validate . | |
| continue-on-error: true | |