fix(review-pr): resolve any addressed thread, not only your own

Bot and other-reviewer threads block land the same way. The guard that
matters is whether the finding is addressed, not who opened it.
This commit is contained in:
Miguel Palhas
2026-08-24 11:23:53 +01:00
parent c7becda233
commit 8313842de8
+13 -12
View File
@@ -167,13 +167,14 @@ Nothing new behind the reason: return silently, per `COMMON.md`. That
covers a hint with nothing behind it, not a SHA you have reviewed and
left unacknowledged.
### 3.1 Resolving your own threads
### 3.1 Resolving threads
A thread you opened is yours to close. Once the author has addressed a
finding — the fix is in the new commits, or the reply settled it —
resolve it. Left open, every finding you ever posted stays open for the
life of the PR, and the author's `land` session, which will not declare
a PR ready over an unaddressed thread, is blocked on you.
Once a finding is addressed — the fix is in the new commits, or a reply
settled it — resolve the thread. Any thread, whoever opened it: yours,
another reviewer's, a bot's (Copilot, CodeRabbit, crit), the user's.
Left open, findings accumulate for the life of the PR, and the author's
`land` session, which will not declare a PR ready over an unaddressed
thread, is blocked on them.
```bash
# github — needs the thread id, not the comment id
@@ -188,10 +189,10 @@ curl -sS -X POST -H "Authorization: token $GITEA_TOKEN" \
"$BASE/api/v1/repos/$REPO/pulls/comments/<cid>/resolve"
```
Resolve only threads rooted in a comment you posted, and only when the
finding is actually addressed. Someone else's thread, and a finding the
author merely disagreed with, both stay open — that is the user's call.
Never resolve as a way to clear a backlog you have not re-read.
Resolve only what is actually addressed, and only after reading the
code that addresses it. A finding the author merely disagreed with, and
a question still waiting on an answer, both stay open — that is the
user's call, not a backlog for you to clear.
Resolving is the whole of your authority here. It is not approval: the
review decision stays `COMMENT`, per §2.
@@ -199,7 +200,7 @@ review decision stays `COMMENT`, per §2.
## 4. Close out
When your findings are posted (or handed over, on an unlisted repo), no
thread is waiting on you, and every thread you opened is either resolved
or genuinely still open, say so in one line and stop. Do not track the
thread is waiting on you, and every addressed thread is resolved, say so
in one line and stop. Do not track the
PR to merge — that's the author's job, and on someone else's PR it isn't
yours to drive.