Skip to content

fix: harden agent lifecycle, failure tracking, and concurrency control #51

fix: harden agent lifecycle, failure tracking, and concurrency control

fix: harden agent lifecycle, failure tracking, and concurrency control #51

Workflow file for this run

name: ci
on:
push:
branches:
- main
- "codex/**"
pull_request:
workflow_dispatch:
permissions:
contents: read
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
checks:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- name: ubuntu-stable
os: ubuntu-latest
toolchain: stable
- name: ubuntu-msrv
os: ubuntu-latest
toolchain: 1.88.0
- name: macos-stable
os: macos-latest
toolchain: stable
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ matrix.toolchain }}
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
- name: Check formatting
run: cargo fmt --all --check
- name: Lint
run: cargo clippy --workspace --all-targets -- -D warnings
- name: Test
run: cargo test --workspace
hero-smoke:
name: hero-smoke
runs-on: ubuntu-latest
needs: checks
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
- uses: Swatinem/rust-cache@v2
- name: Hero P0 CLI smoke
run: cargo test -p crawfish-cli --test cli
openclaw-inbound:
name: openclaw-inbound
runs-on: ubuntu-latest
needs: checks
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
cache-dependency-path: integrations/openclaw-inbound/package-lock.json
- name: Install OpenClaw inbound bridge deps
run: npm ci --prefix integrations/openclaw-inbound
- name: Test OpenClaw inbound bridge
run: npm test --prefix integrations/openclaw-inbound