-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTaskfile.yml
More file actions
111 lines (92 loc) · 2.92 KB
/
Copy pathTaskfile.yml
File metadata and controls
111 lines (92 loc) · 2.92 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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
version: '3'
silent: true
vars:
PYTHON:
sh: |
if [ -x .venv/bin/python ]; then
echo .venv/bin/python
elif command -v python3.12 >/dev/null 2>&1; then
echo python3.12
else
echo python3
fi
tasks:
default:
desc: List available tasks
cmds:
- task --list
build:
desc: Build Docker images
cmds:
- docker compose build
up:
desc: Start services in background
cmds:
- docker compose up -d
down:
desc: Stop and remove containers
cmds:
- docker compose down
restart:
desc: Restart services
deps: [down, up]
logs:
desc: Tail service logs
cmds:
- docker compose logs -f
python:check:
desc: Ensure the local interpreter matches production Python
cmds:
- "{{.PYTHON}} scripts/check-python-version.py"
lint:
desc: Run Ruff lint checks
cmds:
- task python:check
- "{{.PYTHON}} -m ruff check ."
unit-test:
desc: Run unit tests
cmds:
- task python:check
- "PYTHONPATH=. {{.PYTHON}} -m pytest tests/test_capacity.py tests/test_unit.py tests/test_worker_fallback.py tests/test_supporting_components.py tests/test_tool_context.py tests/test_remediation.py tests/test_worker_approval_resume.py tests/test_transcript_contract.py tests/test_react_transcript.py tests/test_keyless_eval_manifest.py"
keyless-eval:
desc: Measure provider-native agent scenarios without credentials or TCP connections
cmds:
- task python:check
- "PYTHONPATH=. {{.PYTHON}} scripts/run-keyless-evals.py"
contracts:check:
desc: Run contract documentation checks
cmds:
- task python:check
- "{{.PYTHON}} scripts/check-contracts.py"
harness:check:
desc: Run harness documentation checks
cmds:
- task python:check
- "{{.PYTHON}} scripts/check-harness.py"
contract-test:
desc: Compatibility alias for contracts:check
cmds:
- task contracts:check
harness-test:
desc: Compatibility alias for harness:check
cmds:
- task harness:check
validate:
desc: Run canonical local validation
cmds:
- task lint
- task unit-test
- task contracts:check
- task harness:check
- task keyless-eval
test:
desc: Run integration tests inside execution-engine container
cmds:
- docker compose exec -e EE_URL=http://127.0.0.1:8080 -e ORCH_URL=http://orchestrator:8000 execution-engine pytest tests/test_integration.py
clean:
desc: Remove docker artifacts and local Python cache/log files
cmds:
- docker compose down -v --remove-orphans
- python -c "import pathlib, shutil; [shutil.rmtree(p, ignore_errors=True) for p in pathlib.Path('.').rglob('__pycache__')]"
- python -c "import pathlib; [p.unlink() for p in pathlib.Path('.').rglob('*.pyc') if p.is_file()]"
- python -c "import pathlib; [p.unlink() for p in pathlib.Path('.').glob('*.log') if p.is_file()]"