-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathprek.toml
More file actions
37 lines (33 loc) · 2.04 KB
/
prek.toml
File metadata and controls
37 lines (33 loc) · 2.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
[[repos]]
repo = "https://github.com/pre-commit/pre-commit-hooks"
rev = "v4.6.0"
hooks = [
{ id = "check-added-large-files" },
]
[[repos]]
repo = "local"
hooks = [
{ id = "lint-links", name = "Lint markdown links", entry = "make lint_links", language = "system", pass_filenames = false, always_run = true },
{ id = "make-fmt", name = "Run formatter (make fmt)", entry = "make fmt", language = "system", pass_filenames = false, always_run = true },
{ id = "ruff-check", name = "Run ruff linter", entry = "uv run ruff check", language = "system", pass_filenames = false, always_run = true },
{ id = "ruff-complexity", name = "Check cyclomatic complexity", entry = "uv run ruff check --select C901", language = "system", pass_filenames = false, always_run = true },
{ id = "ruff-tech-debt", name = "Check TODO/FIXME markers", entry = "uv run ruff check --select FIX", language = "system", pass_filenames = false, always_run = true },
{ id = "pylint-duplicate-code", name = "Detect duplicate code", entry = "uv run pylint --disable=all --enable=R0801 src common utils", language = "system", pass_filenames = false, always_run = true },
{ id = "ai-writing-check", name = "AI writing check", entry = "uv run python scripts/check_ai_writing.py", language = "system", pass_filenames = false, always_run = true },
{ id = "sync-agent-config", name = "sync Claude ↔ Codex skills & subagents; fail if drift was fixed", entry = "uv run scripts/sync_agent_config.py --check", language = "system", pass_filenames = false, always_run = true },
]
# ── Source-size guardrails (mirror GitHub Actions) ────────────────
[[repos]]
repo = "local"
[[repos.hooks]]
id = "check-large-files"
name = "fail if any source file exceeds the line-count error threshold"
language = "system"
entry = "scripts/check_large_files.sh"
files = "\\.(py)$"
[[repos.hooks]]
id = "check-folder-sizes"
name = "fail if any source folder exceeds the file-count error threshold"
language = "system"
entry = "scripts/check_folder_sizes.sh"
files = "\\.(py)$"