Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
78 lines (70 loc) · 2.8 KB
/
Copy pathpyproject.toml
File metadata and controls
78 lines (70 loc) · 2.8 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
[project]
name = "nightshift-workspace"
version = "1.3.0"
description = "Night Shift autonomous fix daemon"
requires-python = ">=3.12"
dependencies = [
"nightshift>=1.3.0",
]
[dependency-groups]
dev = [
"pytest>=9.0",
"pytest-asyncio>=1.0",
"hypothesis>=6.0",
"ruff>=0.15",
"mypy>=1.20",
"types-pyyaml>=6.0",
"pytest-xdist>=3.8.0",
"pytest-timeout>=2.4.0",
"pytest-cov>=7.1.0",
]
[tool.pytest.ini_options]
testpaths = ["packages/afcore/tests", "packages/nightshift/tests"]
pythonpath = ["packages/afcore"]
asyncio_mode = "auto"
addopts = "-n auto --dist=loadfile --timeout=15 -m 'not smoke' --import-mode=importlib"
markers = [
"property: Hypothesis property-based test",
"slow: tests that take >1s (property, integration, orchestrator); excluded by test-fast",
"smoke: End-to-end smoke test (slow, runs full suite as subprocess)",
"integration: Integration test requiring multiple workspace packages",
]
[tool.uv.workspace]
members = ["packages/afcore", "packages/nightshift"]
[tool.uv.sources]
afaudit = { git = "https://github.com/agent-fox-dev/af-python", subdirectory = "packages/afaudit" }
afissues = { git = "https://github.com/agent-fox-dev/af-python", subdirectory = "packages/afissues" }
afhub = { git = "https://github.com/agent-fox-dev/af-python", subdirectory = "packages/afhub" }
afcore = { workspace = true }
nightshift = { workspace = true }
[tool.ruff]
target-version = "py312"
line-length = 120
exclude = [".claude/worktrees"]
[tool.ruff.lint]
select = ["E", "F", "W", "I", "UP", "TID251"]
[tool.ruff.lint.flake8-tidy-imports.banned-api]
"afcore.knowledge.embeddings".msg = "Removed in spec 114"
"afcore.knowledge.search".msg = "Removed in spec 114"
"afcore.knowledge.retrieval".msg = "Removed in spec 114"
"afcore.knowledge.causal".msg = "Removed in spec 114"
"afcore.knowledge.lifecycle".msg = "Removed in spec 114"
"afcore.knowledge.contradiction".msg = "Removed in spec 114"
"afcore.knowledge.consolidation".msg = "Removed in spec 114"
"afcore.knowledge.compaction".msg = "Removed in spec 114"
"afcore.knowledge.entity_linker".msg = "Removed in spec 114"
"afcore.knowledge.entity_query".msg = "Removed in spec 114"
"afcore.knowledge.entity_store".msg = "Removed in spec 114"
"afcore.knowledge.entities".msg = "Removed in spec 114"
"afcore.knowledge.static_analysis".msg = "Removed in spec 114"
"afcore.knowledge.sleep_compute".msg = "Removed in spec 114"
"afcore.knowledge.rendering".msg = "Removed in spec 114"
"afcore.knowledge.store".msg = "Removed in spec 114"
"afcore.knowledge.facts".msg = "Removed in spec 114"
"afcore.knowledge.ingest".msg = "Removed in spec 114"
"afcore.knowledge.onboard".msg = "Removed in spec 114"
"afcore.engine.knowledge_harvest".msg = "Removed in spec 114"
[tool.mypy]
python_version = "3.12"
check_untyped_defs = true
exclude = [".claude/worktrees"]