@diff-review-system/drs 1.0.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/.opencode/agent/github-reviewer.md +22 -7
  2. package/.opencode/agent/gitlab-reviewer.md +22 -7
  3. package/.opencode/agent/local-reviewer.md +21 -29
  4. package/.opencode/agent/review/performance.md +22 -13
  5. package/.opencode/agent/review/quality.md +22 -13
  6. package/.opencode/agent/review/security.md +22 -19
  7. package/.opencode/agent/review/style.md +22 -10
  8. package/.opencode/opencode.jsonc +7 -19
  9. package/README.md +175 -69
  10. package/dist/ci/runner.d.ts.map +1 -1
  11. package/dist/ci/runner.js +2 -4
  12. package/dist/ci/runner.js.map +1 -1
  13. package/dist/cli/index.js +14 -4
  14. package/dist/cli/index.js.map +1 -1
  15. package/dist/cli/init.d.ts.map +1 -1
  16. package/dist/cli/init.js +112 -23
  17. package/dist/cli/init.js.map +1 -1
  18. package/dist/cli/review-local.d.ts.map +1 -1
  19. package/dist/cli/review-local.js +27 -70
  20. package/dist/cli/review-local.js.map +1 -1
  21. package/dist/cli/review-mr.d.ts +1 -0
  22. package/dist/cli/review-mr.d.ts.map +1 -1
  23. package/dist/cli/review-mr.js +34 -119
  24. package/dist/cli/review-mr.js.map +1 -1
  25. package/dist/cli/review-pr.d.ts.map +1 -1
  26. package/dist/cli/review-pr.js +74 -114
  27. package/dist/cli/review-pr.js.map +1 -1
  28. package/dist/github/client.d.ts +199 -4
  29. package/dist/github/client.d.ts.map +1 -1
  30. package/dist/github/client.js +37 -2
  31. package/dist/github/client.js.map +1 -1
  32. package/dist/github/client.test.d.ts +2 -0
  33. package/dist/github/client.test.d.ts.map +1 -0
  34. package/dist/github/client.test.js +206 -0
  35. package/dist/github/client.test.js.map +1 -0
  36. package/dist/github/platform-adapter.d.ts +31 -0
  37. package/dist/github/platform-adapter.d.ts.map +1 -0
  38. package/dist/github/platform-adapter.js +127 -0
  39. package/dist/github/platform-adapter.js.map +1 -0
  40. package/dist/github/platform-adapter.test.d.ts +2 -0
  41. package/dist/github/platform-adapter.test.d.ts.map +1 -0
  42. package/dist/github/platform-adapter.test.js +40 -0
  43. package/dist/github/platform-adapter.test.js.map +1 -0
  44. package/dist/gitlab/client.d.ts +12 -0
  45. package/dist/gitlab/client.d.ts.map +1 -1
  46. package/dist/gitlab/client.js +18 -0
  47. package/dist/gitlab/client.js.map +1 -1
  48. package/dist/gitlab/diff-parser.test.d.ts +2 -0
  49. package/dist/gitlab/diff-parser.test.d.ts.map +1 -0
  50. package/dist/gitlab/diff-parser.test.js +315 -0
  51. package/dist/gitlab/diff-parser.test.js.map +1 -0
  52. package/dist/gitlab/platform-adapter.d.ts +27 -0
  53. package/dist/gitlab/platform-adapter.d.ts.map +1 -0
  54. package/dist/gitlab/platform-adapter.js +120 -0
  55. package/dist/gitlab/platform-adapter.js.map +1 -0
  56. package/dist/gitlab/platform-adapter.test.d.ts +2 -0
  57. package/dist/gitlab/platform-adapter.test.d.ts.map +1 -0
  58. package/dist/gitlab/platform-adapter.test.js +21 -0
  59. package/dist/gitlab/platform-adapter.test.js.map +1 -0
  60. package/dist/index.test.d.ts +2 -0
  61. package/dist/index.test.d.ts.map +1 -0
  62. package/dist/index.test.js +7 -0
  63. package/dist/index.test.js.map +1 -0
  64. package/dist/lib/code-quality-report.d.ts +44 -0
  65. package/dist/lib/code-quality-report.d.ts.map +1 -0
  66. package/dist/lib/code-quality-report.js +62 -0
  67. package/dist/lib/code-quality-report.js.map +1 -0
  68. package/dist/lib/code-quality-report.test.d.ts +2 -0
  69. package/dist/lib/code-quality-report.test.d.ts.map +1 -0
  70. package/dist/lib/code-quality-report.test.js +327 -0
  71. package/dist/lib/code-quality-report.test.js.map +1 -0
  72. package/dist/{gitlab → lib}/comment-formatter.d.ts +4 -2
  73. package/dist/lib/comment-formatter.d.ts.map +1 -0
  74. package/dist/{gitlab → lib}/comment-formatter.js +48 -15
  75. package/dist/lib/comment-formatter.js.map +1 -0
  76. package/dist/lib/comment-manager.d.ts +61 -0
  77. package/dist/lib/comment-manager.d.ts.map +1 -0
  78. package/dist/lib/comment-manager.js +91 -0
  79. package/dist/lib/comment-manager.js.map +1 -0
  80. package/dist/lib/config-model-overrides.test.d.ts +12 -0
  81. package/dist/lib/config-model-overrides.test.d.ts.map +1 -0
  82. package/dist/lib/config-model-overrides.test.js +224 -0
  83. package/dist/lib/config-model-overrides.test.js.map +1 -0
  84. package/dist/lib/config.d.ts +30 -1
  85. package/dist/lib/config.d.ts.map +1 -1
  86. package/dist/lib/config.js +70 -11
  87. package/dist/lib/config.js.map +1 -1
  88. package/dist/lib/config.test.d.ts +2 -0
  89. package/dist/lib/config.test.d.ts.map +1 -0
  90. package/dist/lib/config.test.js +28 -0
  91. package/dist/lib/config.test.js.map +1 -0
  92. package/dist/lib/context-loader.d.ts +29 -0
  93. package/dist/lib/context-loader.d.ts.map +1 -0
  94. package/dist/lib/context-loader.js +68 -0
  95. package/dist/lib/context-loader.js.map +1 -0
  96. package/dist/lib/diff-parser.d.ts.map +1 -0
  97. package/dist/{gitlab → lib}/diff-parser.js +3 -3
  98. package/dist/lib/diff-parser.js.map +1 -0
  99. package/dist/lib/issue-parser.d.ts +29 -0
  100. package/dist/lib/issue-parser.d.ts.map +1 -0
  101. package/dist/lib/issue-parser.js +151 -0
  102. package/dist/lib/issue-parser.js.map +1 -0
  103. package/dist/lib/issue-parser.test.d.ts +2 -0
  104. package/dist/lib/issue-parser.test.d.ts.map +1 -0
  105. package/dist/lib/issue-parser.test.js +281 -0
  106. package/dist/lib/issue-parser.test.js.map +1 -0
  107. package/dist/lib/platform-client.d.ts +130 -0
  108. package/dist/lib/platform-client.d.ts.map +1 -0
  109. package/dist/lib/platform-client.js +8 -0
  110. package/dist/lib/platform-client.js.map +1 -0
  111. package/dist/lib/position-validator.d.ts +36 -0
  112. package/dist/lib/position-validator.d.ts.map +1 -0
  113. package/dist/lib/position-validator.js +43 -0
  114. package/dist/lib/position-validator.js.map +1 -0
  115. package/dist/lib/review-orchestrator.d.ts +60 -0
  116. package/dist/lib/review-orchestrator.d.ts.map +1 -0
  117. package/dist/lib/review-orchestrator.js +183 -0
  118. package/dist/lib/review-orchestrator.js.map +1 -0
  119. package/dist/lib/unified-review-executor.d.ts +32 -0
  120. package/dist/lib/unified-review-executor.d.ts.map +1 -0
  121. package/dist/lib/unified-review-executor.js +228 -0
  122. package/dist/lib/unified-review-executor.js.map +1 -0
  123. package/dist/opencode/agent-loader.d.ts.map +1 -1
  124. package/dist/opencode/agent-loader.js +5 -10
  125. package/dist/opencode/agent-loader.js.map +1 -1
  126. package/dist/opencode/client.d.ts +3 -2
  127. package/dist/opencode/client.d.ts.map +1 -1
  128. package/dist/opencode/client.js +141 -28
  129. package/dist/opencode/client.js.map +1 -1
  130. package/package.json +28 -19
  131. package/dist/gitlab/comment-formatter.d.ts.map +0 -1
  132. package/dist/gitlab/comment-formatter.js.map +0 -1
  133. package/dist/gitlab/diff-parser.d.ts.map +0 -1
  134. package/dist/gitlab/diff-parser.js.map +0 -1
  135. /package/dist/{gitlab → lib}/diff-parser.d.ts +0 -0
@@ -1,125 +1,85 @@
1
- import chalk from 'chalk';
2
1
  import { createGitHubClient } from '../github/client.js';
3
- import { createOpencodeClientInstance } from '../opencode/client.js';
4
- import { parseDiff, getChangedFiles } from '../gitlab/diff-parser.js';
5
- import { formatSummaryComment, formatIssueComment, calculateSummary, } from '../gitlab/comment-formatter.js';
2
+ import { GitHubPlatformAdapter } from '../github/platform-adapter.js';
3
+ import { executeUnifiedReview } from '../lib/unified-review-executor.js';
6
4
  /**
7
- * Review a GitHub pull request
5
+ * Parse a GitHub diff patch to extract valid line numbers for review comments
6
+ * GitHub only allows comments on lines that are in the diff (added, removed, or context)
8
7
  */
9
- export async function reviewPR(config, options) {
10
- console.log(chalk.bold.cyan('\n🔍 DRS GitHub PR Review\n'));
11
- // Initialize GitHub client
12
- const github = createGitHubClient();
13
- // Fetch PR details
14
- console.log(chalk.gray(`Fetching PR #${options.prNumber} from ${options.owner}/${options.repo}...\n`));
15
- const pr = await github.getPullRequest(options.owner, options.repo, options.prNumber);
16
- const files = await github.getPRFiles(options.owner, options.repo, options.prNumber);
17
- console.log(chalk.bold(`PR: ${pr.title}`));
18
- console.log(chalk.gray(`Author: ${pr.user?.login || 'Unknown'}`));
19
- console.log(chalk.gray(`Branch: ${pr.head.ref} → ${pr.base.ref}`));
20
- console.log(chalk.gray(`Files changed: ${files.length}\n`));
21
- if (files.length === 0) {
22
- console.log(chalk.yellow('✓ No changes to review\n'));
23
- return;
24
- }
25
- // Parse diffs
26
- const diffs = files
27
- .filter(file => file.patch) // Only files with diffs
28
- .map(file => parseDiff(file.patch || ''))
29
- .flat();
30
- const changedFiles = getChangedFiles(diffs);
31
- // Connect to OpenCode (or start in-process if serverUrl is empty)
32
- console.log(chalk.gray('Connecting to OpenCode server...\n'));
33
- const opencode = await createOpencodeClientInstance({
34
- baseUrl: config.opencode.serverUrl || undefined,
35
- });
36
- // Create review session
37
- console.log(chalk.gray('Starting AI review...\n'));
38
- const agentsList = config.review.agents.join(',');
39
- const session = await opencode.createSession({
40
- agent: 'github-reviewer',
41
- message: `Review PR #${options.prNumber} in ${options.owner}/${options.repo}. Agents: ${agentsList}. Files: ${changedFiles.join(', ')}`,
42
- context: {
43
- owner: options.owner,
44
- repo: options.repo,
45
- prNumber: options.prNumber,
46
- files: changedFiles,
47
- agents: config.review.agents,
48
- pr: {
49
- title: pr.title,
50
- description: pr.body,
51
- author: pr.user?.login,
52
- headRef: pr.head.ref,
53
- baseRef: pr.base.ref,
54
- },
55
- },
56
- });
57
- // Stream and collect results
58
- const issues = [];
59
- try {
60
- for await (const message of opencode.streamMessages(session.id)) {
61
- if (message.role === 'assistant') {
62
- // Parse issues from assistant messages
63
- // TODO: Implement structured output parsing once OpenCode SDK supports it
64
- console.log(message.content);
65
- // For now, we'll display raw output
66
- // In production, parse structured JSON responses from agents
67
- }
8
+ function parseValidLinesFromPatch(patch) {
9
+ const validLines = new Set();
10
+ const lines = patch.split('\n');
11
+ let currentLine = 0;
12
+ for (const line of lines) {
13
+ // Parse hunk header: @@ -old_start,old_count +new_start,new_count @@
14
+ const hunkMatch = line.match(/^@@ -\d+(?:,\d+)? \+(\d+)(?:,\d+)? @@/);
15
+ if (hunkMatch) {
16
+ currentLine = parseInt(hunkMatch[1], 10);
17
+ continue;
68
18
  }
69
- // Display and post summary
70
- const summary = calculateSummary(changedFiles.length, issues);
71
- console.log(chalk.bold('\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━'));
72
- console.log(chalk.bold('📊 Review Summary'));
73
- console.log(chalk.bold('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n'));
74
- console.log(` Files reviewed: ${chalk.cyan(summary.filesReviewed)}`);
75
- console.log(` Issues found: ${chalk.yellow(summary.issuesFound)}`);
76
- if (summary.issuesFound > 0) {
77
- console.log(` 🔴 Critical: ${chalk.red(summary.bySeverity.CRITICAL)}`);
78
- console.log(` 🟡 High: ${chalk.yellow(summary.bySeverity.HIGH)}`);
79
- console.log(` 🟠 Medium: ${chalk.hex('#FFA500')(summary.bySeverity.MEDIUM)}`);
80
- console.log(` ⚪ Low: ${chalk.gray(summary.bySeverity.LOW)}`);
19
+ // Skip empty lines or lines without proper diff prefix
20
+ if (!line || line.length === 0)
21
+ continue;
22
+ const prefix = line[0];
23
+ if (prefix === '+') {
24
+ // Added line - can comment on this
25
+ validLines.add(currentLine);
26
+ currentLine++;
81
27
  }
82
- console.log('');
83
- // Post comments to GitHub if requested
84
- if (options.postComments) {
85
- console.log(chalk.gray('Posting review comments to GitHub...\n'));
86
- // Post summary comment
87
- const summaryComment = formatSummaryComment(summary, issues);
88
- await github.createPRComment(options.owner, options.repo, options.prNumber, summaryComment);
89
- // Post individual issue comments as review comments
90
- for (const issue of issues) {
91
- if (issue.line && pr.head.sha) {
92
- try {
93
- await github.createPRReviewComment(options.owner, options.repo, options.prNumber, formatIssueComment(issue), pr.head.sha, issue.file, issue.line);
94
- }
95
- catch (error) {
96
- // If line-specific comment fails, post as general comment
97
- console.warn(chalk.yellow(`Warning: Could not post line comment for ${issue.file}:${issue.line}`));
98
- await github.createPRComment(options.owner, options.repo, options.prNumber, formatIssueComment(issue));
99
- }
100
- }
101
- else {
102
- // Post as general comment if no line number
103
- await github.createPRComment(options.owner, options.repo, options.prNumber, formatIssueComment(issue));
104
- }
105
- }
106
- // Add ai-reviewed label
107
- await github.addLabels(options.owner, options.repo, options.prNumber, ['ai-reviewed']);
108
- console.log(chalk.green('✓ Review posted to GitHub PR\n'));
28
+ else if (prefix === ' ') {
29
+ // Context line - can comment on this
30
+ validLines.add(currentLine);
31
+ currentLine++;
109
32
  }
110
- // Exit with error code if critical issues found
111
- if (summary.bySeverity.CRITICAL > 0) {
112
- console.log(chalk.red.bold('⚠️ Critical issues found!\n'));
113
- process.exit(1);
114
- }
115
- else if (summary.issuesFound === 0) {
116
- console.log(chalk.green('✓ No issues found! PR looks good.\n'));
33
+ else if (prefix === '-') {
34
+ // Removed line - cannot comment on "new" version, skip
35
+ continue;
117
36
  }
118
37
  }
119
- finally {
120
- // Clean up session and shutdown in-process server if applicable
121
- await opencode.closeSession(session.id);
122
- await opencode.shutdown();
38
+ return validLines;
39
+ }
40
+ /**
41
+ * Review a GitHub pull request
42
+ */
43
+ export async function reviewPR(config, options) {
44
+ // Create GitHub client and adapter
45
+ const githubClient = createGitHubClient();
46
+ const platformClient = new GitHubPlatformAdapter(githubClient);
47
+ // Project ID in format "owner/repo"
48
+ const projectId = `${options.owner}/${options.repo}`;
49
+ // Fetch files to build line validator
50
+ const files = await githubClient.getPRFiles(options.owner, options.repo, options.prNumber);
51
+ // Build a map of file -> valid line numbers (lines that are in the diff)
52
+ const validLinesMap = new Map();
53
+ for (const file of files) {
54
+ if (file.patch && file.status !== 'removed') {
55
+ const validLines = parseValidLinesFromPatch(file.patch);
56
+ validLinesMap.set(file.filename, validLines);
57
+ }
123
58
  }
59
+ // Create line validator
60
+ const lineValidator = {
61
+ isValidLine(file, line) {
62
+ const validLines = validLinesMap.get(file);
63
+ return validLines !== undefined && validLines.has(line);
64
+ },
65
+ };
66
+ // Create inline position builder
67
+ const createInlinePosition = (issue, platformData) => {
68
+ return {
69
+ path: issue.file,
70
+ line: issue.line,
71
+ commitSha: platformData.head.sha,
72
+ };
73
+ };
74
+ // Execute unified review
75
+ await executeUnifiedReview(config, {
76
+ platformClient,
77
+ projectId,
78
+ prNumber: options.prNumber,
79
+ postComments: options.postComments,
80
+ lineValidator,
81
+ createInlinePosition,
82
+ workingDir: process.cwd(),
83
+ });
124
84
  }
125
85
  //# sourceMappingURL=review-pr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"review-pr.js","sourceRoot":"","sources":["../../src/cli/review-pr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-pr.js","sourceRoot":"","sources":["../../src/cli/review-pr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAWzE;;;GAGG;AACH,SAAS,wBAAwB,CAAC,KAAa;IAC7C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,qEAAqE;QACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACtE,IAAI,SAAS,EAAE,CAAC;YACd,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,SAAS;QACX,CAAC;QAED,uDAAuD;QACvD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,mCAAmC;YACnC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC5B,WAAW,EAAE,CAAC;QAChB,CAAC;aAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,qCAAqC;YACrC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC5B,WAAW,EAAE,CAAC;QAChB,CAAC;aAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,uDAAuD;YACvD,SAAS;QACX,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,MAAiB,EAAE,OAAwB;IACxE,mCAAmC;IACnC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,IAAI,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAE/D,oCAAoC;IACpC,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAErD,sCAAsC;IACtC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE3F,yEAAyE;IACzE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAuB,CAAC;IACrD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxD,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,aAAa,GAAkB;QACnC,WAAW,CAAC,IAAY,EAAE,IAAY;YACpC,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3C,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;KACF,CAAC;IAEF,iCAAiC;IACjC,MAAM,oBAAoB,GAAG,CAAC,KAAkB,EAAE,YAAiB,EAAyB,EAAE;QAC5F,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAK;YACjB,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG;SACjC,CAAC;IACJ,CAAC,CAAC;IAEF,yBAAyB;IACzB,MAAM,oBAAoB,CAAC,MAAM,EAAE;QACjC,cAAc;QACd,SAAS;QACT,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,aAAa;QACb,oBAAoB;QACpB,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE;KAC1B,CAAC,CAAC;AACL,CAAC"}
@@ -1,3 +1,4 @@
1
+ import type { RestEndpointMethodTypes } from '@octokit/rest';
1
2
  export interface GitHubConfig {
2
3
  token: string;
3
4
  owner?: string;
@@ -629,11 +630,11 @@ export declare class GitHubClient {
629
630
  /**
630
631
  * Post a review comment on the PR
631
632
  */
632
- createPRComment(owner: string, repo: string, prNumber: number, body: string): Promise<any>;
633
+ createPRComment(owner: string, repo: string, prNumber: number, body: string): Promise<RestEndpointMethodTypes['issues']['createComment']['response']>;
633
634
  /**
634
635
  * Create a review comment on a specific line
635
636
  */
636
- createPRReviewComment(owner: string, repo: string, prNumber: number, body: string, commitId: string, path: string, line: number): Promise<any>;
637
+ createPRReviewComment(owner: string, repo: string, prNumber: number, body: string, commitId: string, path: string, line: number): Promise<RestEndpointMethodTypes['pulls']['createReviewComment']['response']>;
637
638
  /**
638
639
  * Create a pull request review with multiple comments
639
640
  */
@@ -641,11 +642,11 @@ export declare class GitHubClient {
641
642
  path: string;
642
643
  line: number;
643
644
  body: string;
644
- }>): Promise<any>;
645
+ }>): Promise<RestEndpointMethodTypes['pulls']['createReview']['response']>;
645
646
  /**
646
647
  * Add labels to a PR
647
648
  */
648
- addLabels(owner: string, repo: string, prNumber: number, labels: string[]): Promise<any>;
649
+ addLabels(owner: string, repo: string, prNumber: number, labels: string[]): Promise<RestEndpointMethodTypes['issues']['addLabels']['response']>;
649
650
  /**
650
651
  * Check if PR has a specific label
651
652
  */
@@ -1338,6 +1339,200 @@ export declare class GitHubClient {
1338
1339
  disk_usage?: number;
1339
1340
  collaborators?: number;
1340
1341
  }>;
1342
+ /**
1343
+ * List all issue comments on a PR
1344
+ */
1345
+ listPRComments(owner: string, repo: string, prNumber: number): Promise<{
1346
+ id: number;
1347
+ node_id: string;
1348
+ url: string;
1349
+ body?: string;
1350
+ body_text?: string;
1351
+ body_html?: string;
1352
+ html_url: string;
1353
+ user: {
1354
+ name?: string | null;
1355
+ email?: string | null;
1356
+ login: string;
1357
+ id: number;
1358
+ node_id: string;
1359
+ avatar_url: string;
1360
+ gravatar_id: string | null;
1361
+ url: string;
1362
+ html_url: string;
1363
+ followers_url: string;
1364
+ following_url: string;
1365
+ gists_url: string;
1366
+ starred_url: string;
1367
+ subscriptions_url: string;
1368
+ organizations_url: string;
1369
+ repos_url: string;
1370
+ events_url: string;
1371
+ received_events_url: string;
1372
+ type: string;
1373
+ site_admin: boolean;
1374
+ starred_at?: string;
1375
+ user_view_type?: string;
1376
+ } | null;
1377
+ created_at: string;
1378
+ updated_at: string;
1379
+ issue_url: string;
1380
+ author_association: "COLLABORATOR" | "CONTRIBUTOR" | "FIRST_TIMER" | "FIRST_TIME_CONTRIBUTOR" | "MANNEQUIN" | "MEMBER" | "NONE" | "OWNER";
1381
+ performed_via_github_app?: {
1382
+ id: number;
1383
+ slug?: string;
1384
+ node_id: string;
1385
+ client_id?: string;
1386
+ owner: {
1387
+ name?: string | null;
1388
+ email?: string | null;
1389
+ login: string;
1390
+ id: number;
1391
+ node_id: string;
1392
+ avatar_url: string;
1393
+ gravatar_id: string | null;
1394
+ url: string;
1395
+ html_url: string;
1396
+ followers_url: string;
1397
+ following_url: string;
1398
+ gists_url: string;
1399
+ starred_url: string;
1400
+ subscriptions_url: string;
1401
+ organizations_url: string;
1402
+ repos_url: string;
1403
+ events_url: string;
1404
+ received_events_url: string;
1405
+ type: string;
1406
+ site_admin: boolean;
1407
+ starred_at?: string;
1408
+ user_view_type?: string;
1409
+ } | {
1410
+ description?: string | null;
1411
+ html_url: string;
1412
+ website_url?: string | null;
1413
+ id: number;
1414
+ node_id: string;
1415
+ name: string;
1416
+ slug: string;
1417
+ created_at: string | null;
1418
+ updated_at: string | null;
1419
+ avatar_url: string;
1420
+ };
1421
+ name: string;
1422
+ description: string | null;
1423
+ external_url: string;
1424
+ html_url: string;
1425
+ created_at: string;
1426
+ updated_at: string;
1427
+ permissions: {
1428
+ issues?: string;
1429
+ checks?: string;
1430
+ metadata?: string;
1431
+ contents?: string;
1432
+ deployments?: string;
1433
+ [key: string]: string | undefined;
1434
+ };
1435
+ events: string[];
1436
+ installations_count?: number;
1437
+ client_secret?: string;
1438
+ webhook_secret?: string | null;
1439
+ pem?: string;
1440
+ } | null;
1441
+ reactions?: {
1442
+ url: string;
1443
+ total_count: number;
1444
+ "+1": number;
1445
+ "-1": number;
1446
+ laugh: number;
1447
+ confused: number;
1448
+ heart: number;
1449
+ hooray: number;
1450
+ eyes: number;
1451
+ rocket: number;
1452
+ };
1453
+ }[]>;
1454
+ /**
1455
+ * List all review comments on a PR
1456
+ */
1457
+ listPRReviewComments(owner: string, repo: string, prNumber: number): Promise<{
1458
+ url: string;
1459
+ pull_request_review_id: number | null;
1460
+ id: number;
1461
+ node_id: string;
1462
+ diff_hunk: string;
1463
+ path: string;
1464
+ position?: number;
1465
+ original_position?: number;
1466
+ commit_id: string;
1467
+ original_commit_id: string;
1468
+ in_reply_to_id?: number;
1469
+ user: {
1470
+ name?: string | null;
1471
+ email?: string | null;
1472
+ login: string;
1473
+ id: number;
1474
+ node_id: string;
1475
+ avatar_url: string;
1476
+ gravatar_id: string | null;
1477
+ url: string;
1478
+ html_url: string;
1479
+ followers_url: string;
1480
+ following_url: string;
1481
+ gists_url: string;
1482
+ starred_url: string;
1483
+ subscriptions_url: string;
1484
+ organizations_url: string;
1485
+ repos_url: string;
1486
+ events_url: string;
1487
+ received_events_url: string;
1488
+ type: string;
1489
+ site_admin: boolean;
1490
+ starred_at?: string;
1491
+ user_view_type?: string;
1492
+ };
1493
+ body: string;
1494
+ created_at: string;
1495
+ updated_at: string;
1496
+ html_url: string;
1497
+ pull_request_url: string;
1498
+ author_association: "COLLABORATOR" | "CONTRIBUTOR" | "FIRST_TIMER" | "FIRST_TIME_CONTRIBUTOR" | "MANNEQUIN" | "MEMBER" | "NONE" | "OWNER";
1499
+ _links: {
1500
+ self: {
1501
+ href: string;
1502
+ };
1503
+ html: {
1504
+ href: string;
1505
+ };
1506
+ pull_request: {
1507
+ href: string;
1508
+ };
1509
+ };
1510
+ start_line?: number | null;
1511
+ original_start_line?: number | null;
1512
+ start_side?: "LEFT" | "RIGHT" | null;
1513
+ line?: number;
1514
+ original_line?: number;
1515
+ side?: "LEFT" | "RIGHT";
1516
+ subject_type?: "line" | "file";
1517
+ reactions?: {
1518
+ url: string;
1519
+ total_count: number;
1520
+ "+1": number;
1521
+ "-1": number;
1522
+ laugh: number;
1523
+ confused: number;
1524
+ heart: number;
1525
+ hooray: number;
1526
+ eyes: number;
1527
+ rocket: number;
1528
+ };
1529
+ body_html?: string;
1530
+ body_text?: string;
1531
+ }[]>;
1532
+ /**
1533
+ * Update an existing comment
1534
+ */
1535
+ updateComment(owner: string, repo: string, commentId: number, body: string): Promise<RestEndpointMethodTypes['issues']['updateComment']['response']>;
1341
1536
  }
1342
1537
  /**
1343
1538
  * Create a GitHub client from environment variables
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export class GitHubClient {
31
31
  pull_number: prNumber,
32
32
  per_page: 100,
33
33
  });
34
- return response.data.map(file => ({
34
+ return response.data.map((file) => ({
35
35
  filename: file.filename,
36
36
  status: file.status,
37
37
  additions: file.additions,
@@ -100,7 +100,7 @@ export class GitHubClient {
100
100
  repo,
101
101
  issue_number: prNumber,
102
102
  });
103
- return response.data.some(l => l.name === label);
103
+ return response.data.some((l) => l.name === label);
104
104
  }
105
105
  /**
106
106
  * Get repository details
@@ -119,6 +119,41 @@ export class GitHubClient {
119
119
  const response = await this.octokit.users.getAuthenticated();
120
120
  return response.data;
121
121
  }
122
+ /**
123
+ * List all issue comments on a PR
124
+ */
125
+ async listPRComments(owner, repo, prNumber) {
126
+ const response = await this.octokit.issues.listComments({
127
+ owner,
128
+ repo,
129
+ issue_number: prNumber,
130
+ per_page: 100,
131
+ });
132
+ return response.data;
133
+ }
134
+ /**
135
+ * List all review comments on a PR
136
+ */
137
+ async listPRReviewComments(owner, repo, prNumber) {
138
+ const response = await this.octokit.pulls.listReviewComments({
139
+ owner,
140
+ repo,
141
+ pull_number: prNumber,
142
+ per_page: 100,
143
+ });
144
+ return response.data;
145
+ }
146
+ /**
147
+ * Update an existing comment
148
+ */
149
+ async updateComment(owner, repo, commentId, body) {
150
+ return await this.octokit.issues.updateComment({
151
+ owner,
152
+ repo,
153
+ comment_id: commentId,
154
+ body,
155
+ });
156
+ }
122
157
  }
123
158
  /**
124
159
  * Create a GitHub client from environment variables
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=client.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.test.d.ts","sourceRoot":"","sources":["../../src/github/client.test.ts"],"names":[],"mappings":""}