fix(desktop): settings panels render (model/options, auxiliary, config/schema REST) #144
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Python Tests | |
| on: | |
| pull_request: | |
| branches: | |
| - main | |
| # Cancel superseded runs for the same PR (or the same manual run). | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} | |
| cancel-in-progress: true | |
| # Test results are published by the separate "Test Results" workflow | |
| # (triggered via workflow_run) so PRs from forks/Dependabot — which get a | |
| # read-only GITHUB_TOKEN here — still get results published. See | |
| # .github/workflows/test-results.yml and: | |
| # https://github.com/EnricoMi/publish-unit-test-result-action#support-fork-repositories-and-dependabot-branches | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ['3.11'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r requirements.dev.txt | |
| - name: Run tests | |
| run: | | |
| pytest tests/ \ | |
| --junitxml=test-results/test-results.xml | |
| - name: Upload test results | |
| if: (!cancelled()) | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Test Results (${{ matrix.python-version }}) | |
| path: test-results/*.xml | |
| retention-days: 3 | |
| harbor-adapter: | |
| # The harbor eval adapter (eval/harbor/clawcodex_agent.py) cannot be | |
| # imported by the 3.11 job above: it uses `typing.override` (3.12+) and | |
| # imports `harbor.*`, which is not a repo dependency. So its tests SKIP | |
| # there — including the guard on a real defect that shipped in #789, where | |
| # the adapter reported a fabricated `num_turns: 0` for exactly the killed | |
| # trials it was added to measure. A guard nobody executes is a comment, so | |
| # this job runs them on the interpreter the adapter actually runs on. | |
| # | |
| # `--isolated` is required, not tidiness: without it `uv run` treats the | |
| # repo as a project and re-syncs the checkout's venv to 3.13. | |
| name: "Harbor adapter (3.13)" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v5 | |
| - name: Run adapter tests | |
| # The harbor-dependent test files ALL belong here. They open with | |
| # `pytest.importorskip("harbor")`, so in the main `test (3.11)` job — | |
| # where harbor is not installed — they skip silently and a green tick | |
| # says nothing about them. This job is the only place they can | |
| # actually run, so a file omitted here is a file that never runs at | |
| # all. Add new tests/test_harbor_*.py files to this list. | |
| run: | | |
| uv run --isolated --python 3.13 --with harbor --with pytest \ | |
| python -m pytest \ | |
| tests/test_headless_usage_events.py \ | |
| tests/test_harbor_adapter_fusion.py \ | |
| tests/test_harbor_adapter_advisor.py \ | |
| tests/test_harbor_adapter_vision.py \ | |
| -v | |
| event_file: | |
| name: "Event File" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Event File | |
| path: ${{ github.event_path }} |