Skip to content

[Bug]: watch_pull_request does not wake when review threads/comments remain unresolved under required resolution rules #17703

Closed

Description

@seankoji

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Related but different:

Area

apps/server (orchestration-v2/pullRequestWatch.ts)

Steps to reproduce

  1. In a GitHub repository, configure a branch protection ruleset requiring required_review_thread_resolution: true.
  2. Open a pull request and start a watch using watch_pull_request.
  3. CI checks run and pass (status === "success").
  4. An automated reviewer (e.g. GitHub Copilot code review, or another review bot) leaves inline review comments / opens a review thread with suggestions.
  5. End turn to let watch_pull_request monitor PR readiness for auto-merge.

Expected behavior

When an agent watches a pull request to merge when ready, watch_pull_request should:

  • Either wake when review threads are opened / remain unresolved while checks pass, signaling that the PR is blocked by unresolved conversations; OR
  • Wake when the PR becomes mergeable vs blocked by repository rulesets (mergeable_state, ruleset evaluation, or unresolved conversation blocker), so the agent knows action is required to resolve threads before merge can proceed.

Actual behavior

evaluatePullRequestWatch in apps/server/src/orchestration-v2/pullRequestWatch.ts only tracks:

  • New comments/reviews created after the watch started. If comments were posted concurrently with or before the watch started, or if comments remain unresolved, no wake triggers.
  • Check statuses (all-checks-passed / checks-failed).
    Once the CI checks pass, the watch sends checks-passed, but because unresolved review threads block GitHub's merge policy, an agent attempting to merge or waiting for auto-readiness is stuck waiting indefinitely unless manual user intervention or polling occurs.

Impact

Agents relying on watch_pull_request (as mandated by system instructions) hang indefinitely on repositories that enforce unresolved thread resolution rulesets, believing CI checks are the only gate for merge readiness.

Environment

T3 Code, GitHub repository with branch ruleset required_review_thread_resolution: true.

Activity

  1. locked and limited conversation to collaborators on Oct 22, 2026
  2. converted this issue into a discussion #23305 on Oct 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions