Run PR reviews synchronously (#785)

This commit is contained in:
Glenn Jocher
2026-07-02 11:44:32 +02:00
committed by GitHub
parent ee29cf84f8
commit 777877406f
2 changed files with 23 additions and 1 deletions
+1 -1
View File
@@ -267,7 +267,7 @@ def generate_pr_review(
}
],
retries=0,
background=True,
# Do not pass background=True; queued background reviews can consume the full 900s poll timeout.
)
# Sanitize leaked tool-citation tokens from model output
+22
View File
@@ -2,6 +2,7 @@
from unittest.mock import MagicMock, patch
from actions import review_pr
from actions.first_interaction import get_event_content, get_first_interaction_response, get_relevant_labels
@@ -96,3 +97,24 @@ def test_get_first_interaction_response(mock_get_response):
assert response == "Thank you for your issue"
mock_get_response.assert_called_once()
@patch("actions.review_pr.get_response")
def test_generate_pr_review_uses_synchronous_response(mock_get_response):
"""Test PR reviews avoid background polling for code diffs."""
mock_get_response.return_value = {"comments": [], "summary": "LGTM"}
diff = """diff --git a/test.py b/test.py
--- a/test.py
+++ b/test.py
@@ -1 +1 @@
-old = True
+old = False
"""
review = review_pr.generate_pr_review("ultralytics/actions", diff, "Test PR", "")
assert review["summary"] == "LGTM"
mock_get_response.assert_called_once()
kwargs = mock_get_response.call_args.kwargs
assert "background" not in kwargs
assert kwargs["tools"][0]["type"] == "web_search"