name: deepseek-plugin checks # On PRs this is invoked by ci-gate.yml (the single required check); # push-to-main and manual runs remain standalone. on: workflow_dispatch: push: branches: [main] paths: - 'integrations/deepseek-plugin/**' - 'integrations/agent-plugin-core/typescript/**' - '.github/workflows/deepseek-plugin-checks.yml' workflow_call: jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 9 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 20 cache: 'pnpm' cache-dependency-path: integrations/deepseek-plugin/pnpm-lock.yaml - name: Install dependencies run: cd integrations/deepseek-plugin && pnpm install --frozen-lockfile - name: Type check run: cd integrations/deepseek-plugin && pnpm exec tsc --noEmit test: runs-on: ubuntu-latest strategy: matrix: node-version: [20, 22] steps: - uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 9 - name: Setup Node.js ${{ matrix.node-version }} uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} cache: 'pnpm' cache-dependency-path: integrations/deepseek-plugin/pnpm-lock.yaml - name: Install dependencies run: cd integrations/deepseek-plugin && pnpm install --frozen-lockfile - name: Run tests run: cd integrations/deepseek-plugin && pnpm exec vitest run build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 9 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: 20 cache: 'pnpm' cache-dependency-path: integrations/deepseek-plugin/pnpm-lock.yaml - name: Install dependencies run: cd integrations/deepseek-plugin && pnpm install --frozen-lockfile - name: Build run: cd integrations/deepseek-plugin && pnpm build - name: Verify package artifact run: python3 integrations/agent-plugin-core/conformance/artifacts.py deepseek