name: plugin-skills-check on: push: branches: [main] paths: - "packages/*/skills/**" - "skills/runtime/**" - "skills/react-core/**" - "skills/a2ui-renderer/**" - "scripts/sync-plugin-skills.ts" - "scripts/__tests__/sync-plugin-skills.test.ts" - ".claude-plugin/**" - ".github/workflows/plugin-skills-check.yml" # The plugin version pins to packages/runtime/package.json, so a release # bump there must re-trigger the drift check or the pin silently rots. - "packages/runtime/package.json" pull_request: paths: - "packages/*/skills/**" - "skills/runtime/**" - "skills/react-core/**" - "skills/a2ui-renderer/**" - "scripts/sync-plugin-skills.ts" - "scripts/__tests__/sync-plugin-skills.test.ts" - ".claude-plugin/**" - ".github/workflows/plugin-skills-check.yml" - "packages/runtime/package.json" permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: check: runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7 with: persist-credentials: false - uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9 - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 20 cache: pnpm - run: pnpm install --frozen-lockfile - name: Run sync script unit tests run: pnpm exec vitest run scripts/__tests__/sync-plugin-skills.test.ts - name: Check plugin skill mirror is in sync run: pnpm check:plugin-skills