Thanks to visit codestin.com
Credit goes to github.com

Skip to content

ci: first PR CI — pytest matrix on Python 3.11–3.14#7

Merged
luisleo526 merged 4 commits into
mainfrom
feat/ci-test-matrix
Jun 16, 2026
Merged

ci: first PR CI — pytest matrix on Python 3.11–3.14#7
luisleo526 merged 4 commits into
mainfrom
feat/ci-test-matrix

Conversation

@luisleo526

Copy link
Copy Markdown
Contributor

Summary

Phase 1 of the Pyodide-target conformance flow (spec: docs/superpowers/specs/2026-06-16-pyodide-conformance-flow-design.md, §5). Gives the repo its first push/PR CI so Python-version/typing regressions are caught at the source instead of in the browser (the transpiler runs client-side via Pyodide → CPython 3.14).

  • .github/workflows/test.ymlpytest matrix on CPython 3.11–3.14, fail-fast: false, PYTHONHASHSEED=0, SHA-pinned actions (matching release.yml), least-privilege permissions, concurrency cancel.
  • tests/test_import_all.py — floor-guard: imports every pineforge_codegen submodule. Uses an onerror callback so a broken sub-package __init__ surfaces (not silently skipped) and a min-count guard against a vacuous pass. On the 3.11 leg this catches 3.12+ syntax in modules no other test imports.
  • pyproject.toml — declare Python 3.14 support (classifier); fix a stale deploy-worker.ymlrelease.yml comment.

Engine-dependent compile tests skip on CI (no engine checkout / Eigen / compiler env) — verified via the have_compile_env() skip logic.

Test plan

  • test.yml runs green across 3.11 / 3.12 / 3.13 / 3.14 on this PR (the first real run — proves 3.11/3.12, unavailable locally).
  • Local: full suite 968 passed / 1 skipped on 3.13 and 3.14 (compile tests excluded — they skip on runners; the same compile cases also fail on main locally, i.e. pre-existing env artifact, not introduced here).

🤖 Generated with Claude Code

@luisleo526 luisleo526 merged commit 0877eb4 into main Jun 16, 2026
8 checks passed
@luisleo526 luisleo526 deleted the feat/ci-test-matrix branch June 16, 2026 02:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant