Skip to content

feat(import): per-episode receipts in prepared-manifest.json (#389) #597

feat(import): per-episode receipts in prepared-manifest.json (#389)

feat(import): per-episode receipts in prepared-manifest.json (#389) #597

Workflow file for this run

name: ci
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
on:
push:
branches: [main]
pull_request:
jobs:
checks:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Test the supported floor and current runtime. Static analysis runs once below.
python-version: ["3.11", "3.14"]
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Install ffmpeg (the test suite pins to the system binary)
run: sudo apt-get update && sudo apt-get install -y --no-install-recommends ffmpeg
- uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
with:
python-version: ${{ matrix.python-version }}
- name: Sync environment
# Not --all-extras: the mediapipe extra is a model, deliberately not
# exercised here (see pyproject.toml). Workspace examples are checked
# separately against the environments they own.
run: uv sync --locked
- name: Lint
if: matrix.python-version == '3.14'
run: uv run ruff check
- name: Format check
if: matrix.python-version == '3.14'
run: uv run ruff format --check
- name: Typecheck
if: matrix.python-version == '3.14'
run: uv run ty check
- name: Tests
run: uv run pytest -q
workspace-example-checks:
name: workspace example (${{ matrix.example_project }}, Python ${{ matrix.python-version }})
runs-on: ubuntu-latest
env:
WORKSPACE_EXAMPLE_PROJECT: ${{ matrix.example_project }}
strategy:
fail-fast: false
matrix:
python-version: ["3.11", "3.14"]
example_project:
- examples/build_ai_evaluation
- examples/egosuite_evaluation
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
with:
python-version: ${{ matrix.python-version }}
- name: Lint
if: matrix.python-version == '3.14'
run: uv run --locked --project "$WORKSPACE_EXAMPLE_PROJECT" ruff check "$WORKSPACE_EXAMPLE_PROJECT"
- name: Format check
if: matrix.python-version == '3.14'
run: uv run --locked --project "$WORKSPACE_EXAMPLE_PROJECT" ruff format --check "$WORKSPACE_EXAMPLE_PROJECT"
- name: Typecheck
if: matrix.python-version == '3.14'
run: uv run --locked --project "$WORKSPACE_EXAMPLE_PROJECT" ty check --project "$WORKSPACE_EXAMPLE_PROJECT" --extra-search-path . "$WORKSPACE_EXAMPLE_PROJECT"
- name: Tests
run: uv run --locked --project "$WORKSPACE_EXAMPLE_PROJECT" pytest -q "$WORKSPACE_EXAMPLE_PROJECT/tests"