LearnNewsExamplesServices
Frontmatter
id7559
titleConvert pullRequestService to PullRequestService Neo.mjs Class
stateClosed
labels
enhancementai
assigneestobiu
createdAtOct 20, 2025, 12:57 AM
updatedAtOct 20, 2025, 12:58 AM
githubUrlhttps://github.com/neomjs/neo/issues/7559
authortobiu
commentsCount0
parentIssue7536
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtOct 20, 2025, 12:58 AM

Convert pullRequestService to PullRequestService Neo.mjs Class

Closed v11.0.0 enhancementai
tobiu
tobiu commented on Oct 20, 2025, 12:57 AM

This ticket covers refactoring the final service for the github-workflow server, ai/mcp/server/github-workflow/services/pullRequestService.mjs, into a singleton PullRequestService class. This service handles all interactions with GitHub Pull Requests.

Acceptance Criteria

  1. The file ai/mcp/server/github-workflow/services/pullRequestService.mjs is renamed to PullRequestService.mjs.
  2. The content is replaced with a PullRequestService class that extends Neo.core.Base and is configured as a singleton.
  3. All existing functions (listPullRequests, checkoutPullRequest, getPullRequestDiff, createComment, getConversation) are converted into class methods.
  4. All methods are updated to return a structured error object on failure, instead of throwing an exception.
  5. The ai/mcp/server/github-workflow/services/toolService.mjs is updated to use the new PullRequestService class.
  6. All related tools (list_pull_requests, checkout_pull_request, etc.) continue to function correctly after the refactoring.
tobiu assigned to @tobiu on Oct 20, 2025, 12:57 AM
tobiu added parent issue #7536 on Oct 20, 2025, 12:57 AM
tobiu added the enhancement label on Oct 20, 2025, 12:57 AM
tobiu added the ai label on Oct 20, 2025, 12:57 AM
tobiu referenced in commit 654e22e - "Convert pullRequestService to PullRequestService Neo.mjs Class #7559" on Oct 20, 2025, 12:57 AM
tobiu closed this issue on Oct 20, 2025, 12:58 AM