a3s 0.7.3

a3s — A3S coding agent CLI; `a3s code` launches the interactive TUI
name: CI
on:
  push: { branches: [main] }
  pull_request: { branches: [main] }
jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Prepare A3S workspace crates
        run: bash .github/scripts/checkout-a3s-workspace.sh
      - uses: dtolnay/rust-toolchain@stable
        with: { components: "rustfmt, clippy" }
      - run: cargo fmt --all -- --check
      - run: cargo clippy --all-targets -- -D warnings
      - run: cargo test --all-targets
      - run: cargo build --release

  # Validate the TUI compiles for Windows + macOS so all three desktop
  # platforms can run `a3s code` (Linux is covered by `check` above).
  cross:
    strategy:
      fail-fast: false
      matrix:
        os: [windows-latest, macos-latest]
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v4
      - name: Prepare A3S workspace crates
        shell: bash
        run: bash .github/scripts/checkout-a3s-workspace.sh
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo build --release