# mypy.ini - Relaxed type checking for validation
# Use this for normal validation that ignores non-critical type errors
# For strict type checking showing all errors, use: uv run mypy --config-file pyproject.toml

[mypy]
python_version = 3.10
namespace_packages = True
explicit_package_bases = True
mypy_path = packages/common/src:packages/config/src:packages/data/src:packages/kv/src:packages/structures/src:packages/utils/src:packages/xization/src:packages/fsm/src
cache_dir = .mypy_cache
incremental = True

# Relaxed settings for validation
warn_return_any = False
warn_unused_configs = True
disallow_untyped_defs = False
disallow_incomplete_defs = False
check_untyped_defs = True
disallow_untyped_decorators = False
no_implicit_optional = True
warn_redundant_casts = True
warn_unused_ignores = False
warn_no_return = False
warn_unreachable = False
strict_equality = True

# Ignore missing imports for third-party packages
[mypy-nltk.*]
ignore_missing_imports = True

[mypy-graphviz.*]
ignore_missing_imports = True

[mypy-pyparsing.*]
ignore_missing_imports = True

[mypy-json_stream.*]
ignore_missing_imports = True

[mypy-sklearn.*]
ignore_missing_imports = True

[mypy-python_nmap.*]
ignore_missing_imports = True

[mypy-more_itertools.*]
ignore_missing_imports = True

[mypy-flask.*]
ignore_missing_imports = True

[mypy-asyncpg.*]
ignore_missing_imports = True

[mypy-aioboto3.*]
ignore_missing_imports = True

[mypy-pandas.*]
ignore_missing_imports = True

[mypy-pandas.api.types.*]
ignore_missing_imports = True

[mypy-faiss.*]
ignore_missing_imports = True

[mypy-chromadb.*]
ignore_missing_imports = True

[mypy-chromadb.config.*]
ignore_missing_imports = True

[mypy-chromadb.utils.*]
ignore_missing_imports = True

[mypy-numpy.*]
ignore_missing_imports = True

[mypy-lark.*]
ignore_missing_imports = True
