Skip to content

ci: gate development with four python type checkers - #8

Merged
egparedes merged 1 commit into
mainfrom
plan-multi-checker-type-workflows
Oct 7, 2026
Merged

egparedes merged 1 commit into
mainfrom
plan-multi-checker-type-workflows

Conversation

@egparedes

@egparedes egparedes commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Add Pyright, Zuban, and Pyrefly alongside strict mypy as blocking gates through Make, pre-commit, CI, and releases. Mypy/Pyright check source; Zuban/Pyrefly also check maintained tests, excluding compiler input data, generated goldens, and optional JAX/PyTorch compilation tests.

Static checks run once on Python 3.12; tests, coverage, and smoke checks retain the Python 3.12–3.14 matrix. Checker commands use locked uv tools and the active interpreter, including alternate Python environments and hidden worktree paths. Resolve existing typing diagnostics with explicit annotations and test-only metadata boundaries; preserve public interfaces and generated goldens.

Validation:

  • make check: 876 passed, 94 skipped, 96% coverage.
  • All four checkers on Python 3.13 and at declared dependency floors; all four pre-commit hooks.
  • Fourteen deliberate source/test error scenarios verify blocking behavior and scope.
  • make lowest, make docs, five fuzz seeds, and 93 JAX/PyTorch compilation tests.
  • Independent semantics review: 718 comparisons against HEAD found no introduced regressions. The pre-existing arithmetic/loop failures are fixed independently in fix: preserve integer arithmetic and loop dtype semantics #9.

@egparedes
egparedes merged commit 3862eaf into main Oct 7, 2026
9 checks passed
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