name: Docs Site Checks on: workflow_call: permissions: contents: read jobs: docs-site-checks: runs-on: arc-runner-set timeout-minutes: 20 steps: - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 with: node-version: 22 - uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 id: npm-cache with: path: website/node_modules # node22: native builds + engine checks are node-major-specific; # keep the key in sync with setup-node's node-version above. key: node-modules-cache-node22-${{ hashFiles('website/package-lock.json') }} - name: Install website dependencies uses: ./.github/actions/retry with: command: npm ci working-directory: website if: steps.npm-cache.outputs.cache-hit != 'true' - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 with: python-version: '3.11' - name: Install ascii-guard uses: ./.github/actions/retry with: command: python3 -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: Regenerate per-skill docs pages + catalogs run: python3 website/scripts/generate-skill-docs.py - name: Lint docs diagrams run: npm run lint:diagrams working-directory: website - name: Build Docusaurus uses: ./.github/actions/profile with: label: docs-site-build working-directory: website command: npm run build