Skip to content

feat: declare weaver-spec v0.1.0 compatibility + add conformance CI stub #111

feat: declare weaver-spec v0.1.0 compatibility + add conformance CI stub

feat: declare weaver-spec v0.1.0 compatibility + add conformance CI stub #111

Workflow file for this run

name: CI
on:
push:
branches: ["main", "copilot/**"]
pull_request:
branches: ["main"]
workflow_call:
jobs:
test:
name: "Python ${{ matrix.python-version }}"
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: pip install -e ".[dev]"
- name: Lint (ruff check)
run: ruff check src/ tests/ examples/
- name: Format check (ruff format)
run: ruff format --check src/ tests/ examples/
- name: Type check (mypy)
run: mypy src/
- name: Test (pytest)
run: python -m pytest -q --cov=agent_kernel --cov-report=term-missing
- name: Examples
run: |
python examples/basic_cli.py
python examples/billing_demo.py
python examples/http_driver_demo.py
conformance:
name: "Weaver Spec Conformance (v0.1.0)"
runs-on: ubuntu-latest
needs: test
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install dependencies
run: pip install -e ".[dev]"
# Placeholder: activate once dgenio/weaver-spec#4 ships the conformance suite.
# Replace this step with:
# pip install weaver-contracts
# python -m weaver_contracts.conformance --target agent_kernel
- name: weaver-spec conformance suite (stub)
run: |
echo "weaver-spec conformance suite not yet published (dgenio/weaver-spec#4)."
echo "Stub passes. Activate when weaver_contracts.conformance is available."