Commit Graph
4 Commits
Author SHA1 Message Date
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 84edaf7a0b fix(ci): keep epub test edit out to respect eval-coverage ratchet
Revert the epub/scripts/test_epub_skill.sh edit from 0dc4b6c so the epub
skill is not "modified" for the eval-coverage ratchet (epub has no
schema-valid eval manifest). The pinned-dependency wiring stays: the epub
suite still runs its 45 assertions in CI, with epub-edit/epub-convert
skipped on the Python 3.12 runner because epublib requires Python 3.13+.
The registry comment now documents that skip instead of claiming the suite
surfaces it.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 23:49:08 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 0dc4b6c5dc fix(ci): pin epub test deps and surface epublib skip
Pin the epub skill's test-only dependencies (EbookLib, beautifulsoup4) with
exact versions in requirements-epub-test.txt and install from that file in
CI, instead of unpinned package names. The file is test-only and notes that
EbookLib is AGPL; requirements-dev.txt is untouched.

Also surface the epublib skip in epub/scripts/test_epub_skill.sh: when
epublib is not importable (it requires Python 3.13+), epub-edit and
epub-convert now print an explicit SKIPPED line and count as SKIP in the
summary instead of silently passing.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 23:42:25 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> b24f8a8d98 ci(validate): run epub skill tests with their dependencies
Install the epub skill's documented test dependencies (EbookLib and
beautifulsoup4) on the runner just before the shell-test step, and move
epub/scripts/test_epub_skill.sh from the manual registry into the run
registry. EbookLib is AGPL-licensed, so the install step is named and
scoped as test-only and does not touch requirements-dev.txt.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 23:22:29 -04:00
Magnus Hedemarkandfactory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com> 837a329531 ci(validate): run skill shell tests and add coverage guardrail
Add scripts/check-skill-tests.py as the single source of truth for
skill-local shell tests. --run executes the registered shell tests in CI;
--check (default) fails on any unregistered skill test file, stale registry
entry, or registry inconsistency, so new un-run shell tests cannot slip in.
Register the 9 deterministic shell suites as run entries and the 4 suites
that need network, credentials, or third-party libraries not installed by
CI as manual entries.

Wire both modes into validate.yml right after the skill-local pytest step
and run the new guardrail tests in the existing pytest invocations.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-08-14 22:41:53 -04:00