driftdetect-core 0.9.45 → 0.9.47

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 (45) hide show
  1. package/dist/call-graph/analysis/coverage-analyzer.d.ts +6 -0
  2. package/dist/call-graph/analysis/coverage-analyzer.d.ts.map +1 -1
  3. package/dist/call-graph/analysis/coverage-analyzer.js +32 -4
  4. package/dist/call-graph/analysis/coverage-analyzer.js.map +1 -1
  5. package/dist/call-graph/analysis/dead-code-detector.d.ts +6 -0
  6. package/dist/call-graph/analysis/dead-code-detector.d.ts.map +1 -1
  7. package/dist/call-graph/analysis/dead-code-detector.js +26 -1
  8. package/dist/call-graph/analysis/dead-code-detector.js.map +1 -1
  9. package/dist/call-graph/analysis/impact-analyzer.d.ts +4 -0
  10. package/dist/call-graph/analysis/impact-analyzer.d.ts.map +1 -1
  11. package/dist/call-graph/analysis/impact-analyzer.js +104 -0
  12. package/dist/call-graph/analysis/impact-analyzer.js.map +1 -1
  13. package/dist/call-graph/analysis/path-finder.d.ts +6 -0
  14. package/dist/call-graph/analysis/path-finder.d.ts.map +1 -1
  15. package/dist/call-graph/analysis/path-finder.js +29 -1
  16. package/dist/call-graph/analysis/path-finder.js.map +1 -1
  17. package/dist/call-graph/enrichment/enrichment-engine.d.ts +6 -0
  18. package/dist/call-graph/enrichment/enrichment-engine.d.ts.map +1 -1
  19. package/dist/call-graph/enrichment/enrichment-engine.js +30 -2
  20. package/dist/call-graph/enrichment/enrichment-engine.js.map +1 -1
  21. package/dist/error-handling/error-handling-analyzer.d.ts +6 -0
  22. package/dist/error-handling/error-handling-analyzer.d.ts.map +1 -1
  23. package/dist/error-handling/error-handling-analyzer.js +42 -4
  24. package/dist/error-handling/error-handling-analyzer.js.map +1 -1
  25. package/dist/index.d.ts +2 -2
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +2 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/module-coupling/coupling-analyzer.d.ts +6 -0
  30. package/dist/module-coupling/coupling-analyzer.d.ts.map +1 -1
  31. package/dist/module-coupling/coupling-analyzer.js +28 -1
  32. package/dist/module-coupling/coupling-analyzer.js.map +1 -1
  33. package/dist/native/index.d.ts +23 -0
  34. package/dist/native/index.d.ts.map +1 -1
  35. package/dist/native/index.js +51 -6
  36. package/dist/native/index.js.map +1 -1
  37. package/dist/test-topology/hybrid-test-topology-analyzer.d.ts +6 -0
  38. package/dist/test-topology/hybrid-test-topology-analyzer.d.ts.map +1 -1
  39. package/dist/test-topology/hybrid-test-topology-analyzer.js +30 -2
  40. package/dist/test-topology/hybrid-test-topology-analyzer.js.map +1 -1
  41. package/dist/test-topology/test-topology-analyzer.d.ts +6 -0
  42. package/dist/test-topology/test-topology-analyzer.d.ts.map +1 -1
  43. package/dist/test-topology/test-topology-analyzer.js +30 -2
  44. package/dist/test-topology/test-topology-analyzer.js.map +1 -1
  45. package/package.json +1 -1
@@ -138,7 +138,13 @@ export declare class CoverageAnalyzer {
138
138
  private testFiles;
139
139
  private testedFunctions;
140
140
  private sensitivityPatterns;
141
+ private useNativeQueries;
142
+ private projectRoot;
141
143
  constructor(graph: CallGraph);
144
+ /**
145
+ * Get callers for a function (using native query if available)
146
+ */
147
+ private getCallers;
142
148
  /**
143
149
  * Analyze coverage for sensitive data access
144
150
  */
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-analyzer.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/coverage-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAmB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACb,MAAM,aAAa,CAAC;AAMrB;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,WAAW,EAAE,eAAe,CAAC;IAC7B,2CAA2C;IAC3C,UAAU,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,+CAA+C;IAC/C,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,6CAA6C;IAC7C,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,QAAQ,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,WAAW,EAAE,eAAe,CAAC;IAC7B,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB;IACtB,MAAM,EAAE,cAAc,CAAC;IACvB,uBAAuB;IACvB,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,yBAAyB;IACzB,OAAO,EAAE;QACP,oBAAoB,EAAE,MAAM,CAAC;QAC7B,gBAAgB,EAAE,MAAM,CAAC;QACzB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC,eAAe,EAAE;YACrC,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;YACd,WAAW,EAAE,MAAM,CAAC;YACpB,eAAe,EAAE,MAAM,CAAC;SACzB,CAAC,CAAC;KACJ,CAAC;IACF,wBAAwB;IACxB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,yCAAyC;IACzC,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,0BAA0B;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,iCAAiC;IACjC,WAAW,EAAE,eAAe,CAAC;IAC7B,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,yDAAyD;IACzD,mBAAmB,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACjD,oDAAoD;IACpD,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,oDAAoD;IACpD,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAMD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,mBAAmB,CAA6B;gBAE5C,KAAK,EAAE,SAAS;IAS5B;;OAEG;IACH,OAAO,CAAC,OAAO,GAAE,uBAA4B,GAAG,sBAAsB;IAwEtE;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAsC9B;;;OAGG;IACH,OAAO,CAAC,6BAA6B;IAsGrC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAyB3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAuDxB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAgEhC;;OAEG;IACH,OAAO,CAAC,eAAe;IA+BvB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAiE9B;;OAEG;IACH,OAAO,CAAC,YAAY;IAwCpB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAkB/B;AAMD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAEzE"}
1
+ {"version":3,"file":"coverage-analyzer.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/coverage-analyzer.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@
8
8
  * - Which access paths from entry points to sensitive data are covered
9
9
  * - Coverage gaps for sensitive fields
10
10
  */
11
+ import { isNativeAvailable, isCallGraphAvailable, getCallGraphCallers, } from '../../native/index.js';
11
12
  // ============================================================================
12
13
  // Coverage Analyzer
13
14
  // ============================================================================
@@ -21,6 +22,8 @@ export class CoverageAnalyzer {
21
22
  testFiles;
22
23
  testedFunctions;
23
24
  sensitivityPatterns;
25
+ useNativeQueries;
26
+ projectRoot;
24
27
  constructor(graph) {
25
28
  this.graph = graph;
26
29
  this.entryPointSet = new Set(graph.entryPoints);
@@ -28,6 +31,29 @@ export class CoverageAnalyzer {
28
31
  this.testFiles = new Set();
29
32
  this.testedFunctions = new Set();
30
33
  this.sensitivityPatterns = this.getDefaultSensitivityPatterns();
34
+ // Check if we should use native SQLite queries
35
+ this.projectRoot = graph.projectRoot;
36
+ const isSqliteMode = graph._sqliteAvailable === true;
37
+ this.useNativeQueries = isSqliteMode &&
38
+ !!this.projectRoot &&
39
+ isNativeAvailable() &&
40
+ isCallGraphAvailable(this.projectRoot);
41
+ }
42
+ /**
43
+ * Get callers for a function (using native query if available)
44
+ */
45
+ getCallers(funcId, funcName) {
46
+ const func = this.graph.functions.get(funcId);
47
+ // If calledBy is populated, use it
48
+ if (func && func.calledBy.length > 0) {
49
+ return func.calledBy;
50
+ }
51
+ // If using native queries, check SQLite
52
+ if (this.useNativeQueries && this.projectRoot) {
53
+ const callers = getCallGraphCallers(this.projectRoot, funcName);
54
+ return callers.map(c => ({ callerId: c.callerId }));
55
+ }
56
+ return func?.calledBy ?? [];
31
57
  }
32
58
  /**
33
59
  * Analyze coverage for sensitive data access
@@ -366,8 +392,9 @@ export class CoverageAnalyzer {
366
392
  if (!func) {
367
393
  continue;
368
394
  }
369
- // Follow callers
370
- for (const caller of func.calledBy) {
395
+ // Follow callers (use native query if available)
396
+ const callers = this.getCallers(funcId, func.name);
397
+ for (const caller of callers) {
371
398
  const existingPath = visited.get(caller.callerId);
372
399
  if (!existingPath || existingPath.length > path.length + 1) {
373
400
  const callerFunc = this.graph.functions.get(caller.callerId);
@@ -405,8 +432,9 @@ export class CoverageAnalyzer {
405
432
  for (const funcId of testedInPath) {
406
433
  const func = this.graph.functions.get(funcId);
407
434
  if (func) {
408
- // Find test functions that call this function
409
- for (const caller of func.calledBy) {
435
+ // Find test functions that call this function (use native query if available)
436
+ const callers = this.getCallers(funcId, func.name);
437
+ for (const caller of callers) {
410
438
  const callerFunc = this.graph.functions.get(caller.callerId);
411
439
  if (callerFunc && this.testFiles.has(callerFunc.file)) {
412
440
  if (!path.testFiles.includes(callerFunc.file)) {
@@ -1 +1 @@
1
- {"version":3,"file":"coverage-analyzer.js","sourceRoot":"","sources":["../../../src/call-graph/analysis/coverage-analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coverage-analyzer.js","sourceRoot":"","sources":["../../../src/call-graph/analysis/coverage-analyzer.ts"],"names":[],"mappings":"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"}
@@ -86,7 +86,13 @@ export interface DeadCodeOptions {
86
86
  export declare class DeadCodeDetector {
87
87
  private graph;
88
88
  private entryPointSet;
89
+ private useNativeQueries;
90
+ private projectRoot;
89
91
  constructor(graph: CallGraph);
92
+ /**
93
+ * Check if a function has callers (using native query if available)
94
+ */
95
+ private hasCallers;
90
96
  /**
91
97
  * Detect dead code in the codebase
92
98
  */
@@ -1 +1 @@
1
- {"version":3,"file":"dead-code-detector.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/dead-code-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dead-code-detector.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/dead-code-detector.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * Finds functions that are never called and aren't entry points.
5
5
  * These are candidates for removal.
6
6
  */
7
+ import { isNativeAvailable, isCallGraphAvailable, getCallGraphCallers, } from '../../native/index.js';
7
8
  // ============================================================================
8
9
  // Framework Hook Patterns
9
10
  // ============================================================================
@@ -77,9 +78,33 @@ const USED_DECORATOR_PATTERNS = [
77
78
  export class DeadCodeDetector {
78
79
  graph;
79
80
  entryPointSet;
81
+ useNativeQueries;
82
+ projectRoot;
80
83
  constructor(graph) {
81
84
  this.graph = graph;
82
85
  this.entryPointSet = new Set(graph.entryPoints);
86
+ // Check if we should use native SQLite queries
87
+ this.projectRoot = graph.projectRoot;
88
+ const isSqliteMode = graph._sqliteAvailable === true;
89
+ this.useNativeQueries = isSqliteMode &&
90
+ !!this.projectRoot &&
91
+ isNativeAvailable() &&
92
+ isCallGraphAvailable(this.projectRoot);
93
+ }
94
+ /**
95
+ * Check if a function has callers (using native query if available)
96
+ */
97
+ hasCallers(func) {
98
+ // If calledBy is populated, use it
99
+ if (func.calledBy.length > 0) {
100
+ return true;
101
+ }
102
+ // If using native queries, check SQLite
103
+ if (this.useNativeQueries && this.projectRoot) {
104
+ const callers = getCallGraphCallers(this.projectRoot, func.name);
105
+ return callers.length > 0;
106
+ }
107
+ return false;
83
108
  }
84
109
  /**
85
110
  * Detect dead code in the codebase
@@ -106,7 +131,7 @@ export class DeadCodeDetector {
106
131
  continue;
107
132
  }
108
133
  // Skip functions with callers
109
- if (func.calledBy.length > 0) {
134
+ if (this.hasCallers(func)) {
110
135
  excludedWithCallers++;
111
136
  continue;
112
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dead-code-detector.js","sourceRoot":"","sources":["../../../src/call-graph/analysis/dead-code-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dead-code-detector.js","sourceRoot":"","sources":["../../../src/call-graph/analysis/dead-code-detector.ts"],"names":[],"mappings":"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"}
@@ -114,6 +114,10 @@ export declare class ImpactAnalyzer {
114
114
  * Find function by name and analyze it
115
115
  */
116
116
  analyzeFunctionByName(name: string, options?: ImpactAnalysisOptions): ImpactAnalysisResult;
117
+ /**
118
+ * Analyze using native SQLite queries (more accurate for SQLite-backed graphs)
119
+ */
120
+ private analyzeWithNativeQueries;
117
121
  /**
118
122
  * Core analysis: find all callers of given functions
119
123
  */
@@ -1 +1 @@
1
- {"version":3,"file":"impact-analyzer.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/impact-analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"impact-analyzer.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/impact-analyzer.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  * - Affected entry points (user-facing impact)
10
10
  * - Sensitive data paths affected (security impact)
11
11
  */
12
+ import { isNativeAvailable, isCallGraphAvailable, getCallGraphCallers, } from '../../native/index.js';
12
13
  // ============================================================================
13
14
  // Impact Analyzer
14
15
  // ============================================================================
@@ -53,6 +54,13 @@ export class ImpactAnalyzer {
53
54
  * Find function by name and analyze it
54
55
  */
55
56
  analyzeFunctionByName(name, options = {}) {
57
+ // Check if we can use native SQLite queries (more accurate for SQLite-backed graphs)
58
+ const projectRoot = this.graph.projectRoot;
59
+ const isSqliteMode = this.graph._sqliteAvailable === true;
60
+ if (isSqliteMode && projectRoot && isNativeAvailable() && isCallGraphAvailable(projectRoot)) {
61
+ return this.analyzeWithNativeQueries(name, options);
62
+ }
63
+ // Fall back to in-memory graph analysis
56
64
  // Find function by name
57
65
  for (const [id, func] of this.graph.functions) {
58
66
  if (func.name === name || func.qualifiedName === name) {
@@ -61,6 +69,102 @@ export class ImpactAnalyzer {
61
69
  }
62
70
  return this.createEmptyResult({ type: 'function', file: '', functionName: name });
63
71
  }
72
+ /**
73
+ * Analyze using native SQLite queries (more accurate for SQLite-backed graphs)
74
+ */
75
+ analyzeWithNativeQueries(name, options = {}) {
76
+ const projectRoot = this.graph.projectRoot;
77
+ const { maxDepth = 10 } = options;
78
+ const affected = new Map();
79
+ const visited = new Set();
80
+ // Get direct callers from SQLite
81
+ const directCallers = getCallGraphCallers(projectRoot, name);
82
+ if (directCallers.length === 0) {
83
+ return this.createEmptyResult({ type: 'function', file: '', functionName: name });
84
+ }
85
+ // BFS to find transitive callers
86
+ const queue = [];
87
+ // Initialize with direct callers
88
+ for (const caller of directCallers) {
89
+ const pathNode = {
90
+ functionId: caller.callerId,
91
+ functionName: caller.callerName,
92
+ file: caller.callerFile,
93
+ line: caller.line,
94
+ };
95
+ queue.push({
96
+ caller,
97
+ depth: 1,
98
+ path: [pathNode],
99
+ });
100
+ }
101
+ // BFS traversal
102
+ while (queue.length > 0) {
103
+ const { caller, depth, path } = queue.shift();
104
+ if (visited.has(caller.callerId) || depth > maxDepth) {
105
+ continue;
106
+ }
107
+ visited.add(caller.callerId);
108
+ // Check if this is an entry point
109
+ const isEntryPoint = this.entryPointSet.has(caller.callerId);
110
+ // Record this affected function
111
+ affected.set(caller.callerId, {
112
+ id: caller.callerId,
113
+ name: caller.callerName,
114
+ qualifiedName: caller.callerName,
115
+ file: caller.callerFile,
116
+ line: caller.line,
117
+ depth,
118
+ isEntryPoint,
119
+ accessesSensitiveData: false, // Would need additional query
120
+ pathToChange: path,
121
+ });
122
+ // Get callers of this caller for transitive analysis
123
+ if (depth < maxDepth) {
124
+ const transitiveCallers = getCallGraphCallers(projectRoot, caller.callerName);
125
+ for (const tc of transitiveCallers) {
126
+ if (!visited.has(tc.callerId)) {
127
+ const tcPath = {
128
+ functionId: tc.callerId,
129
+ functionName: tc.callerName,
130
+ file: tc.callerFile,
131
+ line: tc.line,
132
+ };
133
+ queue.push({
134
+ caller: tc,
135
+ depth: depth + 1,
136
+ path: [tcPath, ...path],
137
+ });
138
+ }
139
+ }
140
+ }
141
+ }
142
+ // Extract entry points
143
+ const entryPoints = Array.from(affected.values())
144
+ .filter(a => a.isEntryPoint)
145
+ .sort((a, b) => a.depth - b.depth);
146
+ // Sort affected by depth
147
+ const sortedAffected = Array.from(affected.values())
148
+ .sort((a, b) => a.depth - b.depth);
149
+ // Calculate risk
150
+ const { risk, riskScore } = this.calculateRisk(affected, entryPoints, []);
151
+ return {
152
+ target: { type: 'function', file: '', functionName: name },
153
+ risk,
154
+ riskScore,
155
+ summary: {
156
+ directCallers: sortedAffected.filter(a => a.depth === 1).length,
157
+ transitiveCallers: sortedAffected.filter(a => a.depth > 1).length,
158
+ affectedEntryPoints: entryPoints.length,
159
+ affectedDataPaths: 0,
160
+ maxDepth: Math.max(0, ...sortedAffected.map(a => a.depth)),
161
+ },
162
+ affected: sortedAffected,
163
+ entryPoints,
164
+ sensitiveDataPaths: [],
165
+ changedFunctions: [name],
166
+ };
167
+ }
64
168
  /**
65
169
  * Core analysis: find all callers of given functions
66
170
  */
@@ -1 +1 @@
1
- {"version":3,"file":"impact-analyzer.js","sourceRoot":"","sources":["../../../src/call-graph/analysis/impact-analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"impact-analyzer.js","sourceRoot":"","sources":["../../../src/call-graph/analysis/impact-analyzer.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,13 @@ export interface CriticalPathResult {
64
64
  */
65
65
  export declare class PathFinder {
66
66
  private readonly graph;
67
+ private useNativeQueries;
68
+ private projectRoot;
67
69
  constructor(graph: CallGraph);
70
+ /**
71
+ * Get callers for a function (using native query if available)
72
+ */
73
+ private getFunctionCallers;
68
74
  /**
69
75
  * Find the shortest path between two functions
70
76
  */
@@ -1 +1 @@
1
- {"version":3,"file":"path-finder.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/path-finder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-finder.d.ts","sourceRoot":"","sources":["../../../src/call-graph/analysis/path-finder.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  * Supports finding shortest paths, all paths, and critical paths
6
6
  * between functions in the call graph.
7
7
  */
8
+ import { isNativeAvailable, isCallGraphAvailable, getCallGraphCallers, } from '../../native/index.js';
8
9
  // ============================================================================
9
10
  // Path Finder
10
11
  // ============================================================================
@@ -13,8 +14,33 @@
13
14
  */
14
15
  export class PathFinder {
15
16
  graph;
17
+ useNativeQueries;
18
+ projectRoot;
16
19
  constructor(graph) {
17
20
  this.graph = graph;
21
+ // Check if we should use native SQLite queries
22
+ this.projectRoot = graph.projectRoot;
23
+ const isSqliteMode = graph._sqliteAvailable === true;
24
+ this.useNativeQueries = isSqliteMode &&
25
+ !!this.projectRoot &&
26
+ isNativeAvailable() &&
27
+ isCallGraphAvailable(this.projectRoot);
28
+ }
29
+ /**
30
+ * Get callers for a function (using native query if available)
31
+ */
32
+ getFunctionCallers(funcId, funcName) {
33
+ const func = this.graph.functions.get(funcId);
34
+ // If calledBy is populated, use it
35
+ if (func && func.calledBy.length > 0) {
36
+ return func.calledBy;
37
+ }
38
+ // If using native queries, check SQLite
39
+ if (this.useNativeQueries && this.projectRoot) {
40
+ const callers = getCallGraphCallers(this.projectRoot, funcName);
41
+ return callers.map(c => ({ callerId: c.callerId }));
42
+ }
43
+ return func?.calledBy ?? [];
18
44
  }
19
45
  /**
20
46
  * Find the shortest path between two functions
@@ -169,7 +195,9 @@ export class PathFinder {
169
195
  if (!func) {
170
196
  continue;
171
197
  }
172
- for (const callSite of func.calledBy) {
198
+ // Use native query if available
199
+ const funcCallers = this.getFunctionCallers(id, func.name);
200
+ for (const callSite of funcCallers) {
173
201
  if (!callers.has(callSite.callerId)) {
174
202
  queue.push({ id: callSite.callerId, depth: depth + 1 });
175
203
  }