codeslick-cli 1.0.4 → 1.1.0

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 (55) hide show
  1. package/README.md +31 -13
  2. package/bin/codeslick.cjs +19 -1
  3. package/dist/packages/cli/src/commands/scan.d.ts +3 -0
  4. package/dist/packages/cli/src/commands/scan.d.ts.map +1 -1
  5. package/dist/packages/cli/src/commands/scan.js +103 -24
  6. package/dist/packages/cli/src/commands/scan.js.map +1 -1
  7. package/dist/packages/cli/src/reporters/cli-reporter.d.ts +28 -2
  8. package/dist/packages/cli/src/reporters/cli-reporter.d.ts.map +1 -1
  9. package/dist/packages/cli/src/reporters/cli-reporter.js +393 -4
  10. package/dist/packages/cli/src/reporters/cli-reporter.js.map +1 -1
  11. package/dist/packages/cli/src/scanner/local-scanner.d.ts +5 -1
  12. package/dist/packages/cli/src/scanner/local-scanner.d.ts.map +1 -1
  13. package/dist/packages/cli/src/scanner/local-scanner.js +110 -16
  14. package/dist/packages/cli/src/scanner/local-scanner.js.map +1 -1
  15. package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.d.ts.map +1 -1
  16. package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.js +24 -16
  17. package/dist/src/lib/analyzers/java/security-checks/hardcoded-credentials.js.map +1 -1
  18. package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.d.ts.map +1 -1
  19. package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.js +4 -12
  20. package/dist/src/lib/analyzers/javascript/security-checks/ai-generated-code.js.map +1 -1
  21. package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.d.ts.map +1 -1
  22. package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.js +22 -9
  23. package/dist/src/lib/analyzers/javascript/security-checks/credential-crypto.js.map +1 -1
  24. package/dist/src/lib/analyzers/javascript-analyzer.d.ts.map +1 -1
  25. package/dist/src/lib/analyzers/javascript-analyzer.js +28 -13
  26. package/dist/src/lib/analyzers/javascript-analyzer.js.map +1 -1
  27. package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.d.ts.map +1 -1
  28. package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.js +44 -18
  29. package/dist/src/lib/analyzers/python/security-checks/credentials-crypto.js.map +1 -1
  30. package/dist/src/lib/analyzers/python-analyzer.d.ts.map +1 -1
  31. package/dist/src/lib/analyzers/python-analyzer.js +21 -13
  32. package/dist/src/lib/analyzers/python-analyzer.js.map +1 -1
  33. package/dist/src/lib/analyzers/secrets/validators/context-checker.d.ts.map +1 -1
  34. package/dist/src/lib/analyzers/secrets/validators/context-checker.js +21 -0
  35. package/dist/src/lib/analyzers/secrets/validators/context-checker.js.map +1 -1
  36. package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.d.ts.map +1 -1
  37. package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.js +4 -12
  38. package/dist/src/lib/analyzers/typescript/security-checks/ai-generated-code.js.map +1 -1
  39. package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.d.ts.map +1 -1
  40. package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.js +25 -9
  41. package/dist/src/lib/analyzers/typescript/security-checks/credentials-crypto.js.map +1 -1
  42. package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.d.ts.map +1 -1
  43. package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.js +14 -4
  44. package/dist/src/lib/analyzers/typescript/security-checks/security-misconfiguration.js.map +1 -1
  45. package/dist/src/lib/analyzers/typescript/type-checker.d.ts +32 -0
  46. package/dist/src/lib/analyzers/typescript/type-checker.d.ts.map +1 -1
  47. package/dist/src/lib/analyzers/typescript/type-checker.js +264 -22
  48. package/dist/src/lib/analyzers/typescript/type-checker.js.map +1 -1
  49. package/dist/src/lib/analyzers/typescript-analyzer.d.ts.map +1 -1
  50. package/dist/src/lib/analyzers/typescript-analyzer.js +27 -23
  51. package/dist/src/lib/analyzers/typescript-analyzer.js.map +1 -1
  52. package/package.json +1 -1
  53. package/src/commands/scan.ts +77 -25
  54. package/src/reporters/cli-reporter.ts +449 -4
  55. package/src/scanner/local-scanner.ts +132 -19
@@ -35,11 +35,17 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.getTypeScriptDiagnostics = getTypeScriptDiagnostics;
37
37
  exports.convertDiagnosticsToIssues = convertDiagnosticsToIssues;
38
+ exports.getBatchTypeScriptDiagnostics = getBatchTypeScriptDiagnostics;
39
+ exports.getBatchTypeScriptDiagnosticsChunked = getBatchTypeScriptDiagnosticsChunked;
38
40
  const ts = __importStar(require("typescript"));
41
+ const fs_1 = require("fs");
39
42
  /**
40
43
  * TypeScript Compiler API Integration
41
44
  * Purpose: Detect actual TypeScript type errors (95%+ coverage)
42
45
  * Created: 2025-12-02 to address critical detection gap (5% → 95%+)
46
+ *
47
+ * OPTIMIZATION (Jan 15, 2026): For CLI batch scanning, use getBatchTypeScriptDiagnostics
48
+ * instead to avoid creating a new program for each file (17x speedup).
43
49
  */
44
50
  function getTypeScriptDiagnostics(code, fileName = 'temp.ts', options) {
45
51
  const compilerOptions = {
@@ -101,6 +107,7 @@ function getTypeScriptDiagnostics(code, fileName = 'temp.ts', options) {
101
107
  2300, // Duplicate identifier (caused by multiple test files)
102
108
  // 2304, // Cannot find name - Using smart filtering instead (see below)
103
109
  2580, // Cannot find name 'process' (Node.js global without @types/node)
110
+ 2583, // Cannot find name 'X'. Do you need to change target library? (ES2015+ built-ins without lib)
104
111
  2584, // Cannot find name (variant - globals like console, fetch, etc.)
105
112
  // 2339, // Property does not exist on type - Using smart filtering for test files only
106
113
  2551, // Property does not exist (did you mean X?)
@@ -138,6 +145,13 @@ function getTypeScriptDiagnostics(code, fileName = 'temp.ts', options) {
138
145
  'encodeURI', 'decodeURI', 'encodeURIComponent', 'decodeURIComponent',
139
146
  'JSON', 'Math', 'Date', 'RegExp', 'Error', 'Map', 'Set', 'WeakMap', 'WeakSet',
140
147
  'Symbol', 'Proxy', 'Reflect', 'Int8Array', 'Uint8Array', 'Float32Array',
148
+ // TypeScript utility types (built-in, no import needed)
149
+ 'Partial', 'Required', 'Readonly', 'Record', 'Pick', 'Omit', 'Exclude', 'Extract',
150
+ 'NonNullable', 'Parameters', 'ConstructorParameters', 'ReturnType', 'InstanceType',
151
+ 'ThisParameterType', 'OmitThisParameter', 'ThisType', 'Awaited', 'Uppercase',
152
+ 'Lowercase', 'Capitalize', 'Uncapitalize', 'PropertyKey', 'Iterable', 'Iterator',
153
+ 'IterableIterator', 'Generator', 'GeneratorFunction', 'AsyncGenerator',
154
+ 'AsyncGeneratorFunction', 'AsyncIterable', 'AsyncIterableIterator',
141
155
  // JSX element names (HTML tags used in JSX)
142
156
  'div', 'span', 'input', 'button', 'form', 'a', 'p', 'h1', 'h2', 'h3',
143
157
  'ul', 'li', 'table', 'tr', 'td', 'th', 'img', 'label', 'select', 'option',
@@ -200,37 +214,56 @@ function getTypeScriptDiagnostics(code, fileName = 'temp.ts', options) {
200
214
  }
201
215
  // Keep the error - likely a type typo (strng, numbr, boolen, etc.)
202
216
  }
203
- // SMART FILTERING FOR 2339: Property access on test file variables
217
+ // SMART FILTERING FOR 2339: Property access errors
204
218
  // Error 2339: Property 'X' does not exist on type 'Y'
205
- // Only filter in test files when accessing undefined test variables
206
- if (diagnostic.code === 2339 && isTestFile) {
219
+ if (diagnostic.code === 2339) {
207
220
  const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
208
- // Check if this is accessing a property on a test variable pattern
209
- // Example: "Property 'name' does not exist on type 'typeof userData'"
210
- const isTestVariableAccess = testFileVariablePatterns.some(pattern => message.includes(`typeof ${pattern}`) ||
211
- message.includes(`'${pattern}'`) ||
212
- message.includes(`"${pattern}"`));
213
- if (isTestVariableAccess) {
214
- return false; // Filter test file property access patterns
221
+ // GLOBAL FIX: Filter false positives where type is '{}' (compiler artifact from missing lib types)
222
+ // Example: "Property 'filter' does not exist on type '{}'." - arrays inferred as {} without lib
223
+ // This is NOT a real code issue - it's because our in-memory compiler doesn't have full lib.d.ts
224
+ if (message.includes("type '{}'")) {
225
+ return false; // Filter compiler artifacts from missing lib types
215
226
  }
216
- // FIX: Filter bizarre TypeScript compiler errors where built-in methods don't exist on their types
217
- // Example: "Property 'toUpperCase' does not exist on type 'string'" (FALSE POSITIVE!)
218
- // This happens when TypeScript's control flow analysis fails in in-memory compilation
227
+ // GLOBAL FIX: Filter false positives where built-in methods don't exist on primitive types
228
+ // This happens because our in-memory compiler doesn't have full lib.d.ts loaded
229
+ // Example: "Property 'split' does not exist on type 'string'" (FALSE POSITIVE!)
219
230
  const builtInStringMethods = [
220
- 'toUpperCase', 'toLowerCase', 'trim', 'split', 'slice', 'substring',
221
- 'charAt', 'indexOf', 'includes', 'startsWith', 'endsWith', 'replace',
222
- 'match', 'search', 'concat', 'repeat', 'padStart', 'padEnd'
231
+ 'toUpperCase', 'toLowerCase', 'trim', 'trimStart', 'trimEnd', 'split', 'slice', 'substring',
232
+ 'charAt', 'charCodeAt', 'codePointAt', 'indexOf', 'lastIndexOf', 'includes',
233
+ 'startsWith', 'endsWith', 'replace', 'replaceAll', 'match', 'matchAll', 'search',
234
+ 'concat', 'repeat', 'padStart', 'padEnd', 'normalize', 'localeCompare',
235
+ 'toString', 'valueOf', 'at', 'length'
223
236
  ];
224
237
  const builtInArrayMethods = [
225
238
  'push', 'pop', 'shift', 'unshift', 'slice', 'splice', 'concat',
226
- 'join', 'reverse', 'sort', 'filter', 'map', 'reduce', 'forEach',
227
- 'find', 'findIndex', 'some', 'every', 'includes'
239
+ 'join', 'reverse', 'sort', 'filter', 'map', 'reduce', 'reduceRight', 'forEach',
240
+ 'find', 'findIndex', 'findLast', 'findLastIndex', 'some', 'every', 'includes',
241
+ 'indexOf', 'lastIndexOf', 'flat', 'flatMap', 'fill', 'copyWithin',
242
+ 'entries', 'keys', 'values', 'at', 'toReversed', 'toSorted', 'toSpliced', 'with',
243
+ 'toString', 'toLocaleString', 'length'
244
+ ];
245
+ const builtInNumberMethods = [
246
+ 'toFixed', 'toExponential', 'toPrecision', 'toString', 'valueOf', 'toLocaleString'
228
247
  ];
229
- // Check if this is a false positive about built-in methods
230
- const isBuiltInMethodFalsePositive = builtInStringMethods.some(method => message.includes(`'${method}'`) && message.includes("type 'string'")) ||
231
- builtInArrayMethods.some(method => message.includes(`'${method}'`) && message.includes("type 'any[]'"));
248
+ // Check if this is a false positive about built-in methods on primitive types
249
+ // FIX (Jan 15, 2026): Also match string literal types like '"─"' or '"hello"'
250
+ const isStringLiteralType = /type '["'][^"']*["']'/.test(message);
251
+ const isBuiltInMethodFalsePositive = builtInStringMethods.some(method => message.includes(`'${method}'`) && (message.includes("type 'string'") || isStringLiteralType)) ||
252
+ builtInArrayMethods.some(method => message.includes(`'${method}'`) && (message.includes("type 'any[]'") || message.includes("type 'never[]'"))) ||
253
+ builtInNumberMethods.some(method => message.includes(`'${method}'`) && message.includes("type 'number'"));
232
254
  if (isBuiltInMethodFalsePositive) {
233
- return false; // Filter false positives about built-in methods
255
+ return false; // Filter compiler artifacts from missing lib types
256
+ }
257
+ // Test file specific filtering
258
+ if (isTestFile) {
259
+ // Check if this is accessing a property on a test variable pattern
260
+ // Example: "Property 'name' does not exist on type 'typeof userData'"
261
+ const isTestVariableAccess = testFileVariablePatterns.some(pattern => message.includes(`typeof ${pattern}`) ||
262
+ message.includes(`'${pattern}'`) ||
263
+ message.includes(`"${pattern}"`));
264
+ if (isTestVariableAccess) {
265
+ return false; // Filter test file property access patterns
266
+ }
234
267
  }
235
268
  // Keep the error - legitimate property type mismatch
236
269
  }
@@ -512,4 +545,213 @@ function getSuggestionForDiagnostic(code, message) {
512
545
  };
513
546
  return suggestions[code] || 'Review TypeScript documentation for this error code: https://typescript-error-translator.vercel.app/';
514
547
  }
548
+ /**
549
+ * Batch TypeScript Compiler API Integration
550
+ * Purpose: Analyze multiple TypeScript files in a single pass (17x faster)
551
+ * Created: Jan 15, 2026 for CLI performance optimization
552
+ *
553
+ * Instead of creating a new ts.Program for each file, this function:
554
+ * 1. Reads all files into memory
555
+ * 2. Creates ONE shared ts.Program with all files
556
+ * 3. Gets diagnostics for each file from the shared program
557
+ *
558
+ * Performance: 490 files in ~1-5 seconds instead of 3+ minutes
559
+ */
560
+ function getBatchTypeScriptDiagnostics(filePaths, options) {
561
+ const startTime = performance.now();
562
+ if (filePaths.length === 0) {
563
+ return {
564
+ diagnostics: new Map(),
565
+ duration: 0,
566
+ fileCount: 0
567
+ };
568
+ }
569
+ // Read all files and create source files
570
+ const sourceFiles = new Map();
571
+ const fileContents = new Map();
572
+ for (const filePath of filePaths) {
573
+ try {
574
+ const code = (0, fs_1.readFileSync)(filePath, 'utf-8');
575
+ fileContents.set(filePath, code);
576
+ sourceFiles.set(filePath, ts.createSourceFile(filePath, code, ts.ScriptTarget.ES2020, true));
577
+ }
578
+ catch (error) {
579
+ // Skip files that can't be read
580
+ console.error(`Failed to read file: ${filePath}`, error);
581
+ }
582
+ }
583
+ const compilerOptions = {
584
+ strict: options?.strict ?? true,
585
+ noImplicitAny: options?.noImplicitAny ?? true,
586
+ strictNullChecks: options?.strictNullChecks ?? true,
587
+ strictFunctionTypes: options?.strictFunctionTypes ?? true,
588
+ strictPropertyInitialization: options?.strictPropertyInitialization ?? true,
589
+ noUnusedLocals: true,
590
+ noUnusedParameters: true,
591
+ noImplicitReturns: true,
592
+ noFallthroughCasesInSwitch: true,
593
+ target: ts.ScriptTarget.ES2020,
594
+ module: ts.ModuleKind.ESNext,
595
+ lib: ['lib.es2020.d.ts', 'lib.dom.d.ts'],
596
+ jsx: ts.JsxEmit.React,
597
+ moduleResolution: ts.ModuleResolutionKind.NodeJs,
598
+ allowJs: false,
599
+ declaration: false,
600
+ outDir: undefined,
601
+ skipLibCheck: true,
602
+ forceConsistentCasingInFileNames: true
603
+ };
604
+ // Create a shared compiler host for ALL files
605
+ const host = {
606
+ getSourceFile: (name, languageVersion) => {
607
+ // Return file from our batch if it exists
608
+ if (sourceFiles.has(name)) {
609
+ return sourceFiles.get(name);
610
+ }
611
+ // Handle library files - return empty to avoid errors
612
+ if (name.includes('lib.') || name.includes('node_modules') || name.endsWith('.d.ts')) {
613
+ return ts.createSourceFile(name, '', languageVersion, true);
614
+ }
615
+ return undefined;
616
+ },
617
+ writeFile: () => { },
618
+ getCurrentDirectory: () => process.cwd(),
619
+ getDirectories: () => [],
620
+ fileExists: (name) => {
621
+ return sourceFiles.has(name) ||
622
+ name.includes('lib.') ||
623
+ name.includes('node_modules') ||
624
+ name.endsWith('.d.ts');
625
+ },
626
+ readFile: (name) => {
627
+ return fileContents.get(name) || '';
628
+ },
629
+ getCanonicalFileName: (name) => name,
630
+ useCaseSensitiveFileNames: () => true,
631
+ getNewLine: () => '\n',
632
+ getDefaultLibFileName: () => 'lib.d.ts'
633
+ };
634
+ // CREATE ONE PROGRAM WITH ALL FILES
635
+ const allFilePaths = Array.from(sourceFiles.keys());
636
+ const program = ts.createProgram(allFilePaths, compilerOptions, host);
637
+ // Benign error codes to filter out (same as single-file version)
638
+ const benignErrorCodes = new Set([
639
+ 2307, 2300, 2580, 2583, 2584, 2551, 2571, 2769, 2802,
640
+ 6192, 6137, 1110, 1109, 1434, 1435, 2451, 7005, 7006,
641
+ 2305, 2503, 2711, 18046
642
+ ]);
643
+ // Known library/global names
644
+ const knownLibraryNames = new Set([
645
+ 'console', 'fetch', 'window', 'document', 'process', 'Buffer', 'global',
646
+ 'require', 'module', 'exports', '__dirname', '__filename',
647
+ 'React', 'Component', 'useState', 'useEffect', 'useCallback', 'useMemo',
648
+ 'describe', 'it', 'expect', 'test', 'beforeEach', 'afterEach',
649
+ 'Request', 'Response', 'Headers', 'FormData', 'Blob',
650
+ 'setTimeout', 'setInterval', 'clearTimeout', 'clearInterval',
651
+ 'Promise', 'Array', 'Object', 'String', 'Number', 'Boolean',
652
+ 'eval', 'parseInt', 'parseFloat', 'isNaN', 'isFinite',
653
+ 'JSON', 'Math', 'Date', 'RegExp', 'Error', 'Map', 'Set',
654
+ 'Partial', 'Required', 'Readonly', 'Record', 'Pick', 'Omit',
655
+ 'div', 'span', 'input', 'button', 'form', 'a', 'p', 'h1', 'h2', 'h3'
656
+ ]);
657
+ // Built-in string methods for false positive filtering
658
+ const builtInStringMethods = [
659
+ 'toUpperCase', 'toLowerCase', 'trim', 'trimStart', 'trimEnd', 'split', 'slice', 'substring',
660
+ 'charAt', 'charCodeAt', 'indexOf', 'lastIndexOf', 'includes', 'startsWith', 'endsWith',
661
+ 'replace', 'replaceAll', 'match', 'search', 'concat', 'repeat', 'padStart', 'padEnd',
662
+ 'toString', 'valueOf', 'at', 'length'
663
+ ];
664
+ // Built-in number methods for false positive filtering
665
+ const builtInNumberMethods = [
666
+ 'toFixed', 'toExponential', 'toPrecision', 'toString', 'valueOf', 'toLocaleString'
667
+ ];
668
+ // Built-in array methods for false positive filtering
669
+ const builtInArrayMethods = [
670
+ 'push', 'pop', 'shift', 'unshift', 'slice', 'splice', 'concat', 'join', 'reverse', 'sort',
671
+ 'filter', 'map', 'reduce', 'reduceRight', 'forEach', 'find', 'findIndex', 'some', 'every',
672
+ 'includes', 'indexOf', 'lastIndexOf', 'flat', 'flatMap', 'fill', 'copyWithin', 'entries',
673
+ 'keys', 'values', 'at', 'toString', 'toLocaleString', 'length'
674
+ ];
675
+ // Get diagnostics for each file
676
+ const diagnostics = new Map();
677
+ sourceFiles.forEach((sourceFile, filePath) => {
678
+ const syntacticDiagnostics = program.getSyntacticDiagnostics(sourceFile);
679
+ const semanticDiagnostics = program.getSemanticDiagnostics(sourceFile);
680
+ // Filter diagnostics (same logic as single-file version)
681
+ const filtered = [...syntacticDiagnostics, ...semanticDiagnostics]
682
+ .filter(diagnostic => {
683
+ // Only include diagnostics for this source file
684
+ if (diagnostic.file !== sourceFile) {
685
+ return false;
686
+ }
687
+ // Filter benign error codes
688
+ if (benignErrorCodes.has(diagnostic.code)) {
689
+ return false;
690
+ }
691
+ // Smart filtering for "Cannot find name" errors
692
+ if (diagnostic.code === 2304 || diagnostic.code === 2552) {
693
+ const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
694
+ const isKnownLibrary = Array.from(knownLibraryNames).some(name => message.includes(`'${name}'`) || message.includes(`"${name}"`));
695
+ if (isKnownLibrary) {
696
+ return false;
697
+ }
698
+ }
699
+ // Filter property access on empty type and built-in method false positives
700
+ if (diagnostic.code === 2339) {
701
+ const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
702
+ if (message.includes("type '{}'")) {
703
+ return false;
704
+ }
705
+ // Filter string literal type false positives
706
+ const isStringLiteralType = /type '["'][^"']*["']'/.test(message);
707
+ const isStringMethodFalsePositive = builtInStringMethods.some(method => message.includes(`'${method}'`) && (message.includes("type 'string'") || isStringLiteralType));
708
+ // Filter number method false positives (e.g., .toFixed() on number)
709
+ const isNumberMethodFalsePositive = builtInNumberMethods.some(method => message.includes(`'${method}'`) && message.includes("type 'number'"));
710
+ // Filter array method false positives
711
+ const isArrayMethodFalsePositive = builtInArrayMethods.some(method => message.includes(`'${method}'`) && (message.includes("type 'any[]'") || message.includes("type 'never[]'") || message.includes("[]'")));
712
+ if (isStringMethodFalsePositive || isNumberMethodFalsePositive || isArrayMethodFalsePositive) {
713
+ return false;
714
+ }
715
+ }
716
+ // Filter Express.js route handler false positives
717
+ if (diagnostic.code === 2697) {
718
+ const code = fileContents.get(filePath) || '';
719
+ const isExpressRoute = code.includes('app.get(') || code.includes('app.post(') ||
720
+ code.includes('router.get(') || code.includes('router.post(');
721
+ if (isExpressRoute) {
722
+ return false;
723
+ }
724
+ }
725
+ return true;
726
+ });
727
+ diagnostics.set(filePath, filtered);
728
+ });
729
+ return {
730
+ diagnostics,
731
+ duration: performance.now() - startTime,
732
+ fileCount: sourceFiles.size
733
+ };
734
+ }
735
+ /**
736
+ * Chunked batch processing for memory-constrained environments
737
+ * Processes files in chunks to stay under memory limits
738
+ */
739
+ async function getBatchTypeScriptDiagnosticsChunked(filePaths, chunkSize = 50) {
740
+ const allDiagnostics = new Map();
741
+ let totalDuration = 0;
742
+ for (let i = 0; i < filePaths.length; i += chunkSize) {
743
+ const chunk = filePaths.slice(i, i + chunkSize);
744
+ const result = getBatchTypeScriptDiagnostics(chunk);
745
+ // Merge diagnostics
746
+ result.diagnostics.forEach((diags, filePath) => {
747
+ allDiagnostics.set(filePath, diags);
748
+ });
749
+ totalDuration += result.duration;
750
+ }
751
+ return {
752
+ diagnostics: allDiagnostics,
753
+ duration: totalDuration,
754
+ fileCount: filePaths.length
755
+ };
756
+ }
515
757
  //# sourceMappingURL=type-checker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-checker.js","sourceRoot":"","sources":["../../../../../../../src/lib/analyzers/typescript/type-checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-checker.js","sourceRoot":"","sources":["../../../../../../../src/lib/analyzers/typescript/type-checker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-analyzer.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/analyzers/typescript-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAkD,MAAM,SAAS,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAuB7C,qBAAa,kBAAmB,YAAW,aAAa;IACtD,SAAgB,QAAQ,EAAE,iBAAiB,CAAgB;IAE3D;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAgDtB,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAmCtD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBpD,eAAe;;;;;IAQf,OAAO,CAAC,aAAa;IAmCrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+JxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwH5B;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;IAgCnC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkD3B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA2DrC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA8DlC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAiEhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA0E1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAmC7B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAkDpC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAsDlC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6C5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+C/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0D/B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAiDjC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAiFnC,OAAO,CAAC,mBAAmB;IA2K3B,OAAO,CAAC,cAAc;IAwCtB,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,eAAe;IA8EvB;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAkDlC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,0BAA0B;IA2IlC,OAAO,CAAC,gBAAgB;CAqBzB"}
1
+ {"version":3,"file":"typescript-analyzer.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/analyzers/typescript-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAkD,MAAM,SAAS,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAuB7C,qBAAa,kBAAmB,YAAW,aAAa;IACtD,SAAgB,QAAQ,EAAE,iBAAiB,CAAgB;IAE3D;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAgDtB,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAmCtD,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBpD,eAAe;;;;;IAQf,OAAO,CAAC,aAAa;IAmCrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+JxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwH5B;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;IAgCnC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAkD3B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA2DrC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA8DlC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAiEhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA0E1B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAmC7B;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAkDpC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAsDlC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA6C5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+C/B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0D/B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAiDjC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAiFnC,OAAO,CAAC,mBAAmB;IA2K3B,OAAO,CAAC,cAAc;IAwCtB,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,eAAe;IAmFvB;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAkDlC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,0BAA0B;IA2IlC,OAAO,CAAC,gBAAgB;CAqBzB"}
@@ -94,7 +94,7 @@ class TypeScriptAnalyzer {
94
94
  this.analyzeQuality(input.code, result);
95
95
  this.analyzePerformance(input.code, result);
96
96
  // ALWAYS run security analysis, regardless of syntax/type errors
97
- this.analyzeSecurity(input.code, result);
97
+ this.analyzeSecurity(input.code, result, input.options);
98
98
  this.calculateMetrics(input.code, result);
99
99
  // AI-Generated Code Detection (Phase 1.5, Week 5-7)
100
100
  const lines = input.code.split('\n');
@@ -1361,7 +1361,7 @@ class TypeScriptAnalyzer {
1361
1361
  result.performance.suggestions = suggestions;
1362
1362
  result.performance.score = Math.max(0, result.performance.score);
1363
1363
  }
1364
- analyzeSecurity(code, result) {
1364
+ analyzeSecurity(code, result, options) {
1365
1365
  const lines = code.split('\n');
1366
1366
  const vulnerabilities = [];
1367
1367
  // MODULAR SECURITY CHECKS (2025-12-01)
@@ -1392,27 +1392,31 @@ class TypeScriptAnalyzer {
1392
1392
  vulnerabilities.push(...(0, logging_failures_1.checkLoggingFailures)(lines));
1393
1393
  // NEW: TypeScript Compiler API Type Checking (2025-12-02)
1394
1394
  // This adds comprehensive type error detection (95%+ coverage)
1395
- try {
1396
- const diagnostics = (0, type_checker_1.getTypeScriptDiagnostics)(code, 'temp.ts');
1397
- const typeIssues = (0, type_checker_1.convertDiagnosticsToIssues)(diagnostics);
1398
- // Convert SecurityIssue[] to SecurityVulnerability[]
1399
- const typeVulnerabilities = typeIssues.map(issue => ({
1400
- severity: issue.severity,
1401
- message: issue.message,
1402
- line: issue.line,
1403
- suggestion: issue.suggestion,
1404
- category: 'type-checking',
1405
- cvssScore: issue.cvssScore,
1406
- exploitLikelihood: issue.exploitLikelihood,
1407
- impact: issue.impact,
1408
- owasp: issue.owasp,
1409
- cwe: issue.cwe
1410
- }));
1411
- vulnerabilities.push(...typeVulnerabilities);
1412
- }
1413
- catch (error) {
1414
- // Gracefully degrade - if type checking fails, continue with pattern-based checks
1415
- console.error('TypeScript type checking error:', error);
1395
+ // PERFORMANCE: Skip in quick mode (--quick flag) for faster CLI scans (Jan 15, 2026)
1396
+ const quickMode = options?.quickMode === true;
1397
+ if (!quickMode) {
1398
+ try {
1399
+ const diagnostics = (0, type_checker_1.getTypeScriptDiagnostics)(code, 'temp.ts');
1400
+ const typeIssues = (0, type_checker_1.convertDiagnosticsToIssues)(diagnostics);
1401
+ // Convert SecurityIssue[] to SecurityVulnerability[]
1402
+ const typeVulnerabilities = typeIssues.map(issue => ({
1403
+ severity: issue.severity,
1404
+ message: issue.message,
1405
+ line: issue.line,
1406
+ suggestion: issue.suggestion,
1407
+ category: 'type-checking',
1408
+ cvssScore: issue.cvssScore,
1409
+ exploitLikelihood: issue.exploitLikelihood,
1410
+ impact: issue.impact,
1411
+ owasp: issue.owasp,
1412
+ cwe: issue.cwe
1413
+ }));
1414
+ vulnerabilities.push(...typeVulnerabilities);
1415
+ }
1416
+ catch (error) {
1417
+ // Gracefully degrade - if type checking fails, continue with pattern-based checks
1418
+ console.error('TypeScript type checking error:', error);
1419
+ }
1416
1420
  }
1417
1421
  // Secrets Detection (Phase 1.5, Week 1)
1418
1422
  const secretsAnalyzer = (0, secrets_analyzer_1.createSecretsAnalyzer)();