Skip to content

ci(mypy): wire mypy into code-quality CI — enforce on autobot_shared (GH#7105) - #7641

Merged
mrveiss merged 1 commit into
Dev_new_guifrom
ci/mypy-7105
May 12, 2026
Merged

mrveiss merged 1 commit into
Dev_new_guifrom
ci/mypy-7105

Conversation

@mrveiss

@mrveiss mrveiss commented May 12, 2026

Copy link
Copy Markdown
Owner

Summary

  • New required check: python3 -m mypy autobot_shared/ must exit 0 on every PR (blocking)
  • Informational checks: autobot-backend/ and autobot-slm-backend/ run non-blocking to surface regressions while pre-existing errors are resolved in GH#7105
  • mypy config: [tool.mypy] section added to pyproject.toml — Python 3.12, ignore_missing_imports, excludes test files and code_analysis/ standalone tool
  • 12 real type errors fixed in autobot_shared/ production code (narrowing, Optional params, type annotations, inline suppression for OTel stubs / redis ping stubs / local-backend imports)
  • 4 missing __init__.py files created in autobot-backend/intelligence/, metrics/, middleware/, protocols/ (resolved "found twice" duplicate-module errors)
  • Removed comment-only autobot-backend/__init__.py (hyphenated name is invalid as a Python package; was blocking mypy entirely)

Pre-existing error counts (informational, not blocking)

Directory Errors Root cause
autobot-backend/ 4133 Various — tracked in GH#7105
autobot-slm-backend/ 1281 SQLAlchemy Column[T] vs T pattern — tracked in GH#7105

Test plan

  • Code Quality CI passes on this PR (Type-check autobot_shared step exits 0)
  • Informational backend steps appear in CI output (non-blocking)
  • No regression to existing Black / isort / flake8 / bandit steps

🤖 Generated with Claude Code

…hared (GH#7105)

- Add [tool.mypy] config to pyproject.toml (python_version=3.12,
  ignore_missing_imports, exclude tests/conftest/code_analysis standalone tool)
- Suppress redis_client / workflow_memory / message_bus via per-module
  ignore_errors (async/sync dual-dispatch unmodelable without overloads)
- Fix 12 genuine type errors in autobot_shared/ production code
  (assert-narrowing, Optional params, type annotations, type: ignore for
  OTel stubs / local-backend imports / unbound TypeVars / redis ping stubs)
- Remove comment-only autobot-backend/__init__.py (invalid pkg name blocked mypy)
- Add __init__.py to four autobot-backend sub-packages missing it
  (intelligence/, metrics/, middleware/, protocols/) to resolve "found twice"
  duplicate-module errors
- CI: blocking mypy step on autobot_shared/ (0 errors proven); informational
  non-blocking steps on autobot-backend/ (4133 pre-existing) and
  autobot-slm-backend/ (1281 SQLAlchemy Column[T] errors) — both tracked
  for resolution in GH#7105

Co-Authored-By: Paperclip <noreply@paperclip.ai>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

✅ SSOT Configuration Compliance: Passing

🎉 No hardcoded values detected that have SSOT config equivalents!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant