repos: - repo: local hooks: - id: validate-commit-msg name: validate commit message entry: env PYTHONPATH=src .venv/bin/python3 -m devx.ci.validate_commit_msg language: system stages: [commit-msg] pass_filenames: true - id: lint-ruff name: ruff lint entry: make lint-ruff language: system types: [python] pass_filenames: false stages: [pre-commit] - id: lint-format name: ruff format check entry: make lint-format language: system types: [python] pass_filenames: false stages: [pre-commit] - id: typecheck name: pyright type check entry: make typecheck language: system types: [python] pass_filenames: false stages: [pre-commit] - id: lint-bandit name: bandit security scan entry: make lint-bandit language: system types: [python] pass_filenames: false stages: [pre-commit] - id: workflow-lint name: actionlint (workflow YAML) entry: make workflow-lint language: system files: ^\.gitea/workflows/ types: [yaml] pass_filenames: false stages: [pre-commit] - id: pytest-cov name: pytest with 100% coverage entry: make pytest-cov language: system types: [python] pass_filenames: false stages: [pre-push] - id: commit-msg name: validate commit message entry: env PYTHONPATH=src .venv/bin/python3 -m devx.ci.validate_commit_msg language: system stages: [commit-msg] pass_filenames: true