fix(ci): restore green main (workflow callers, type errors, coverage, hardening) #24
Workflow file for this run
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
| # Python Compatibility Matrix Testing for Foundry Unify | |
| # Tests the project across multiple Python versions and operating systems. | |
| # | |
| # This is a thin caller to the org-level reusable workflow. | |
| name: Python Compatibility | |
| on: | |
| push: | |
| branches: [main, master] | |
| paths: | |
| - 'src/**/*.py' | |
| - 'tests/**/*.py' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| pull_request: | |
| branches: [main, master, develop] | |
| paths: | |
| - 'src/**/*.py' | |
| - 'tests/**/*.py' | |
| - 'pyproject.toml' | |
| - 'uv.lock' | |
| schedule: | |
| # Weekly compatibility check on Sundays at 6 AM UTC | |
| - cron: '0 6 * * 0' | |
| workflow_dispatch: | |
| # Cancel in-progress runs for same PR/branch | |
| concurrency: | |
| group: python-compat-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| compatibility: | |
| name: Python Compatibility Matrix | |
| uses: ByronWilliamsCPA/.github/.github/workflows/python-compatibility.yml@main | |
| with: | |
| no-build: false # hatchling build backend: editable install must build | |
| python-versions: '["3.10", "3.11", "3.12", "3.13"]' | |
| operating-systems: '["ubuntu-latest"]' | |
| include-macos: true | |
| include-windows: true | |
| source-directory: 'src' | |
| # No -m marker expression: the embedded quotes do not survive the org | |
| # workflow's shell expansion (pytest then reads "slow" as a path). The | |
| # integration/load suites are excluded by path instead. | |
| test-command: 'pytest tests/ -v --tb=short -x --ignore=tests/integration --ignore=tests/load' | |
| coverage-report: false | |
| fail-fast: false | |
| timeout-minutes: 30 | |
| secrets: inherit |