lamps-code-review 0.2.0 → 0.2.3

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 (57) hide show
  1. package/dist/cli/commands/review.js +5 -41
  2. package/dist/cli/commands/review.js.map +1 -1
  3. package/dist/cli/index.js +5 -7
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/core/analyzer/ai/context.d.ts.map +1 -1
  6. package/dist/core/analyzer/ai/context.js +29 -66
  7. package/dist/core/analyzer/ai/context.js.map +1 -1
  8. package/dist/core/analyzer/ai/index.d.ts.map +1 -1
  9. package/dist/core/analyzer/ai/index.js +69 -41
  10. package/dist/core/analyzer/ai/index.js.map +1 -1
  11. package/dist/core/analyzer/ai/openrouter.js +3 -9
  12. package/dist/core/analyzer/ai/openrouter.js.map +1 -1
  13. package/dist/core/analyzer/ai/passes.d.ts.map +1 -1
  14. package/dist/core/analyzer/ai/passes.js +52 -38
  15. package/dist/core/analyzer/ai/passes.js.map +1 -1
  16. package/dist/core/analyzer/ai/prompts.js +3 -8
  17. package/dist/core/analyzer/ai/prompts.js.map +1 -1
  18. package/dist/core/analyzer/ai/slices.js +5 -12
  19. package/dist/core/analyzer/ai/slices.js.map +1 -1
  20. package/dist/core/analyzer/dependency/index.d.ts.map +1 -1
  21. package/dist/core/analyzer/dependency/index.js +27 -45
  22. package/dist/core/analyzer/dependency/index.js.map +1 -1
  23. package/dist/core/analyzer/index.js +12 -33
  24. package/dist/core/analyzer/index.js.map +1 -1
  25. package/dist/core/analyzer/static/index.js +3 -8
  26. package/dist/core/analyzer/static/index.js.map +1 -1
  27. package/dist/core/analyzer/types.js +1 -5
  28. package/dist/core/analyzer/types.js.map +1 -1
  29. package/dist/core/config/index.d.ts.map +1 -1
  30. package/dist/core/config/index.js +19 -51
  31. package/dist/core/config/index.js.map +1 -1
  32. package/dist/core/detector/index.js +3 -39
  33. package/dist/core/detector/index.js.map +1 -1
  34. package/dist/core/reporter/formats/json.js +2 -6
  35. package/dist/core/reporter/formats/json.js.map +1 -1
  36. package/dist/core/reporter/index.js +6 -13
  37. package/dist/core/reporter/index.js.map +1 -1
  38. package/dist/core/scanner/ignore-rules.js +3 -39
  39. package/dist/core/scanner/ignore-rules.js.map +1 -1
  40. package/dist/core/scanner/index.js +14 -51
  41. package/dist/core/scanner/index.js.map +1 -1
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +24 -35
  44. package/dist/index.js.map +1 -1
  45. package/dist/types/index.d.ts +11 -0
  46. package/dist/types/index.d.ts.map +1 -1
  47. package/dist/types/index.js +1 -4
  48. package/dist/types/index.js.map +1 -1
  49. package/dist/utils/index.d.ts +1 -0
  50. package/dist/utils/index.d.ts.map +1 -1
  51. package/dist/utils/index.js +15 -59
  52. package/dist/utils/index.js.map +1 -1
  53. package/dist/utils/logger.d.ts +17 -0
  54. package/dist/utils/logger.d.ts.map +1 -0
  55. package/dist/utils/logger.js +47 -0
  56. package/dist/utils/logger.js.map +1 -0
  57. package/package.json +2 -1
@@ -1,21 +1,18 @@
1
- "use strict";
2
1
  /**
3
2
  * AI Analyzer module
4
3
  * Multi-pass AI-powered code review using OpenRouter
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.OpenRouterError = exports.AIAnalyzer = void 0;
8
- exports.createAIAnalyzer = createAIAnalyzer;
9
- const types_js_1 = require("../types.js");
10
- const openrouter_js_1 = require("./openrouter.js");
11
- const index_js_1 = require("../../config/index.js");
12
- const context_js_1 = require("./context.js");
13
- const passes_js_1 = require("./passes.js");
14
- const prompts_js_1 = require("./prompts.js");
5
+ import { BaseAnalyzer } from '../types.js';
6
+ import { chat, OpenRouterError } from './openrouter.js';
7
+ import { getOpenRouterKey, hasOpenRouterKey } from '../../config/index.js';
8
+ import { buildArchitectureContext, buildDeepDiveContext, buildSecurityContext, getDependencyGraphFromResults, createEmptyGraph, } from './context.js';
9
+ import { PASS_SYSTEM_PROMPTS, buildPassPrompt } from './passes.js';
10
+ import { parseAIResponse } from './prompts.js';
11
+ import { createLogger } from '../../../utils/logger.js';
15
12
  /**
16
13
  * Multi-pass AI-powered code analyzer using OpenRouter
17
14
  */
18
- class AIAnalyzer extends types_js_1.BaseAnalyzer {
15
+ export class AIAnalyzer extends BaseAnalyzer {
19
16
  constructor(config) {
20
17
  super();
21
18
  this.config = config;
@@ -27,8 +24,10 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
27
24
  }
28
25
  async analyze(context) {
29
26
  const startTime = Date.now();
27
+ const logger = context.logger || createLogger(false);
30
28
  // Check for API key
31
- if (!(0, index_js_1.hasOpenRouterKey)()) {
29
+ if (!hasOpenRouterKey()) {
30
+ logger.warn('OPENROUTER_API_KEY not set - skipping AI analysis');
32
31
  return this.createResult([
33
32
  {
34
33
  ruleId: 'ai/no-api-key',
@@ -39,51 +38,62 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
39
38
  ], startTime, { skipped: true, reason: 'no-api-key' });
40
39
  }
41
40
  if (context.files.length === 0) {
41
+ logger.warn('No files to analyze');
42
42
  return this.createResult([], startTime, {
43
43
  skipped: true,
44
44
  reason: 'no-files',
45
45
  });
46
46
  }
47
47
  try {
48
+ logger.phase('AI Analysis (Multi-Pass)');
49
+ logger.step(`Model: ${this.config.model}`);
50
+ logger.step(`Files in codebase: ${context.files.length}`);
48
51
  // Get dependency graph from static phase results (if available)
49
- // This will be set by the pipeline from previous phase results
50
- const graph = this.getDependencyGraph(context) || (0, context_js_1.createEmptyGraph)(context.files);
52
+ const graph = this.getDependencyGraph(context) || createEmptyGraph(context.files);
53
+ // Log graph stats
54
+ const graphStats = {
55
+ entryPoints: graph.entryPoints.length,
56
+ configFiles: graph.configFiles.length,
57
+ apiFiles: graph.apiFiles.length,
58
+ };
59
+ logger.detail(`Dependency graph: ${graphStats.entryPoints} entry points, ${graphStats.configFiles} configs, ${graphStats.apiFiles} API routes`);
51
60
  // Collect static findings for context
52
61
  this.staticFindings = this.getStaticFindings(context);
62
+ if (this.staticFindings.length > 0) {
63
+ logger.detail(`Static findings to incorporate: ${this.staticFindings.length}`);
64
+ }
53
65
  // Run all passes
54
66
  const allPassResults = [];
55
67
  const allFindings = [];
56
- // Log start
57
- if (context.config.verbose) {
58
- console.log('Starting multi-pass AI analysis...');
59
- }
60
68
  // Pass 1: Architecture
69
+ logger.step('Pass 1/3: Architecture Review');
61
70
  const archResult = await this.runPass('architecture', context, graph, allFindings);
62
71
  allPassResults.push(archResult);
63
72
  allFindings.push(...archResult.findings);
64
- if (context.config.verbose) {
65
- console.log(` Architecture pass: ${archResult.findings.length} findings`);
66
- }
73
+ logger.success(`Architecture: ${archResult.findings.length} findings`);
67
74
  // Pass 2: Deep Dive
75
+ logger.step('Pass 2/3: Deep Dive Review');
68
76
  const deepResult = await this.runPass('deep-dive', context, graph, allFindings);
69
77
  allPassResults.push(deepResult);
70
78
  allFindings.push(...deepResult.findings);
71
- if (context.config.verbose) {
72
- console.log(` Deep-dive pass: ${deepResult.findings.length} findings`);
73
- }
79
+ logger.success(`Deep-dive: ${deepResult.findings.length} findings`);
74
80
  // Pass 3: Security
81
+ logger.step('Pass 3/3: Security Review');
75
82
  const secResult = await this.runPass('security', context, graph, allFindings);
76
83
  allPassResults.push(secResult);
77
84
  allFindings.push(...secResult.findings);
78
- if (context.config.verbose) {
79
- console.log(` Security pass: ${secResult.findings.length} findings`);
80
- }
85
+ logger.success(`Security: ${secResult.findings.length} findings`);
81
86
  // Deduplicate findings
82
87
  const dedupedFindings = this.deduplicateFindings(allFindings);
88
+ if (allFindings.length !== dedupedFindings.length) {
89
+ logger.detail(`Deduplicated: ${allFindings.length} → ${dedupedFindings.length} findings`);
90
+ }
83
91
  // Combine summaries
84
92
  const combinedSummary = allPassResults
85
93
  .map((r) => `**${r.pass}**: ${r.summary}`)
86
94
  .join('\n\n');
95
+ const duration = Date.now() - startTime;
96
+ logger.success(`AI analysis complete in ${(duration / 1000).toFixed(1)}s`);
87
97
  return this.createResult(dedupedFindings, startTime, {
88
98
  model: this.config.model,
89
99
  summary: combinedSummary,
@@ -94,11 +104,12 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
94
104
  }
95
105
  catch (error) {
96
106
  // Handle errors gracefully
97
- const errorMessage = error instanceof openrouter_js_1.OpenRouterError
107
+ const errorMessage = error instanceof OpenRouterError
98
108
  ? error.message
99
109
  : error instanceof Error
100
110
  ? error.message
101
111
  : 'Unknown error during AI analysis';
112
+ logger.warn(`AI analysis failed: ${errorMessage}`);
102
113
  return this.createResult([
103
114
  {
104
115
  ruleId: 'ai/error',
@@ -113,21 +124,36 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
113
124
  * Run a single AI pass
114
125
  */
115
126
  async runPass(passType, context, graph, previousFindings) {
127
+ const logger = context.logger || createLogger(false);
116
128
  // Build context for this pass
117
129
  let reviewContext;
118
130
  switch (passType) {
119
131
  case 'architecture':
120
- reviewContext = await (0, context_js_1.buildArchitectureContext)(context, graph);
132
+ reviewContext = await buildArchitectureContext(context, graph);
121
133
  break;
122
134
  case 'deep-dive':
123
- reviewContext = await (0, context_js_1.buildDeepDiveContext)(context, graph, this.staticFindings, previousFindings.filter((f) => f.ruleId.startsWith('ai/arch')));
135
+ reviewContext = await buildDeepDiveContext(context, graph, this.staticFindings, previousFindings.filter((f) => f.ruleId.startsWith('ai/arch')));
124
136
  break;
125
137
  case 'security':
126
- reviewContext = await (0, context_js_1.buildSecurityContext)(context, graph);
138
+ reviewContext = await buildSecurityContext(context, graph);
127
139
  break;
128
140
  }
141
+ // Log context details
142
+ logger.detail(`Sending ${reviewContext.files.length} files (~${Math.round(reviewContext.metadata.totalTokenEstimate / 1000)}K tokens)`);
143
+ if (reviewContext.files.length > 0 && reviewContext.files.length <= 5) {
144
+ for (const file of reviewContext.files) {
145
+ logger.detail(` ${file.path} (${file.reason})`);
146
+ }
147
+ }
148
+ else if (reviewContext.files.length > 5) {
149
+ for (const file of reviewContext.files.slice(0, 3)) {
150
+ logger.detail(` ${file.path} (${file.reason})`);
151
+ }
152
+ logger.detail(` ... and ${reviewContext.files.length - 3} more files`);
153
+ }
129
154
  // Skip if no files to review
130
155
  if (reviewContext.files.length === 0) {
156
+ logger.warn(`No relevant files for ${passType} review`);
131
157
  return {
132
158
  pass: passType,
133
159
  findings: [],
@@ -135,13 +161,17 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
135
161
  };
136
162
  }
137
163
  // Build prompts
138
- const systemPrompt = passes_js_1.PASS_SYSTEM_PROMPTS[passType];
139
- const userPrompt = (0, passes_js_1.buildPassPrompt)(reviewContext, this.config.customPrompt);
164
+ const systemPrompt = PASS_SYSTEM_PROMPTS[passType];
165
+ const userPrompt = buildPassPrompt(reviewContext, this.config.customPrompt);
140
166
  // Call AI
141
- const apiKey = (0, index_js_1.getOpenRouterKey)();
142
- const response = await (0, openrouter_js_1.chat)(systemPrompt, userPrompt, this.config, apiKey);
167
+ logger.detail('Calling AI...');
168
+ const callStart = Date.now();
169
+ const apiKey = getOpenRouterKey();
170
+ const response = await chat(systemPrompt, userPrompt, this.config, apiKey);
171
+ const callDuration = Date.now() - callStart;
172
+ logger.detail(`AI responded in ${(callDuration / 1000).toFixed(1)}s`);
143
173
  // Parse response
144
- const parsed = (0, prompts_js_1.parseAIResponse)(response);
174
+ const parsed = parseAIResponse(response);
145
175
  // Convert to findings with proper severity types
146
176
  const findings = parsed.findings.map((f) => ({
147
177
  ruleId: f.ruleId,
@@ -165,7 +195,7 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
165
195
  // after the static phase runs
166
196
  const metadata = context._previousResults;
167
197
  if (metadata) {
168
- return (0, context_js_1.getDependencyGraphFromResults)(metadata);
198
+ return getDependencyGraphFromResults(metadata);
169
199
  }
170
200
  return null;
171
201
  }
@@ -218,14 +248,12 @@ class AIAnalyzer extends types_js_1.BaseAnalyzer {
218
248
  .slice(0, 50);
219
249
  }
220
250
  }
221
- exports.AIAnalyzer = AIAnalyzer;
222
251
  /**
223
252
  * Create an AI analyzer with the given configuration
224
253
  */
225
- function createAIAnalyzer(config) {
254
+ export function createAIAnalyzer(config) {
226
255
  return new AIAnalyzer(config);
227
256
  }
228
257
  // Re-export for convenience
229
- var openrouter_js_2 = require("./openrouter.js");
230
- Object.defineProperty(exports, "OpenRouterError", { enumerable: true, get: function () { return openrouter_js_2.OpenRouterError; } });
258
+ export { OpenRouterError } from './openrouter.js';
231
259
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/index.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,11 @@
1
- "use strict";
2
1
  /**
3
2
  * OpenRouter API client
4
3
  * Handles communication with OpenRouter for AI model access
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.OpenRouterError = void 0;
8
- exports.callOpenRouter = callOpenRouter;
9
- exports.chat = chat;
10
5
  /** OpenRouter API endpoint */
11
6
  const OPENROUTER_API_URL = 'https://openrouter.ai/api/v1/chat/completions';
12
7
  /** Error from OpenRouter API */
13
- class OpenRouterError extends Error {
8
+ export class OpenRouterError extends Error {
14
9
  constructor(message, code, status) {
15
10
  super(message);
16
11
  this.code = code;
@@ -18,11 +13,10 @@ class OpenRouterError extends Error {
18
13
  this.name = 'OpenRouterError';
19
14
  }
20
15
  }
21
- exports.OpenRouterError = OpenRouterError;
22
16
  /**
23
17
  * Call OpenRouter API with a prompt
24
18
  */
25
- async function callOpenRouter(messages, config, apiKey) {
19
+ export async function callOpenRouter(messages, config, apiKey) {
26
20
  const response = await fetch(OPENROUTER_API_URL, {
27
21
  method: 'POST',
28
22
  headers: {
@@ -67,7 +61,7 @@ async function callOpenRouter(messages, config, apiKey) {
67
61
  /**
68
62
  * Simple helper to create a chat completion
69
63
  */
70
- async function chat(systemPrompt, userPrompt, config, apiKey) {
64
+ export async function chat(systemPrompt, userPrompt, config, apiKey) {
71
65
  const messages = [
72
66
  { role: 'system', content: systemPrompt },
73
67
  { role: 'user', content: userPrompt },
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/openrouter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAiDH,wCAmDC;AAKD,oBAYC;AAjHD,8BAA8B;AAC9B,MAAM,kBAAkB,GAAG,+CAA+C,CAAC;AA6B3E,gCAAgC;AAChC,MAAa,eAAgB,SAAQ,KAAK;IACxC,YACE,OAAe,EACC,IAAa,EACb,MAAe;QAE/B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAS;QACb,WAAM,GAAN,MAAM,CAAS;QAG/B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AATD,0CASC;AAED;;GAEG;AACI,KAAK,UAAU,cAAc,CAClC,QAAuB,EACvB,MAAgB,EAChB,MAAc;IAEd,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,kBAAkB,EAAE;QAC/C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,cAAc,EAAE,kBAAkB;YAClC,cAAc,EAAE,sCAAsC;YACtD,SAAS,EAAE,iBAAiB;SAC7B;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ;YACR,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;KACH,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,YAAY,GAAG,yBAAyB,QAAQ,CAAC,MAAM,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACxC,IAAI,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;gBAC7B,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;YACjC,IAAI,SAAS,EAAE,CAAC;gBACd,YAAY,GAAG,SAAS,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;IAE3D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,eAAe,CAAC,2BAA2B,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;AACzC,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,IAAI,CACxB,YAAoB,EACpB,UAAkB,EAClB,MAAgB,EAChB,MAAc;IAEd,MAAM,QAAQ,GAAkB;QAC9B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;QACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE;KACtC,CAAC;IAEF,OAAO,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"openrouter.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/openrouter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,8BAA8B;AAC9B,MAAM,kBAAkB,GAAG,+CAA+C,CAAC;AA6B3E,gCAAgC;AAChC,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YACE,OAAe,EACC,IAAa,EACb,MAAe;QAE/B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAS;QACb,WAAM,GAAN,MAAM,CAAS;QAG/B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAuB,EACvB,MAAgB,EAChB,MAAc;IAEd,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,kBAAkB,EAAE;QAC/C,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,cAAc,EAAE,kBAAkB;YAClC,cAAc,EAAE,sCAAsC;YACtD,SAAS,EAAE,iBAAiB;SAC7B;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ;YACR,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;KACH,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,IAAI,YAAY,GAAG,yBAAyB,QAAQ,CAAC,MAAM,EAAE,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACxC,IAAI,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;gBAC7B,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,iCAAiC;YACjC,IAAI,SAAS,EAAE,CAAC;gBACd,YAAY,GAAG,SAAS,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,IAAI,eAAe,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;IAE3D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,eAAe,CAAC,2BAA2B,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,YAAoB,EACpB,UAAkB,EAClB,MAAgB,EAChB,MAAc;IAEd,MAAM,QAAQ,GAAkB;QAC9B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;QACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE;KACtC,CAAC;IAEF,OAAO,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAClD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"passes.d.ts","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/passes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAe,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CA6C1D,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAgCrF"}
1
+ {"version":3,"file":"passes.d.ts","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/passes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAe,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CA+D1D,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAgCrF"}
@@ -1,62 +1,76 @@
1
- "use strict";
2
1
  /**
3
2
  * Pass-Specific Prompts
4
3
  * Tailored prompts for each AI review pass
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.PASS_SYSTEM_PROMPTS = void 0;
8
- exports.buildPassPrompt = buildPassPrompt;
9
5
  /**
10
6
  * System prompts for each pass type
11
7
  */
12
- exports.PASS_SYSTEM_PROMPTS = {
8
+ export const PASS_SYSTEM_PROMPTS = {
13
9
  architecture: `You are an expert software architect reviewing a codebase's structure and organization.
14
10
 
15
- Focus on:
16
- 1. **Project Structure** - Is the organization logical? Are there missing directories or patterns?
17
- 2. **Dependencies** - Are there concerning dependencies? Version issues? Missing dependencies?
18
- 3. **Entry Points** - Are they well-organized? Clear application flow?
19
- 4. **Configuration** - Are configs complete? Missing environment handling?
20
- 5. **Architecture Patterns** - Consistent patterns? Clear separation of concerns?
21
- 6. **Scalability Concerns** - Any obvious bottlenecks or limitations?
11
+ IMPORTANT: The file tree provided shows ALL files that EXIST in this codebase. Do NOT report files as missing if they appear in the file tree - they exist. Only report genuinely missing files if the code imports something that doesn't exist in the tree.
22
12
 
23
- Be concise and focus on high-level issues. Don't comment on specific code implementation details - those will be covered in the deep dive pass.
13
+ Focus on REAL architectural issues:
14
+ 1. **Dependency Issues** - Circular dependencies, outdated packages, missing peer deps
15
+ 2. **Architecture Patterns** - Inconsistent patterns, poor separation of concerns
16
+ 3. **Configuration** - Missing required configs, insecure defaults
17
+ 4. **Scalability** - Obvious bottlenecks, hardcoded limits
18
+
19
+ DO NOT report:
20
+ - Files shown in the file tree as "missing" - they exist
21
+ - Style preferences or minor suggestions
22
+ - Anything that's working correctly
23
+
24
+ Keep findings to 5 or fewer. Only report significant architectural concerns.
24
25
 
25
26
  Respond with valid JSON only. No markdown, no explanations outside the JSON.`,
26
- 'deep-dive': `You are an expert senior software engineer conducting a thorough code review.
27
+ 'deep-dive': `You are an expert senior software engineer conducting a code review.
28
+
29
+ Focus ONLY on actual bugs and significant issues:
30
+ 1. **Real Bugs** - Logic errors that will cause incorrect behavior
31
+ 2. **Crash Risks** - Unhandled nulls that WILL throw, not theoretical ones
32
+ 3. **Security Holes** - Actual vulnerabilities, not theoretical concerns
33
+ 4. **Performance Problems** - Measurable issues like O(n²) in hot paths
27
34
 
28
- Focus on:
29
- 1. **Bugs and Logic Errors** - Off-by-one, null handling, race conditions, incorrect conditions
30
- 2. **Performance Issues** - N+1 queries, memory leaks, unnecessary re-renders, inefficient algorithms
31
- 3. **Code Quality** - Complexity, readability, maintainability, code smells
32
- 4. **Best Practices** - Framework-specific patterns, TypeScript/Python idioms, error handling
33
- 5. **Edge Cases** - Unhandled scenarios, missing validation, boundary conditions
35
+ DO NOT report:
36
+ - Style issues or formatting preferences
37
+ - "Could be improved" suggestions unless critical
38
+ - Missing error handling for unlikely edge cases
39
+ - Type annotations or documentation suggestions
40
+ - Things that are technically correct but could be "better"
34
41
 
35
- Be specific and actionable. Include line numbers when possible. Don't nitpick style issues unless they significantly affect readability.
42
+ QUALITY OVER QUANTITY: Report 10 or fewer findings. Only include issues that would fail a code review or cause production bugs. If the code is well-written, return fewer findings.
43
+
44
+ Be specific: include file paths and line numbers.
36
45
 
37
46
  Respond with valid JSON only. No markdown, no explanations outside the JSON.`,
38
47
  security: `You are a security expert conducting a security-focused code review.
39
48
 
40
- Focus on OWASP Top 10 and common vulnerabilities:
41
- 1. **Injection** - SQL, NoSQL, OS command, LDAP injection
42
- 2. **Broken Authentication** - Weak passwords, session issues, credential exposure
43
- 3. **Sensitive Data Exposure** - Unencrypted data, exposed secrets, logging sensitive info
44
- 4. **XXE** - XML external entity attacks
45
- 5. **Broken Access Control** - Missing authorization checks, IDOR, privilege escalation
46
- 6. **Security Misconfiguration** - Default configs, verbose errors, unnecessary features
47
- 7. **XSS** - Stored, reflected, DOM-based cross-site scripting
48
- 8. **Insecure Deserialization** - Untrusted data deserialization
49
- 9. **Using Components with Known Vulnerabilities** - Outdated dependencies
50
- 10. **Insufficient Logging** - Missing audit trails, security event logging
49
+ Focus on ACTUAL vulnerabilities that could be exploited:
50
+ 1. **Injection** - SQL, command injection with user input reaching dangerous functions
51
+ 2. **Auth Issues** - Broken authentication, missing authorization checks
52
+ 3. **Data Exposure** - Secrets in code, sensitive data in logs
53
+ 4. **XSS** - User input rendered without sanitization
54
+
55
+ DO NOT report:
56
+ - Theoretical vulnerabilities without a realistic attack vector
57
+ - "Best practice" suggestions that aren't actual vulnerabilities
58
+ - Missing features (like rate limiting) unless there's clear risk
59
+ - Source maps or debug settings in dev tools
60
+
61
+ AVOID FALSE POSITIVES: Only report issues you're confident about. If uncertain, don't include it. Quality over quantity - 5 or fewer findings unless there are genuine security holes.
51
62
 
52
- Be thorough but avoid false positives. If you're uncertain, mark severity as 'info' rather than 'error'.
63
+ Severity guide:
64
+ - error: Exploitable vulnerability with clear attack vector
65
+ - warning: Potential vulnerability requiring specific conditions
66
+ - info: Security improvement suggestion (use sparingly)
53
67
 
54
68
  Respond with valid JSON only. No markdown, no explanations outside the JSON.`,
55
69
  };
56
70
  /**
57
71
  * Build the user prompt for a specific pass
58
72
  */
59
- function buildPassPrompt(context, customPrompt) {
73
+ export function buildPassPrompt(context, customPrompt) {
60
74
  let prompt = '';
61
75
  // Add custom prompt if provided
62
76
  if (customPrompt) {
@@ -68,10 +82,10 @@ function buildPassPrompt(context, customPrompt) {
68
82
  prompt += `- **Files in This Review**: ${context.files.length}\n`;
69
83
  prompt += `- **Frameworks**: ${context.metadata.frameworks.join(', ') || 'None detected'}\n`;
70
84
  prompt += `- **Focus Areas**: ${context.metadata.focusAreas.join(', ')}\n\n`;
71
- // Add file tree for architecture pass
72
- if (context.pass === 'architecture') {
73
- prompt += `## File Tree\n\`\`\`\n`;
74
- prompt += context.files.map((f) => f.path).join('\n');
85
+ // Add full file tree for architecture pass (shows ALL existing files)
86
+ if (context.pass === 'architecture' && context.metadata.fullFileTree) {
87
+ prompt += `## Complete File Tree (${context.metadata.fullFileTree.length} files - these ALL EXIST)\n\`\`\`\n`;
88
+ prompt += context.metadata.fullFileTree.join('\n');
75
89
  prompt += `\n\`\`\`\n\n`;
76
90
  }
77
91
  prompt += `## Files to Review\n\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"passes.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/passes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"passes.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/passes.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,11 @@
1
- "use strict";
2
1
  /**
3
2
  * AI review prompts
4
3
  * Contains the system and user prompts for code review
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.DEFAULT_SYSTEM_PROMPT = void 0;
8
- exports.buildUserPrompt = buildUserPrompt;
9
- exports.parseAIResponse = parseAIResponse;
10
5
  /**
11
6
  * Default system prompt for code review
12
7
  */
13
- exports.DEFAULT_SYSTEM_PROMPT = `You are an expert senior software engineer conducting a thorough code review. Your goal is to identify issues that matter and provide actionable feedback.
8
+ export const DEFAULT_SYSTEM_PROMPT = `You are an expert senior software engineer conducting a thorough code review. Your goal is to identify issues that matter and provide actionable feedback.
14
9
 
15
10
  Focus on:
16
11
  1. **Security vulnerabilities** - SQL injection, XSS, command injection, auth issues, secrets exposure
@@ -26,7 +21,7 @@ You MUST respond with valid JSON only. No markdown, no explanations outside the
26
21
  /**
27
22
  * Build the user prompt with codebase content
28
23
  */
29
- function buildUserPrompt(files, frameworks, customPrompt) {
24
+ export function buildUserPrompt(files, frameworks, customPrompt) {
30
25
  const frameworkList = frameworks.frameworks
31
26
  .map((f) => `${f.framework} (${Math.round(f.confidence * 100)}%)`)
32
27
  .join(', ');
@@ -113,7 +108,7 @@ function getLanguageId(extension) {
113
108
  /**
114
109
  * Parse the AI response, handling various formats
115
110
  */
116
- function parseAIResponse(response) {
111
+ export function parseAIResponse(response) {
117
112
  // Try to extract JSON from the response
118
113
  let jsonStr = response.trim();
119
114
  // Remove markdown code blocks if present
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/prompts.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,7 @@
1
- "use strict";
2
1
  /**
3
2
  * Code Slicing Utilities
4
3
  * Extract relevant portions of large files for AI analysis
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.extractSlices = extractSlices;
8
- exports.mergeOverlappingSlices = mergeOverlappingSlices;
9
- exports.reconstructSliceContent = reconstructSliceContent;
10
- exports.estimateTokens = estimateTokens;
11
- exports.getExportSummary = getExportSummary;
12
5
  /** Context lines to include around a point of interest */
13
6
  const CONTEXT_LINES = 10;
14
7
  /** Maximum slice size in characters */
@@ -35,7 +28,7 @@ const IMPORTANT_PATTERNS = [
35
28
  /**
36
29
  * Extract relevant code slices from file content
37
30
  */
38
- function extractSlices(content, filePath, options = {}) {
31
+ export function extractSlices(content, filePath, options = {}) {
39
32
  const lines = content.split('\n');
40
33
  const slices = [];
41
34
  const { staticFindings = [], includeExports = true, includeSecurity = true, includeDefinitions = true, maxTotalSize = 20000, } = options;
@@ -190,7 +183,7 @@ function sliceOverlaps(existing, newSlice) {
190
183
  /**
191
184
  * Merge overlapping slices into contiguous blocks
192
185
  */
193
- function mergeOverlappingSlices(slices) {
186
+ export function mergeOverlappingSlices(slices) {
194
187
  if (slices.length === 0)
195
188
  return [];
196
189
  // Sort by start line
@@ -227,7 +220,7 @@ function combineReasons(reason1, reason2) {
227
220
  * Reconstruct slice content from original file
228
221
  * Used after merging to get correct content
229
222
  */
230
- function reconstructSliceContent(content, slices) {
223
+ export function reconstructSliceContent(content, slices) {
231
224
  const lines = content.split('\n');
232
225
  return slices.map((slice) => ({
233
226
  ...slice,
@@ -238,13 +231,13 @@ function reconstructSliceContent(content, slices) {
238
231
  * Estimate token count for content (rough approximation)
239
232
  * Uses ~4 characters per token heuristic
240
233
  */
241
- function estimateTokens(content) {
234
+ export function estimateTokens(content) {
242
235
  return Math.ceil(content.length / 4);
243
236
  }
244
237
  /**
245
238
  * Get a summary of what a file exports (for architecture pass)
246
239
  */
247
- function getExportSummary(content, extension) {
240
+ export function getExportSummary(content, extension) {
248
241
  const exports = [];
249
242
  if (['.ts', '.tsx', '.js', '.jsx', '.mjs'].includes(extension)) {
250
243
  // Named exports with types
@@ -1 +1 @@
1
- {"version":3,"file":"slices.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/slices.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slices.js","sourceRoot":"","sources":["../../../../src/core/analyzer/ai/slices.ts"],"names":[],"mappings":"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"}