fix(skills): 4 more skills return content inline on MCP transport #404
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| smoke: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.13" | |
| - name: Install deps | |
| run: | | |
| python -m pip install --upgrade pip | |
| # Runtime deps the full suite needs to import codec_dashboard / | |
| # routes/* / codec_voice without ModuleNotFoundError on the Ubuntu | |
| # runner. pynput stays in the list, but the conftest installs a | |
| # stub when its real import fails (headless Linux has no X11). | |
| pip install pytest fastmcp httpx requests pynput pydantic ruff \ | |
| fastapi numpy | |
| - name: Lint (ruff) — F-4 gate, config in ruff.toml | |
| run: ruff check . | |
| - name: Skill import smoke (standalone script, not a pytest module) | |
| run: python tests/test_skill_imports.py | |
| - name: Trusted-skill manifest is current (D-1 gate) | |
| run: python tools/generate_skill_manifest.py --check | |
| - name: Run full pytest suite | |
| # Closes audit F-3: CI used to run 23 of 134 test files, leaving | |
| # the Wave-1+2 hardening tests (D-7/D-9/D-12/D-13/D-18/D-19/D-21/D-22) | |
| # unprotected on PRs. `pytest tests/` runs every test file at once. | |
| # tests/test_ci_coverage_invariant.py guards this configuration | |
| # against future drift. | |
| run: | | |
| python -m pytest tests/ \ | |
| --tb=short \ | |
| --strict-markers \ | |
| --strict-config \ | |
| -ra | |
| env: | |
| CI: "true" |