Skip to content

fix(skills): fingerprint the whole skill directory, not SKILL.md alone #23

fix(skills): fingerprint the whole skill directory, not SKILL.md alone

fix(skills): fingerprint the whole skill directory, not SKILL.md alone #23

name: claude-code tests
on:
pull_request:
paths:
- "claude-code/**"
- ".github/workflows/claude-code-tests.yml"
push:
branches: [main]
paths:
- "claude-code/**"
- ".github/workflows/claude-code-tests.yml"
permissions:
contents: read
jobs:
# The SessionStart hook and drift check must work with the standard library
# alone. This job installs no crypto packages, so the signing tests skip and
# any accidental dependency on them fails the build.
stdlib:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "3.12"
- name: Run stdlib-only tests (no crypto packages)
working-directory: claude-code
run: |
pip install pytest
python -m pytest tests -q
# Full suite including the signing / verification tests, which need the crypto
# packages from requirements.txt.
signing:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: ${{ matrix.python-version }}
- name: Run full suite (with crypto packages)
working-directory: claude-code
run: |
pip install pytest -r requirements.txt
python -m pytest tests -q