Expand description
pre-commit-ruff and pre-commit-pyright — the two Python hooks.
Both are scoped: they only fire when the repo opts in (a ruff/pyright config
or the matching [tool.*] table), so a JS repo never pulls a Python tool.
Both prefer the repo’s PINNED tool over an ambient latest, in the same order
the shell versions established: uv run --no-sync (the lockfile-pinned one
CI runs) → the worktree’s .venv → the MAIN worktree’s .venv (a linked
worktree has none of its own) → PATH → uvx (unpinned LATEST, with a warning,
because it flags issues the CI-pinned version does not — phantom failures).
Constants§
- EXTS
- The extensions both Python checks consume. Exported so
registry.rsdeclares the scope from the same constant — seelint_json_yaml::EXTSfor the drift this prevents.