name: Docs Site Checks

on:
  pull_request:
    paths:
      - 'website/**'
      - '.github/workflows/docs-site-checks.yml'
  workflow_dispatch:

jobs:
  docs-site-checks:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: npm
          cache-dependency-path: website/package-lock.json

      - name: Install website dependencies
        run: npm ci
        working-directory: website

      - uses: actions/setup-python@v5
        with:
          python-version: '3.11'

      - name: Install ascii-guard
        run: python -m pip install ascii-guard==2.3.0 pyyaml==6.0.3

      - name: Extract skill metadata for dashboard
        run: python3 website/scripts/extract-skills.py

      - name: Lint docs diagrams
        run: npm run lint:diagrams
        working-directory: website

      - name: Build Docusaurus
        run: npm run build
        working-directory: website
