# Git hooks (lefthook). Hooks call the same package.json scripts CI runs —
# one source of truth; the hook is just an earlier, faster checkpoint.
# Install: `pnpm exec lefthook install` (runs automatically via postinstall).

pre-commit:
  parallel: true
  jobs:
    - name: lint (staged)
      glob: '*.{ts,mts,cts,mjs}'
      exclude:
        - 'vendor/*/src/**'
      run: node_modules/.bin/eslint --fix {staged_files} && git add {staged_files}
      stage_fixed: true

    - name: typecheck
      glob: '*.ts'
      run: pnpm run typecheck

    - name: vendor manifest guard
      run: scripts/check-vendor-manifest.sh

pre-push:
  jobs:
    - name: full check
      run: pnpm run check:pre-push
