name: Quality Gates on: push: pull_request: jobs: quality: runs-on: ubuntu-22.04 strategy: matrix: node-version: [20] steps: - uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 9.12.3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} cache: "pnpm" - name: Install dependencies run: pnpm install --frozen-lockfile - name: Run lint run: pnpm lint - name: Run typecheck run: pnpm exec tsc --noEmit --pretty false - name: Check diff hygiene run: git diff --check - name: Check tracked local artifacts shell: bash run: | if git ls-files | grep -E '(^|/)\.DS_Store$|\.swp$|\.env\.local$|^\.claude/|^migration-backup|^tsconfig\.tsbuildinfo$'; then echo "Tracked local artifacts found. Remove them from git tracking before merging." exit 1 fi