From 68f1a7c5ce0f2139471de3d36b2d3bf43de64dd9 Mon Sep 17 00:00:00 2001 From: Anish Sarkar <104695310+AnishSarkar22@users.noreply.github.com> Date: Sat, 21 Mar 2026 21:02:52 +0530 Subject: [PATCH] refactor: deduplicate issue type names in JiraToolMetadataService --- .../app/services/jira/tool_metadata_service.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/surfsense_backend/app/services/jira/tool_metadata_service.py b/surfsense_backend/app/services/jira/tool_metadata_service.py index aaec89cd5..cbc89e7be 100644 --- a/surfsense_backend/app/services/jira/tool_metadata_service.py +++ b/surfsense_backend/app/services/jira/tool_metadata_service.py @@ -149,11 +149,15 @@ class JiraToolMetadataService: for p in raw_projects ] raw_types = await asyncio.to_thread(jira_client.get_issue_types) - issue_types = [ - {"id": t.get("id"), "name": t.get("name")} - for t in raw_types - if not t.get("subtask", False) - ] + seen_type_names: set[str] = set() + issue_types = [] + for t in raw_types: + if t.get("subtask", False): + continue + name = t.get("name") + if name not in seen_type_names: + seen_type_names.add(name) + issue_types.append({"id": t.get("id"), "name": name}) raw_priorities = await asyncio.to_thread(jira_client.get_priorities) priorities = [ {"id": p.get("id"), "name": p.get("name")}