name: CI

on:
  pull_request:
  workflow_dispatch:

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v4

      - uses: supabase/setup-cli@v1
        with:
          version: latest

      - name: Start Supabase local development setup
        run: supabase db start

      - name: Reset database to ensure a clean state
        run: supabase db reset --no-seed

      - name: Verify generated types are checked in
        run: |
          supabase gen types typescript --local > supabase/functions/_shared/database.types.ts
          if ! git diff --ignore-space-at-eol --exit-code --quiet supabase/functions/_shared/database.types.ts; then
          echo "Detected uncommitted changes after build. See diff below:"
          git diff
          exit 1
          fi
