name: CI
on: [push, pull_request]
jobs:
  typescript:
    runs-on: ubuntu-latest
    strategy: { matrix: { node-version: [20, 22] } }
    defaults: { run: { working-directory: typescript } }
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: "${{ matrix.node-version }}" }
      - run: npm ci
      - run: npm run typecheck
      - run: npm test
  python:
    runs-on: ubuntu-latest
    defaults: { run: { working-directory: python } }
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with: { python-version: "3.12" }
      - run: pip install -r requirements.txt
      - run: pytest -q
