From 0770cebda793e0dec1dadb5519e21cc51158013a Mon Sep 17 00:00:00 2001 From: Joshua Li Date: Sat, 31 Oct 2026 09:52:03 -0700 Subject: [PATCH] fix(jira): require a query for issue search A None query reached the Jira clients and failed as an AttributeError or TypeError. Fail at the integration boundary instead; both search endpoints already reject empty queries before calling this method. --- src/sentry/integrations/jira/integration.py | 1 + src/sentry/integrations/jira_server/integration.py | 1 + 2 files changed, 2 insertions(+) diff --git a/src/sentry/integrations/jira/integration.py b/src/sentry/integrations/jira/integration.py index 96739e112adb..ba7fa369622e 100644 --- a/src/sentry/integrations/jira/integration.py +++ b/src/sentry/integrations/jira/integration.py @@ -923,6 +923,7 @@ def update_comment(self, issue_id, user_id, group_note): ) from e def search_issues(self, query: str | None, **kwargs) -> dict[str, Any]: + assert query is not None, "search_issues requires a query string" try: resp = self.get_client().search_issues(query) assert isinstance(resp, dict) diff --git a/src/sentry/integrations/jira_server/integration.py b/src/sentry/integrations/jira_server/integration.py index dbf63b83647d..d6272bd24577 100644 --- a/src/sentry/integrations/jira_server/integration.py +++ b/src/sentry/integrations/jira_server/integration.py @@ -653,6 +653,7 @@ def update_comment(self, issue_id, user_id, group_note): ) def search_issues(self, query: str | None, **kwargs) -> dict[str, Any]: + assert query is not None, "search_issues requires a query string" try: resp = self.get_client().search_issues(query) assert isinstance(resp, dict)