Skip to content

[Bug] Refresh review-thread feedback query after GitHub rejects PullRequestReviewComment.side #283

Description

@morluto

Description

GitContribute MCP 1.0.0 cannot synchronize the review_threads channel against the current GitHub GraphQL schema. A feedback job that requested issue_comments, submitted_reviews, inline_comments, and review_threads completed with every affected item failed and this message:

github graphql: Field 'side' doesn't exist on type 'PullRequestReviewComment'

This prevents both github.sync_pull_request_feedback and github.index_pull_request_feedback from producing usable feedback results whenever review_threads is requested. A repository-wide reviewer-author audit therefore cannot reach its documented offline search stage.

The running catalog reported server_version 1.0.0. The current local source at d786f45 still contains the same GraphQL selections in internal/github/pull_request_workflows.go:247 and :316, so the problem is not limited to an old registration. Live GitHub schema introspection for PullRequestReviewComment exposes line and startLine but not side or startSide.

Steps to Reproduce

  1. Call github.sync_pull_request_feedback for any existing pull request with channels containing review_threads.
  2. Poll the returned job with jobs.get.
  3. Inspect the detailed result.

Expected Behavior

The feedback job retrieves review-thread topology and comments, or reports a typed per-item limitation that still permits the independent requested channels to complete.

Actual Behavior

The unsupported field makes the GraphQL request fail. In the observed all-channel batch, every item was unusable rather than receiving independent channel results.

Proposed Direction

Update the review-thread GraphQL selection to use only fields present in the current GitHub schema, preserving the existing typed comment and thread contract. If side/start-side provenance is no longer available from that GraphQL type, represent it as unavailable rather than fabricating it or failing the entire feedback operation.

Add a contract test that validates the real query selection against GitHub schema compatibility (or a maintained schema fixture), plus a regression that a review_threads failure is isolated at the narrowest valid item/channel boundary.

Environment

  • Host: Linux
  • Running MCP server: gitcontribute 1.0.0 (catalog contract)
  • Inspected source: d786f45
  • GitHub endpoint: github.com GraphQL

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions