name: CI on: pull_request: jobs: test: runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, windows-latest] timeout-minutes: 10 steps: - name: Checkout repository uses: actions/checkout@v4 - name: Setup Bun uses: oven-sh/setup-bun@v2 with: bun-version: latest - name: Cache Bun dependencies uses: actions/cache@v4 with: path: ~/.bun/install/cache key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lock') }} restore-keys: | ${{ runner.os }}-bun- - name: Install dependencies run: bun install - name: Install OpenCode CLI run: | bun install -g opencode-ai echo "$HOME/.bun/bin" >> $GITHUB_PATH shell: bash - name: Verify OpenCode installation run: | export PATH="$HOME/.bun/bin:$PATH" opencode --version shell: bash - name: Type check run: bun run tsc -noEmit -skipLibCheck - name: Build plugin run: bun run build - name: Run tests run: bun test