Repository navigation
Expand file tree
/
Copy pathpyproject.toml
More file actions
54 lines (51 loc) · 2.12 KB
/
Copy pathpyproject.toml
File metadata and controls
54 lines (51 loc) · 2.12 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
[tool.black]
line-length = 120
# Stays py312 (NOT py314). A py314 target makes black emit PEP 758
# unparenthesized `except A, B:`, a SyntaxError on any interpreter below
# 3.11 that imports the reformatted code.
#
# roles/npu-worker/tasks/main.yml (#13747) now targets python3.14, and
# openvino 2026.3.0, torch 2.13.0 and numpy 2.5.2 all ship cp314 wheels, so
# #10877's "OpenVINO has no 3.14 wheels" no longer holds. The Windows worker
# (autobot-npu-worker/resources/windows-npu-worker/) still pins
# onnxruntime-openvino, which has no cp314 and stays on its current
# interpreter — but it does not import autobot_shared at runtime (PyInstaller
# standalone, docs/developer/ARCHITECTURE_EXCEPTIONS.md #5438), so it does not
# gate this bump.
#
# What still gates it: #13747's config change is merged, but its AC requires
# the worker to be verified running 3.14 on real NPU hardware — a pip install
# or a syntax-check proves the config, not the runtime, and OpenVINO failures
# are native-extension failures that surface at import or first inference.
# Bump only once that host evidence lands on #13747, never on merge evidence
# alone (#13748).
# Audit: docs/audit/python_314_consistency.md
target-version = ["py312"]
[tool.isort]
profile = "black"
line_length = 120
src_paths = ["autobot-backend", "autobot_shared", "autobot-slm-backend"]
known_first_party = ["autobot_shared"]
[tool.mypy]
python_version = "3.14"
ignore_missing_imports = true
# Exclude test files — loose typing in tests is expected; this baseline
# mirrors the pre-existing state tracked in GH#7105.
exclude = [
".*_test\\.py$",
".*/tests/.*",
".*conftest\\.py$",
# code_analysis/ is a standalone analysis tool with its own setup.py;
# its src/ layout conflicts with the mypy module resolver. GH#7105.
"autobot-backend/code_analysis/.*",
]
# redis_client / workflow_memory / message_bus use a dual async/sync
# dispatch pattern whose overloads aren't modeled in type stubs.
# Fix tracked in GH#7105.
[[tool.mypy.overrides]]
module = [
"autobot_shared.redis_client",
"autobot_shared.workflow_memory",
"autobot_shared.message_bus",
]
ignore_errors = true