Update operator_engine/pr_actions/action_queue.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
Alexa Amundson
2025-11-17 23:37:18 -06:00
committed by GitHub
parent e1c18249b8
commit 754ad0127e

View File

@@ -95,6 +95,7 @@ class PRActionQueue:
Returns: Returns:
action_id: Unique identifier for the action action_id: Unique identifier for the action
""" """
async with self._lock:
# Use default priority if not specified # Use default priority if not specified
if priority is None: if priority is None:
priority = get_default_priority(action_type) priority = get_default_priority(action_type)
@@ -115,7 +116,7 @@ class PRActionQueue:
) )
# Check for duplicates # Check for duplicates
duplicate_id = self._find_duplicate(action) duplicate_id = await self._find_duplicate(action)
if duplicate_id: if duplicate_id:
logger.info( logger.info(
f"Duplicate action found: {duplicate_id}. " f"Duplicate action found: {duplicate_id}. "
@@ -133,8 +134,9 @@ class PRActionQueue:
return action.action_id return action.action_id
def _find_duplicate(self, action: PRAction) -> Optional[str]: async def _find_duplicate(self, action: PRAction) -> Optional[str]:
"""Check if an identical action is already queued or processing""" """Check if an identical action is already queued or processing"""
async with self._lock:
for existing_id, existing in {**self._queue, **self._processing}.items(): for existing_id, existing in {**self._queue, **self._processing}.items():
if ( if (
existing.action_type == action.action_type existing.action_type == action.action_type