Skip to content

feat(pr-review): let rework agent skip non-actionable bot comments via skip file#124

Merged
chihsuan merged 2 commits into
mainfrom
feat/agent-skip-nonactionable-bot-comments
Jun 29, 2026
Merged

feat(pr-review): let rework agent skip non-actionable bot comments via skip file#124
chihsuan merged 2 commits into
mainfrom
feat/agent-skip-nonactionable-bot-comments

Conversation

@chihsuan

Copy link
Copy Markdown
Member

Context

ignored_reviewers (PR #122) silences whole bot accounts, but a review bot can post both actionable and non-actionable comments. The rework agent should be able to skip a single clearly non-actionable bot comment without silencing the account.

TL;DR

Let the rework agent mark individual non-actionable bot comments to skip, so they get no auto-reply — humans are never skippable.

Summary

  • Prompt: agent writes non-actionable bot comment ids to .symphony-skip-comments.json instead of replying (path d); never for human reviewers.
  • Poller: consumes the skip file (reads + deletes), suppresses the auto-reply for those ids, guarded to bot authors only and intersected with the current batch; logs what it skipped.
  • Workspace: adds the skip file to the worktree git exclude so it is never tracked or committed.
  • Local workspaces only; missing/malformed file degrades to normal reply behavior.

Alternatives

  • Turning off reply_after_addressing so the agent owns all replies: rejected, loses the actionable-reply safety net.
  • Only ignored_reviewers: rejected, it is per-account and cannot skip one comment from an otherwise-actionable bot.

Test Plan

  • make all
  • Poller: bot id in skip file gets no reply; human id ignored (guard); skip file consumed.
  • Workspace: skip file is git-excluded in a created worktree.
  • mix format --check-formatted, mix specs.check, mix credo on changed files.

@chihsuan chihsuan merged commit a6f2a30 into main Jun 29, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant