@probelabs/visor 0.1.17 → 0.1.19

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 (68) hide show
  1. package/README.md +78 -0
  2. package/defaults/.visor.yaml +53 -1
  3. package/dist/ai-review-service.js +2 -2
  4. package/dist/ai-review-service.js.map +1 -1
  5. package/dist/check-execution-engine.d.ts +32 -1
  6. package/dist/check-execution-engine.d.ts.map +1 -1
  7. package/dist/check-execution-engine.js +289 -19
  8. package/dist/check-execution-engine.js.map +1 -1
  9. package/dist/config.d.ts.map +1 -1
  10. package/dist/config.js +18 -3
  11. package/dist/config.js.map +1 -1
  12. package/dist/event-mapper.d.ts.map +1 -1
  13. package/dist/event-mapper.js +1 -1
  14. package/dist/event-mapper.js.map +1 -1
  15. package/dist/failure-condition-evaluator.d.ts +8 -0
  16. package/dist/failure-condition-evaluator.d.ts.map +1 -1
  17. package/dist/failure-condition-evaluator.js +25 -3
  18. package/dist/failure-condition-evaluator.js.map +1 -1
  19. package/dist/github-check-service.d.ts.map +1 -1
  20. package/dist/github-check-service.js +26 -39
  21. package/dist/github-check-service.js.map +1 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +331 -690
  24. package/dist/index.js.map +1 -1
  25. package/dist/licenses.txt +2300 -0
  26. package/dist/output/code-review/schema.json +84 -0
  27. package/dist/output/code-review/template.liquid +32 -0
  28. package/dist/output/plain/schema.json +14 -0
  29. package/dist/output/plain/template.liquid +1 -0
  30. package/dist/output-formatters.d.ts.map +1 -1
  31. package/dist/output-formatters.js +14 -14
  32. package/dist/output-formatters.js.map +1 -1
  33. package/dist/pr-analyzer.d.ts +2 -1
  34. package/dist/pr-analyzer.d.ts.map +1 -1
  35. package/dist/pr-analyzer.js +2 -1
  36. package/dist/pr-analyzer.js.map +1 -1
  37. package/dist/providers/ai-check-provider.d.ts.map +1 -1
  38. package/dist/providers/ai-check-provider.js +4 -0
  39. package/dist/providers/ai-check-provider.js.map +1 -1
  40. package/dist/providers/check-provider-registry.js +2 -2
  41. package/dist/providers/check-provider-registry.js.map +1 -1
  42. package/dist/providers/check-provider.interface.d.ts +2 -0
  43. package/dist/providers/check-provider.interface.d.ts.map +1 -1
  44. package/dist/providers/check-provider.interface.js.map +1 -1
  45. package/dist/providers/index.d.ts +1 -1
  46. package/dist/providers/index.d.ts.map +1 -1
  47. package/dist/providers/index.js +3 -3
  48. package/dist/providers/index.js.map +1 -1
  49. package/dist/providers/noop-check-provider.d.ts +25 -0
  50. package/dist/providers/noop-check-provider.d.ts.map +1 -0
  51. package/dist/providers/noop-check-provider.js +55 -0
  52. package/dist/providers/noop-check-provider.js.map +1 -0
  53. package/dist/providers/tool-check-provider.d.ts +4 -1
  54. package/dist/providers/tool-check-provider.d.ts.map +1 -1
  55. package/dist/providers/tool-check-provider.js +64 -15
  56. package/dist/providers/tool-check-provider.js.map +1 -1
  57. package/dist/reviewer.d.ts +19 -37
  58. package/dist/reviewer.d.ts.map +1 -1
  59. package/dist/reviewer.js +83 -593
  60. package/dist/reviewer.js.map +1 -1
  61. package/dist/tiktoken_bg.wasm +0 -0
  62. package/dist/types/config.d.ts +52 -5
  63. package/dist/types/config.d.ts.map +1 -1
  64. package/package.json +3 -3
  65. package/dist/providers/script-check-provider.d.ts +0 -23
  66. package/dist/providers/script-check-provider.d.ts.map +0 -1
  67. package/dist/providers/script-check-provider.js +0 -163
  68. package/dist/providers/script-check-provider.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uEAAgF;AAAvE,yHAAA,aAAa,OAAA;AACtB,qEAAkE;AAAzD,gIAAA,qBAAqB,OAAA;AAC9B,yDAAsD;AAA7C,oHAAA,eAAe,OAAA;AACxB,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uEAAgF;AAAvE,yHAAA,aAAa,OAAA;AACtB,qEAAkE;AAAzD,gIAAA,qBAAqB,OAAA;AAC9B,yDAAsD;AAA7C,oHAAA,eAAe,OAAA;AACxB,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,mEAAgE;AAAvD,8HAAA,oBAAoB,OAAA;AAC7B,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA"}
@@ -0,0 +1,25 @@
1
+ import { CheckProvider, CheckProviderConfig } from './check-provider.interface';
2
+ import { PRInfo } from '../pr-analyzer';
3
+ import { ReviewSummary } from '../reviewer';
4
+ /**
5
+ * No-operation check provider that doesn't perform any analysis.
6
+ *
7
+ * This provider is designed for command orchestration - it allows creating
8
+ * checks that exist purely to trigger other checks through dependencies.
9
+ *
10
+ * Example use case: A "/review" command that triggers multiple analysis checks
11
+ * without performing any analysis itself.
12
+ */
13
+ export declare class NoopCheckProvider extends CheckProvider {
14
+ getName(): string;
15
+ getDescription(): string;
16
+ validateConfig(config: unknown): Promise<boolean>;
17
+ execute(_prInfo: PRInfo, _config: CheckProviderConfig, _dependencyResults?: Map<string, ReviewSummary>, _sessionInfo?: {
18
+ parentSessionId?: string;
19
+ reuseSession?: boolean;
20
+ }): Promise<ReviewSummary>;
21
+ getSupportedConfigKeys(): string[];
22
+ isAvailable(): Promise<boolean>;
23
+ getRequirements(): string[];
24
+ }
25
+ //# sourceMappingURL=noop-check-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noop-check-provider.d.ts","sourceRoot":"","sources":["../../src/providers/noop-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAejD,OAAO,CACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,EAC5B,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC/C,YAAY,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAClE,OAAO,CAAC,aAAa,CAAC;IASzB,sBAAsB,IAAI,MAAM,EAAE;IAI5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAKrC,eAAe,IAAI,MAAM,EAAE;CAM5B"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NoopCheckProvider = void 0;
4
+ const check_provider_interface_1 = require("./check-provider.interface");
5
+ /**
6
+ * No-operation check provider that doesn't perform any analysis.
7
+ *
8
+ * This provider is designed for command orchestration - it allows creating
9
+ * checks that exist purely to trigger other checks through dependencies.
10
+ *
11
+ * Example use case: A "/review" command that triggers multiple analysis checks
12
+ * without performing any analysis itself.
13
+ */
14
+ class NoopCheckProvider extends check_provider_interface_1.CheckProvider {
15
+ getName() {
16
+ return 'noop';
17
+ }
18
+ getDescription() {
19
+ return 'No-operation provider for command orchestration and dependency triggering';
20
+ }
21
+ async validateConfig(config) {
22
+ if (!config || typeof config !== 'object') {
23
+ return false;
24
+ }
25
+ const cfg = config;
26
+ // Type must be 'noop'
27
+ if (cfg.type !== 'noop') {
28
+ return false;
29
+ }
30
+ return true;
31
+ }
32
+ async execute(_prInfo, _config, _dependencyResults, _sessionInfo) {
33
+ // Noop provider doesn't perform any analysis
34
+ // It exists purely for command orchestration and dependency triggering
35
+ return {
36
+ issues: [],
37
+ suggestions: [],
38
+ };
39
+ }
40
+ getSupportedConfigKeys() {
41
+ return ['type', 'command', 'depends_on', 'on', 'if', 'group'];
42
+ }
43
+ async isAvailable() {
44
+ // Noop provider is always available
45
+ return true;
46
+ }
47
+ getRequirements() {
48
+ return [
49
+ 'No external dependencies required',
50
+ 'Used for command orchestration and dependency triggering',
51
+ ];
52
+ }
53
+ }
54
+ exports.NoopCheckProvider = NoopCheckProvider;
55
+ //# sourceMappingURL=noop-check-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noop-check-provider.js","sourceRoot":"","sources":["../../src/providers/noop-check-provider.ts"],"names":[],"mappings":";;;AAAA,yEAAgF;AAIhF;;;;;;;;GAQG;AACH,MAAa,iBAAkB,SAAQ,wCAAa;IAClD,OAAO;QACL,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,cAAc;QACZ,OAAO,2EAA2E,CAAC;IACrF,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAe;QAClC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,GAAG,GAAG,MAA6B,CAAC;QAE1C,sBAAsB;QACtB,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CACX,OAAe,EACf,OAA4B,EAC5B,kBAA+C,EAC/C,YAAmE;QAEnE,6CAA6C;QAC7C,uEAAuE;QACvE,OAAO;YACL,MAAM,EAAE,EAAE;YACV,WAAW,EAAE,EAAE;SAChB,CAAC;IACJ,CAAC;IAED,sBAAsB;QACpB,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,WAAW;QACf,oCAAoC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;QACb,OAAO;YACL,mCAAmC;YACnC,0DAA0D;SAC3D,CAAC;IACJ,CAAC;CACF;AArDD,8CAqDC"}
@@ -2,9 +2,12 @@ import { CheckProvider, CheckProviderConfig } from './check-provider.interface';
2
2
  import { PRInfo } from '../pr-analyzer';
3
3
  import { ReviewSummary } from '../reviewer';
4
4
  /**
5
- * Check provider that executes external tools (linters, analyzers, etc.)
5
+ * Check provider that executes external tools and commands with Liquid template support
6
+ * Supports both simple commands and complex templated execution with stdin
6
7
  */
7
8
  export declare class ToolCheckProvider extends CheckProvider {
9
+ private liquid;
10
+ constructor();
8
11
  getName(): string;
9
12
  getDescription(): string;
10
13
  validateConfig(config: unknown): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"tool-check-provider.d.ts","sourceRoot":"","sources":["../../src/providers/tool-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAA8B,MAAM,aAAa,CAAC;AAGxE;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC/C,YAAY,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAClE,OAAO,CAAC,aAAa,CAAC;YA6BX,cAAc;IA6B5B,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,mBAAmB;IAe3B,sBAAsB,IAAI,MAAM,EAAE;IAI5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAMrC,eAAe,IAAI,MAAM,EAAE;CAO5B"}
1
+ {"version":3,"file":"tool-check-provider.d.ts","sourceRoot":"","sources":["../../src/providers/tool-check-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAA8B,MAAM,aAAa,CAAC;AAIxE;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;IAClD,OAAO,CAAC,MAAM,CAAS;;IASvB,OAAO,IAAI,MAAM;IAIjB,cAAc,IAAI,MAAM;IAIlB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBjD,OAAO,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,mBAAmB,EAC3B,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC/C,YAAY,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,OAAO,CAAA;KAAE,GAClE,OAAO,CAAC,aAAa,CAAC;YA8DX,cAAc;IAwC5B,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,mBAAmB;IAe3B,sBAAsB,IAAI,MAAM,EAAE;IAI5B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAMrC,eAAe,IAAI,MAAM,EAAE;CAO5B"}
@@ -3,10 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ToolCheckProvider = void 0;
4
4
  const check_provider_interface_1 = require("./check-provider.interface");
5
5
  const child_process_1 = require("child_process");
6
+ const liquidjs_1 = require("liquidjs");
6
7
  /**
7
- * Check provider that executes external tools (linters, analyzers, etc.)
8
+ * Check provider that executes external tools and commands with Liquid template support
9
+ * Supports both simple commands and complex templated execution with stdin
8
10
  */
9
11
  class ToolCheckProvider extends check_provider_interface_1.CheckProvider {
12
+ liquid;
13
+ constructor() {
14
+ super();
15
+ this.liquid = new liquidjs_1.Liquid({
16
+ strictVariables: false,
17
+ strictFilters: false,
18
+ });
19
+ }
10
20
  getName() {
11
21
  return 'tool';
12
22
  }
@@ -22,25 +32,55 @@ class ToolCheckProvider extends check_provider_interface_1.CheckProvider {
22
32
  if (cfg.type !== 'tool') {
23
33
  return false;
24
34
  }
25
- // Must have command specified
26
- if (typeof cfg.command !== 'string' || !cfg.command) {
35
+ // Must have exec specified for tool execution
36
+ if (typeof cfg.exec !== 'string' || !cfg.exec) {
27
37
  return false;
28
38
  }
29
39
  return true;
30
40
  }
31
41
  async execute(prInfo, config, _dependencyResults, _sessionInfo) {
32
- const command = config.command;
33
- const args = config.args || [];
34
- const files = prInfo.files.map(f => f.filename);
42
+ const execTemplate = config.exec;
43
+ const stdinTemplate = config.stdin;
44
+ // Prepare template context
45
+ const templateContext = {
46
+ pr: {
47
+ number: prInfo.number,
48
+ title: prInfo.title,
49
+ body: prInfo.body,
50
+ author: prInfo.author,
51
+ base: prInfo.base,
52
+ head: prInfo.head,
53
+ totalAdditions: prInfo.totalAdditions,
54
+ totalDeletions: prInfo.totalDeletions,
55
+ },
56
+ files: prInfo.files.map(f => ({
57
+ filename: f.filename,
58
+ status: f.status,
59
+ additions: f.additions,
60
+ deletions: f.deletions,
61
+ changes: f.changes,
62
+ patch: f.patch,
63
+ })),
64
+ // Add convenience arrays for common use cases
65
+ filenames: prInfo.files.map(f => f.filename),
66
+ config: config, // Allow access to config values in templates
67
+ };
68
+ // Render the command template
69
+ const renderedCommand = await this.liquid.parseAndRender(execTemplate, templateContext);
70
+ // Render stdin if provided
71
+ let renderedStdin;
72
+ if (stdinTemplate) {
73
+ renderedStdin = await this.liquid.parseAndRender(stdinTemplate, templateContext);
74
+ }
35
75
  // Execute the tool
36
- const output = await this.executeCommand(command, args, files);
76
+ const output = await this.executeCommand(renderedCommand.trim(), renderedStdin);
37
77
  // Parse tool output (this would be customized per tool)
38
- const comments = this.parseToolOutput(output, command);
78
+ const comments = this.parseToolOutput(output, renderedCommand);
39
79
  const issues = comments.map(comment => ({
40
80
  file: comment.file,
41
81
  line: comment.line,
42
82
  endLine: undefined,
43
- ruleId: `${command}/${comment.category}`,
83
+ ruleId: `tool/${comment.category}`,
44
84
  message: comment.message,
45
85
  severity: comment.severity,
46
86
  category: comment.category,
@@ -49,12 +89,16 @@ class ToolCheckProvider extends check_provider_interface_1.CheckProvider {
49
89
  }));
50
90
  return {
51
91
  issues,
52
- suggestions: this.generateSuggestions(comments, command),
92
+ suggestions: this.generateSuggestions(comments, renderedCommand),
53
93
  };
54
94
  }
55
- async executeCommand(command, args, files) {
95
+ async executeCommand(command, stdin) {
56
96
  return new Promise((resolve, reject) => {
57
- const child = (0, child_process_1.spawn)(command, [...args, ...files], {
97
+ // Parse command and arguments (handle quoted arguments)
98
+ const parts = command.match(/(?:[^\s"]+|"[^"]*")+/g) || [command];
99
+ const cmd = parts[0];
100
+ const args = parts.slice(1).map(arg => arg.replace(/^"(.*)"$/, '$1'));
101
+ const child = (0, child_process_1.spawn)(cmd, args, {
58
102
  shell: false,
59
103
  stdio: ['pipe', 'pipe', 'pipe'],
60
104
  });
@@ -66,12 +110,17 @@ class ToolCheckProvider extends check_provider_interface_1.CheckProvider {
66
110
  child.stderr.on('data', data => {
67
111
  error += data.toString();
68
112
  });
113
+ // Send stdin data if provided
114
+ if (stdin) {
115
+ child.stdin.write(stdin);
116
+ child.stdin.end();
117
+ }
69
118
  child.on('close', _code => {
70
- // Many linters return non-zero on issues found
119
+ // Many tools return non-zero on issues found
71
120
  resolve(output || error);
72
121
  });
73
122
  child.on('error', err => {
74
- reject(new Error(`Failed to execute ${command}: ${err.message}`));
123
+ reject(new Error(`Failed to execute ${cmd}: ${err.message}`));
75
124
  });
76
125
  });
77
126
  }
@@ -106,7 +155,7 @@ class ToolCheckProvider extends check_provider_interface_1.CheckProvider {
106
155
  return suggestions;
107
156
  }
108
157
  getSupportedConfigKeys() {
109
- return ['type', 'command', 'args', 'timeout', 'workingDirectory'];
158
+ return ['type', 'exec', 'command', 'stdin', 'timeout', 'workingDirectory'];
110
159
  }
111
160
  async isAvailable() {
112
161
  // Check if common tools are available
@@ -1 +1 @@
1
- {"version":3,"file":"tool-check-provider.js","sourceRoot":"","sources":["../../src/providers/tool-check-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-check-provider.js","sourceRoot":"","sources":["../../src/providers/tool-check-provider.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { Octokit } from '@octokit/rest';
2
2
  import { PRInfo } from './pr-analyzer';
3
3
  import { AIDebugInfo } from './ai-review-service';
4
- import { CustomTemplateConfig } from './types/config';
5
4
  export interface ReviewIssue {
6
5
  file: string;
7
6
  line: number;
@@ -13,7 +12,6 @@ export interface ReviewIssue {
13
12
  group?: string;
14
13
  schema?: string;
15
14
  timestamp?: number;
16
- template?: CustomTemplateConfig;
17
15
  suggestion?: string;
18
16
  replacement?: string;
19
17
  }
@@ -27,12 +25,25 @@ export interface ReviewComment {
27
25
  replacement?: string;
28
26
  ruleId?: string;
29
27
  }
28
+ export interface CheckResult {
29
+ checkName: string;
30
+ content: string;
31
+ group: string;
32
+ debug?: AIDebugInfo;
33
+ issues?: ReviewIssue[];
34
+ }
35
+ export interface GroupedCheckResults {
36
+ [groupName: string]: CheckResult[];
37
+ }
30
38
  export interface ReviewSummary {
31
- issues: ReviewIssue[];
32
- suggestions: string[];
33
- /** Debug information (only included when debug mode is enabled) */
39
+ issues?: ReviewIssue[];
40
+ suggestions?: string[];
34
41
  debug?: AIDebugInfo;
35
42
  }
43
+ export declare function convertReviewSummaryToGroupedResults(reviewSummary: ReviewSummary, checkName?: string, groupName?: string): GroupedCheckResults;
44
+ export declare function calculateTotalIssues(issues?: ReviewIssue[]): number;
45
+ export declare function calculateCriticalIssues(issues?: ReviewIssue[]): number;
46
+ export declare function convertIssuesToComments(issues: ReviewIssue[]): ReviewComment[];
36
47
  export interface ReviewOptions {
37
48
  focus?: 'security' | 'performance' | 'style' | 'all';
38
49
  format?: 'table' | 'json' | 'markdown' | 'sarif';
@@ -41,48 +52,19 @@ export interface ReviewOptions {
41
52
  checks?: string[];
42
53
  parallelExecution?: boolean;
43
54
  }
44
- export declare function calculateTotalIssues(issues: ReviewIssue[]): number;
45
- export declare function calculateCriticalIssues(issues: ReviewIssue[]): number;
46
- export declare function convertIssuesToComments(issues: ReviewIssue[]): ReviewComment[];
47
55
  export declare class PRReviewer {
48
56
  private octokit;
49
57
  private commentManager;
50
58
  private aiReviewService;
51
59
  constructor(octokit: Octokit);
52
- reviewPR(owner: string, repo: string, prNumber: number, prInfo: PRInfo, options?: ReviewOptions): Promise<ReviewSummary>;
53
- postReviewComment(owner: string, repo: string, prNumber: number, summary: ReviewSummary, options?: ReviewOptions & {
60
+ reviewPR(owner: string, repo: string, prNumber: number, prInfo: PRInfo, options?: ReviewOptions): Promise<GroupedCheckResults>;
61
+ postReviewComment(owner: string, repo: string, prNumber: number, groupedResults: GroupedCheckResults, options?: ReviewOptions & {
54
62
  commentId?: string;
55
63
  triggeredBy?: string;
56
64
  commitSha?: string;
57
65
  }): Promise<void>;
58
- private formatReviewCommentWithVisorFormat;
59
- private renderWithSchemaTemplate;
60
- private generateGitHubDiffHash;
61
- private enhanceIssuesWithGitHubLinks;
62
- private renderSingleCheckTemplate;
63
- private groupIssuesByCheck;
64
- private extractCheckNameFromRuleId;
65
- private groupIssuesByGroup;
66
- private formatReviewComment;
67
- private groupCommentsByCategory;
68
- private groupCommentsByCheck;
66
+ private formatGroupComment;
69
67
  private formatDebugSection;
70
68
  private saveDebugArtifact;
71
- private formatDebugAsMarkdown;
72
- private parseCheckSections;
73
- private formatIssuesTable;
74
- private getLanguageHint;
75
- /**
76
- * Load custom template content from file or raw content
77
- */
78
- private loadCustomTemplate;
79
- /**
80
- * Detect if a string is likely a file path and if the file exists
81
- */
82
- private isFilePath;
83
- /**
84
- * Safely load template from file with security checks
85
- */
86
- private loadTemplateFromFile;
87
69
  }
88
70
  //# sourceMappingURL=reviewer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewer.d.ts","sourceRoot":"","sources":["../src/reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAmB,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAInE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,MAAM,WAAW,WAAW;IAE1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC;IAG3E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAGhC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAE5B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,mEAAmE;IACnE,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,KAAK,CAAC;IACrD,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,gBAAgB,EAAE,WAAW,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAGD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAElE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAErE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,EAAE,CAW9E;AAED,qBAAa,UAAU;IAIT,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;gBAErB,OAAO,EAAE,OAAO;IAK9B,QAAQ,CACZ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,aAAa,CAAC;IA8BnB,iBAAiB,CACrB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,aAAa,EACtB,OAAO,GAAE,aAAa,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GAC7F,OAAO,CAAC,IAAI,CAAC;YAkEF,kCAAkC;YA4BlC,wBAAwB;IAkDtC,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,4BAA4B;YAwBtB,yBAAyB;IAgDvC,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,0BAA0B;IAOlC,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,mBAAmB;IAiD3B,OAAO,CAAC,uBAAuB;IAmB/B,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,kBAAkB;IA4F1B,OAAO,CAAC,iBAAiB;IA4BzB,OAAO,CAAC,qBAAqB;IA2F7B,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,iBAAiB;IAuFzB,OAAO,CAAC,eAAe;IAsCvB;;OAEG;YACW,kBAAkB;IAmBhC;;OAEG;YACW,UAAU;IAqExB;;OAEG;YACW,oBAAoB;CA4CnC"}
1
+ {"version":3,"file":"reviewer.d.ts","sourceRoot":"","sources":["../src/reviewer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAmB,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEnE,MAAM,WAAW,WAAW;IAE1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC;IAE3E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAGD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;CACxB;AAGD,MAAM,WAAW,mBAAmB;IAClC,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;CACpC;AAGD,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,WAAW,CAAC;CACrB;AAID,wBAAgB,oCAAoC,CAClD,aAAa,EAAE,aAAa,EAC5B,SAAS,GAAE,MAAqB,EAChC,SAAS,GAAE,MAAkB,GAC5B,mBAAmB,CAmCrB;AAID,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAEnE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAEtE;AAGD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,EAAE,CAW9E;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,KAAK,CAAC;IACrD,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,gBAAgB,EAAE,WAAW,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,qBAAa,UAAU;IAIT,OAAO,CAAC,OAAO;IAH3B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;gBAErB,OAAO,EAAE,OAAO;IAK9B,QAAQ,CACZ,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC;IAuBzB,iBAAiB,CACrB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,mBAAmB,EACnC,OAAO,GAAE,aAAa,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GAC7F,OAAO,CAAC,IAAI,CAAC;YAuBF,kBAAkB;IAyBhC,OAAO,CAAC,kBAAkB;IAkF1B,OAAO,CAAC,iBAAiB;CAyC1B"}