Sync to Tango API v4.6.9: budget surface, singleton GETs, bug fixes (v1.1.0) #34
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
| name: Linting | |
| # Lint gate (ruff format + ruff check + mypy) runs on every PR and push to main. | |
| # | |
| # The SDK filter/shape conformance check needs the canonical manifest from the | |
| # private makegov/tango repo. That checkout requires a token the public CI does | |
| # not have, so the conformance step is kept separate and non-blocking | |
| # (continue-on-error) until a TANGO_API_REPO_ACCESS_TOKEN secret is wired up. | |
| # The lint gate below is fully self-contained and blocks the PR on failure. | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| jobs: | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| version: "latest" | |
| - name: Set up Python | |
| run: uv python install 3.12 | |
| - name: Install dependencies | |
| run: uv sync --all-extras | |
| - name: Check formatting with ruff | |
| run: uv run ruff format --check tango/ | |
| - name: Lint with ruff | |
| run: uv run ruff check tango/ | |
| - name: Type check with mypy | |
| run: uv run mypy tango/ | |
| conformance: | |
| # Non-blocking: requires checkout of the private makegov/tango repo for the | |
| # canonical filter_shape manifest. Wire a TANGO_API_REPO_ACCESS_TOKEN secret | |
| # and flip continue-on-error to make this a hard gate. | |
| runs-on: ubuntu-latest | |
| continue-on-error: true | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Checkout tango API repo (manifest source) | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: makegov/tango | |
| path: tango-api | |
| token: ${{ secrets.TANGO_API_REPO_ACCESS_TOKEN }} | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| version: "latest" | |
| - name: Set up Python | |
| run: uv python install 3.12 | |
| - name: Install dependencies | |
| run: uv sync --all-extras | |
| - name: Check SDK filter/shape conformance | |
| run: uv run python scripts/check_filter_shape_conformance.py --manifest tango-api/contracts/filter_shape_contract.json |