name: CI — Test & Build on: push: branches: [main, develop] pull_request: branches: [main] jobs: test: name: Unit Tests runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '22' cache: 'npm' - name: Install dependencies run: npm ci - name: Type check run: npm run typecheck - name: Run unit tests run: npm test build: name: Build Extension runs-on: ubuntu-latest needs: test steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '22' cache: 'npm' - name: Install dependencies run: npm ci - name: Build extension run: npm run build - name: Upload build artifact uses: actions/upload-artifact@v4 with: name: lexai-chrome-mv3-${{ github.sha }} path: .output/chrome-mv3/ retention-days: 7