Skip to content

[DRAFT] typing: migrate sentry.snuba.metrics.query_builder off the untyped list#120025

Draft
cursor[bot] wants to merge 2 commits into
masterfrom
cursor/untyped-module-cleanup-87be
Draft

[DRAFT] typing: migrate sentry.snuba.metrics.query_builder off the untyped list#120025
cursor[bot] wants to merge 2 commits into
masterfrom
cursor/untyped-module-cleanup-87be

Conversation

@cursor

@cursor cursor Bot commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • remove sentry.snuba.metrics.query_builder from the mypy "sentry modules with typing issues" override list in pyproject.toml
  • add strict typing refinements in src/sentry/snuba/metrics/query_builder.py so it passes mypy_without_ignores
  • preserve runtime behavior for metric operation params while narrowing types for static analysis

Testing

  • PATH=".venv/bin:$PATH" .venv/bin/python -m tools.mypy_helpers.mypy_without_ignores src/sentry/snuba/metrics/query_builder.py
  • SENTRY_SKIP_SERVICE_VALIDATION=1 .venv/bin/pytest -svv "tests/sentry/snuba/metrics/test_query_builder.py::test_only_can_groupby_operations_can_be_added_to_groupby[valid grouping by metrics expression]" "tests/sentry/snuba/metrics/test_query_builder.py::test_only_can_filter_operations_can_be_added_to_where[valid filtering by metrics expression]"
  • SENTRY_SKIP_SERVICE_VALIDATION=1 .venv/bin/pytest -n3 -svv --reuse-db tests/sentry/test_mypy_stronglist.py
  • .venv/bin/ruff check src/sentry/snuba/metrics/query_builder.py

Review

cc @armenzg

Legal Boilerplate

Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.

Open in Web View Automation 

cursoragent and others added 2 commits July 19, 2026 12:06
Co-authored-by: Armen Zambrano G. <armenzg@users.noreply.github.com>
Co-authored-by: Armen Zambrano G. <armenzg@users.noreply.github.com>
@github-actions github-actions Bot added the Scope: Backend Automatically applied to PRs that change backend components label Jul 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant