ares-server 0.10.1

ARES agent server with multi-provider LLM support, tool calling, RAG, and MCP integration
Documentation
name: CI

on:
  push:
    branches: [main, develop, holy]
  pull_request:
    branches: [main, develop, holy]

env:
  CARGO_TERM_COLOR: always

jobs:
  crap:
    name: CRAP Score Gate
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2
      - name: Install cargo-crap
        run: cargo install cargo-crap
      - name: Run CRAP check
        run: cargo crap --workspace --format json --threshold 30 --fail-above
  headless:
    name: Headless Facade Gate
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2
      - name: Check headless library build
        run: cargo check -p ares-server --lib --no-default-features --features openai
      - name: Check headless example (facade completeness)
        run: cargo check -p ares-server --example headless --no-default-features --features openai
      - name: Assert headless dependency tree
        run: |
          if cargo tree -p ares-server -e normal --no-default-features --features openai --prefix none \
            | grep -E '^(axum|ares-http|clap|tower-sessions|tower_governor|boa_engine|rhai|ollama-rs|sqlx|ares-mcp|rmcp|argon2|jsonwebtoken)( |$)'; then
            echo "::error::headless build pulled a web/CLI/script dependency into the tree"
            exit 1
          fi