kwaak 0.11.2

Run a team of autonomous agents on your code, right from your terminal
Documentation
name: CI

on:
  pull_request:
  merge_group:
  push:
    branches:
      - master

env:
  CARGO_TERM_COLOR: always
  RUST_LOG: debug
  RUST_BACKTRACE: 1
  RUSTFLAGS: "-Dwarnings"
  TAVILY_API_KEY: noop
  KWAAK_OPENAI_API_KEY: noop
  KWAAK_GITHUB_TOKEN: noop

jobs:
  test:
    strategy:
      matrix:
        os: [ubuntu-latest] # Macos-latest does not properly support docker.
    name: Test
    runs-on: ${{ matrix.os }}
    timeout-minutes: 20
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - uses: dtolnay/rust-toolchain@stable
      - name: Install Protoc
        uses: arduino/setup-protoc@v3
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      # Required for copypasta builds on linux
      - name: Install deps
        if: ${{matrix.os == 'ubuntu-latest'}}
        run: sudo apt install libxcb1-dev libxcb-shape0-dev libxcb-xfixes0-dev ripgrep fd-find
      - name: Install deps
        if: ${{matrix.os == 'macos-latest'}}
        run: |
          brew update
          brew install ripgrep fd
      # Temporary fix until docker runs properly in ci
      - name: copy fdfind
        if: ${{matrix.os == 'ubuntu-latest'}}
        run: sudo cp /usr/bin/fdfind /usr/bin/fd
      - name: "Test"
        run: cargo test -j 2

  lint:
    name: Lint
    runs-on: ubuntu-latest
    timeout-minutes: 20
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - name: Install Protoc
        uses: arduino/setup-protoc@v3
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      # Required for copypasta builds on linux
      - name: Install libxcb
        run: sudo apt install libxcb1-dev libxcb-shape0-dev libxcb-xfixes0-dev
      - name: Check typos
        uses: crate-ci/typos@master
      - name: "Rustfmt"
        run: cargo fmt --all --check
      # - name: Lint dependencies
      #   uses: EmbarkStudios/cargo-deny-action@v2
      - name: clippy
        run: cargo clippy --all-targets --all-features