open-swe/agent
Johannes du Plessis 03d9f23645
fix(open-swe): always post a review summary, even with no findings (#1256)
* fix(reviewer): log every push/close early-return so 'silent ignore' is debuggable

Pushes to PRs that haven't had a first review fall through the watch
handler because the reviewer thread doesn't have kind=reviewer set.
Without log lines on the early-return paths, this scenario was
indistinguishable from 'webhook reached the handler at all' in the
hosted log stream.

Now every early-return logs at info or debug:
- info when a real PR exists but the reviewer thread isn't set up
  (with a hint pointing at the trigger paths the user can use)
- info when the repo isn't in the reviewer allowlist
- debug for benign skips (non-branch refs, branch deletions,
  already-reviewed head_sha)

* fix(reviewer): always post a summary review, even with no findings

The publish_review tool gated POSTing on `inline_comments or summary`,
so when the agent called publish_review() with no args on a clean PR
the result returned `success: true` but no GitHub review was posted —
the user got silence instead of a "no issues found" comment.

- Drop the gate so publish_review always POSTs.
- Friendlier no-findings render: `**No issues found.**` when the
  findings list is empty, vs. `**No issues at or above \`<sev>\`
  severity.**` with hidden count when only sub-threshold findings
  exist. Agent summary renders below.
- Prompt now requires the agent to always pass a `summary` so the
  body is meaningful; calls out specifically not to skip on a clean PR.
2026-05-07 22:16:20 +00:00
..
integrations feat: move github workflows to gh cli (#1238) 2026-05-04 18:03:53 -07:00
middleware feat: add reviewer graph + eval target wiring (#1241) 2026-05-06 10:15:58 -07:00
tools fix(open-swe): always post a review summary, even with no findings (#1256) 2026-05-07 22:16:20 +00:00
utils feat: add "Running to the roar!" trace reply phrase (#1252) 2026-05-07 13:18:54 -07:00
encryption.py chore: Drop monorepo (#1029) 2026-03-06 16:10:34 -08:00
prompt.py chore: prevent leaking private repo info in PR descriptions (#1254) 2026-05-07 14:29:42 -07:00
reviewer.py fix(open-swe): always post a review summary, even with no findings (#1256) 2026-05-07 22:16:20 +00:00
reviewer_diff.py feat: implement reviewer findings, publish_review, and watch mode (#1253) 2026-05-07 14:48:43 -07:00
reviewer_findings.py feat: implement reviewer findings, publish_review, and watch mode (#1253) 2026-05-07 14:48:43 -07:00
reviewer_publish.py fix(open-swe): always post a review summary, even with no findings (#1256) 2026-05-07 22:16:20 +00:00
server.py start sandbox before proxy refresh (#1249) 2026-05-07 11:26:25 -07:00
webapp.py fix(open-swe): always post a review summary, even with no findings (#1256) 2026-05-07 22:16:20 +00:00