Rename hanzo-repl → hanzo-dev to match @hanzo/dev (Rust/TS). New packages: - hanzo-lsp: async LSP client (diagnostics, go-to-def, references, context enrichment) - hanzo-hooks: pre/post tool use hooks (shell scripts, exit-code deny) - hanzo-sandbox: container detection, filesystem isolation, Linux unshare hanzo-dev TUI: - Vim keybindings (Normal/Insert/Visual/Command modes, 37 tests) - Git slash commands (/branch /commit /worktree /diff /stash, 13 tests) - All slash commands at parity: /model /permissions /clear /resume /memory /init /export /session /plan /solve /code /auto /fast /remote-control - Multi-provider auth: Anthropic OAuth, OpenAI device code, Hanzo PKCE, auto-detect Auth: - login_with_anthropic() — PKCE via console.hanzo.ai - login_with_openai() — device code flow via auth.openai.com - login_auto() — env var detection + saved credential fallback - OAuthCredentialStore supports provider keys (hanzo/anthropic/openai) Parity test suite (38 tests): SSE, MCP normalization, permissions, compaction, token usage, PKCE RFC vector, config, backoff, session roundtrip, hooks. 348 tests total, 0 failures across Python + Rust + Universe E2E.
68 lines
1.5 KiB
INI
68 lines
1.5 KiB
INI
[mypy]
|
|
pretty = True
|
|
show_error_codes = True
|
|
|
|
# Exclude non-SDK code and subpackages (they have their own CI/linting)
|
|
exclude = ^(pkg/hanzoai/_files\.py|_dev/.*\.py|tests/.*|bin/.*|examples/.*|scripts/.*|pkg/hanzo/|pkg/hanzo-aci/|pkg/hanzo-agent/|pkg/hanzo-mcp/|pkg/hanzo-memory/|pkg/hanzo-network/|pkg/hanzo-dev-py/)
|
|
|
|
strict_equality = True
|
|
implicit_reexport = True
|
|
no_implicit_optional = True
|
|
|
|
warn_unreachable = True
|
|
warn_unused_configs = True
|
|
|
|
# Relax strict typing for SDK with many optional dependencies
|
|
check_untyped_defs = False
|
|
disallow_any_generics = False
|
|
disallow_untyped_defs = False
|
|
disallow_untyped_calls = False
|
|
disallow_subclassing_any = False
|
|
disallow_incomplete_defs = False
|
|
disallow_untyped_decorators = False
|
|
warn_return_any = False
|
|
warn_unused_ignores = False
|
|
warn_redundant_casts = False
|
|
ignore_missing_imports = True
|
|
|
|
cache_fine_grained = True
|
|
|
|
# Disable common error codes for SDK compatibility
|
|
disable_error_code = func-returns-value,overload-cannot-match
|
|
|
|
# https://github.com/python/mypy/issues/12162
|
|
[mypy.overrides]
|
|
module = "black.files.*"
|
|
ignore_errors = true
|
|
ignore_missing_imports = true
|
|
|
|
[mypy-hanzoai.grpo.*]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai.llm_client]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai.agents]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai.mcp]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai.cluster]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai._client]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai._base_client]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai._models]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai.auth]
|
|
ignore_errors = true
|
|
|
|
[mypy-hanzoai._utils.*]
|
|
ignore_errors = true
|