open-swe/agent/tools
Johannes du Plessis 18f8ca56fb
fix: dedup empty reviewer summary by PR state, not stale re_review flag (#1391)
A push that lands while a reviewer run is in flight is delivered as a
queued message into the still-running first-review run, whose
configurable still has re_review=False. The empty-review guard in
publish_review only skipped the 'No issues found' summary when
is_re_review was True, so the queued reconcile published a second,
duplicate top-level 'No issues found' review.

Key the empty-review skip off actual PR state instead: add
open_swe_review_exists(), which detects the marker render_review_body
embeds in every Open SWE review body, and skip the summary when a prior
Open SWE review already exists (regardless of the re_review flag). Fails
open on API error so a genuine first review is never suppressed.
2026-06-03 10:30:13 -07:00
..
__init__.py feat: open PRs as the triggering user via dedicated tool (#1378) 2026-06-02 16:01:54 -07:00
add_finding.py feat: generate reviewer finding titles (#1355) 2026-05-28 15:28:55 -07:00
fetch_url.py fix: Shell injection and ssrf issues (#1155) 2026-04-01 12:37:35 -07:00
http_request.py fix: harden http_request SSRF guard against DNS rebinding [closes AB-2321] (#1277) 2026-05-08 22:06:25 +00:00
linear_comment.py feat: move github workflows to gh cli (#1238) 2026-05-04 18:03:53 -07:00
linear_create_issue.py feat: add linear tools for listing teams, get/create/update/delete issues, and get issue comments (#1105) 2026-03-23 14:32:44 -07:00
linear_delete_issue.py feat: add linear tools for listing teams, get/create/update/delete issues, and get issue comments (#1105) 2026-03-23 14:32:44 -07:00
linear_get_issue.py feat: add linear tools for listing teams, get/create/update/delete issues, and get issue comments (#1105) 2026-03-23 14:32:44 -07:00
linear_get_issue_comments.py feat: add linear tools for listing teams, get/create/update/delete issues, and get issue comments (#1105) 2026-03-23 14:32:44 -07:00
linear_list_teams.py feat: add linear tools for listing teams, get/create/update/delete issues, and get issue comments (#1105) 2026-03-23 14:32:44 -07:00
linear_update_issue.py feat: add linear tools for listing teams, get/create/update/delete issues, and get issue comments (#1105) 2026-03-23 14:32:44 -07:00
list_findings.py feat: implement reviewer findings, publish_review, and watch mode (#1253) 2026-05-07 14:48:43 -07:00
open_pull_request.py feat: open PRs as the triggering user via dedicated tool (#1378) 2026-06-02 16:01:54 -07:00
publish_review.py fix: dedup empty reviewer summary by PR state, not stale re_review flag (#1391) 2026-06-03 10:30:13 -07:00
read_finding_outcomes.py feat: outcomes dataset + bootstrap/continual split via skills (#1365) 2026-06-01 13:25:12 -07:00
reply_to_finding_thread.py fix: Reconcile reviewer findings with PR threads (#1346) 2026-05-27 17:26:08 -07:00
request_pr_review.py fix: route PR review requests through agent tool (#1340) 2026-05-27 10:29:43 -07:00
resolve_finding_thread.py feat: outcomes dataset + bootstrap/continual split via skills (#1365) 2026-06-01 13:25:12 -07:00
save_review_style.py feat: outcomes dataset + bootstrap/continual split via skills (#1365) 2026-06-01 13:25:12 -07:00
slack_read_thread_messages.py feat: give agent ability to read cross-posted Slack message links [closes OPE-37] (#1200) 2026-04-29 17:42:27 -07:00
slack_thread_reply.py fix: propagate Slack reply errors (#1358) 2026-05-28 23:11:42 +00:00
update_finding.py feat: outcomes dataset + bootstrap/continual split via skills (#1365) 2026-06-01 13:25:12 -07:00
web_search.py fix: add Exa web search tool [closes: OPE-29] (#1133) 2026-03-25 16:24:31 -07:00