mirror of
https://github.com/usestrix/strix.git
synced 2026-08-24 20:02:39 +02:00
The versions in .pre-commit-config.yaml are stricter than the ones uv resolves, so these were invisible to `make lint`: - ruff 0.11.13 reports N802 for `ast.NodeVisitor`'s `visit_*` methods; 0.15.20 exempts them. The names are dispatch keys and cannot be lowercased, so add the per-file ignore next to the existing stdlib-handler precedent. - mypy 1.17.1 does not narrow `str` to `SafetyMode` through a membership test against the tuple. Return the matched element instead. - bandit does not read `# noqa`; pair it with `# nosec` as the other 33 sites do. The trailing-whitespace hook rewrites the built viewer bundle, stripping a space and a tab that are content inside a highlight.js character class. Exclude the generated assets rather than let a hook corrupt shipped JS. Upstream removed every "Strix" literal from model-facing text; this branch predated that and reintroduced one in the prompt template and one as an agent name. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
68 lines
1.7 KiB
YAML
68 lines
1.7 KiB
YAML
repos:
|
|
# Ruff for fast linting and formatting
|
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
rev: v0.11.13
|
|
hooks:
|
|
- id: ruff
|
|
args: [--fix, --exit-non-zero-on-fix]
|
|
name: ruff-lint
|
|
- id: ruff-format
|
|
name: ruff-format
|
|
|
|
# MyPy for static type checking
|
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
rev: v1.17.1
|
|
hooks:
|
|
- id: mypy
|
|
additional_dependencies: [
|
|
types-requests,
|
|
types-python-dateutil,
|
|
pydantic,
|
|
fastapi,
|
|
pytest,
|
|
hatchling,
|
|
"openai-agents[litellm]>=0.19.0,<0.20",
|
|
]
|
|
args: [--install-types, --non-interactive]
|
|
|
|
# Built-in hooks for basic file checks
|
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
rev: v5.0.0
|
|
exclude: ^strix/interface/viewer/static/
|
|
hooks:
|
|
- id: trailing-whitespace
|
|
- id: end-of-file-fixer
|
|
- id: check-toml
|
|
- id: check-merge-conflict
|
|
- id: check-added-large-files
|
|
args: ['--maxkb=1024']
|
|
- id: debug-statements
|
|
- id: check-case-conflict
|
|
- id: check-docstring-first
|
|
|
|
# Security checks with bandit
|
|
- repo: https://github.com/PyCQA/bandit
|
|
rev: 1.8.3
|
|
hooks:
|
|
- id: bandit
|
|
args: [-c, pyproject.toml]
|
|
|
|
# Additional Python code quality checks
|
|
- repo: https://github.com/asottile/pyupgrade
|
|
rev: v3.21.2
|
|
hooks:
|
|
- id: pyupgrade
|
|
args: [--py312-plus]
|
|
|
|
ci:
|
|
autofix_commit_msg: |
|
|
[pre-commit.ci] auto fixes from pre-commit.com hooks
|
|
|
|
for more information, see https://pre-commit.ci
|
|
autofix_prs: true
|
|
autoupdate_branch: ""
|
|
autoupdate_commit_msg: "[pre-commit.ci] pre-commit autoupdate"
|
|
autoupdate_schedule: weekly
|
|
skip: []
|
|
submodules: false
|