-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTaskfile.guards.yml
More file actions
90 lines (77 loc) · 1.91 KB
/
Copy pathTaskfile.guards.yml
File metadata and controls
90 lines (77 loc) · 1.91 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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# Taskfile.yml — sumd with automatic venv verification
# https://taskfile.dev
version: "3"
vars:
APP_NAME: sumd
DOQL_OUTPUT: app.doql.less
DOQL_CMD: "{{if eq OS \"windows\"}}doql.exe{{else}}doql{{end}}"
VENV_PY: "{{.PWD}}/.venv/bin/python"
VENV_PIP: "{{.PWD}}/.venv/bin/pip"
# Internal tasks for verification (prefix with _)
tasks:
_verify-venv:
internal: true
cmds:
- |
if [ ! -f "{{.VENV_PY}}" ]; then
echo "❌ venv not found. Run: ./scripts/bootstrap.sh"
exit 1
fi
silent: true
_verify-deps:
internal: true
deps: [_verify-venv]
cmds:
- |
if ! {{.VENV_PY}} -c "import pyqual" 2>/dev/null; then
echo "❌ pyqual not installed. Run: task install"
exit 1
fi
silent: true
# All public tasks depend on verification
install:
desc: Install Python dependencies (editable)
cmds:
- "{{.VENV_PIP}} install -e .[dev]"
quality:
desc: Run pyqual quality pipeline
deps: [_verify-deps]
cmds:
- "{{.VENV_PY}} -m pyqual run"
quality:fix:
desc: Run pyqual with auto-fix
deps: [_verify-deps]
cmds:
- "{{.VENV_PY}} -m pyqual run --fix"
test:
desc: Run pytest suite
deps: [_verify-venv]
cmds:
- "{{.VENV_PY}} -m pytest -q"
lint:
desc: Run ruff lint check
deps: [_verify-venv]
cmds:
- "{{.VENV_PY}} -m ruff check ."
fmt:
desc: Auto-format with ruff
deps: [_verify-venv]
cmds:
- "{{.VENV_PY}} -m ruff format ."
sumd:
desc: Generate SUMD.md
deps: [_verify-venv]
cmds:
- "{{.VENV_PY}} -m sumd.cli scan ."
sumr:
desc: Generate SUMR.md
deps: [_verify-venv]
cmds:
- "{{.VENV_PY}} -m sumd.cli scan . --profile refactor"
check:
desc: Full pre-commit check (lint + test + quality)
deps: [_verify-deps]
cmds:
- task: lint
- task: test
- task: quality