name: CI on: push: branches: [main] pull_request: branches: [main] jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Python 3.11 uses: actions/setup-python@v5 with: python-version: "3.11" - name: Install dependencies run: | pip install --upgrade pip pip install pytest pytest-asyncio pyyaml requests jinja2 pydantic fastapi httpx aiofiles - name: Check all Python files compile run: | python -m py_compile app.py python -m py_compile agents/coordinator.py python -m py_compile agents/stream.py python -m py_compile agents/judge.py python -m py_compile agents/adversarial_designer.py python -m py_compile agents/approval.py python -m py_compile agents/circuit_breaker.py python -m py_compile agents/correlator.py python -m py_compile agents/audit.py python -m py_compile config/runtime.py python -m py_compile bench/runner.py python -m py_compile scripts/release_gate.py python -m py_compile inference.py echo "All files compile OK" - name: Run chaos manifest validation tests run: pytest tests/test_chaos_manifests.py -v - name: Run safety guardrail unit tests run: pytest tests/test_approval.py tests/test_circuit_breaker.py tests/test_correlator.py tests/test_audit.py -v - name: Run tool + coordinator unit tests (mocked) run: pytest tests/test_tools.py tests/test_coordinator.py -v - name: Run app endpoint smoke tests (mocked) run: pytest tests/test_app_endpoints.py tests/test_bench_runner.py -v