code-auditor-mcp 1.20.0 → 2.0.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.
- package/dist/adapters/GoAdapter.d.ts +53 -0
- package/dist/adapters/GoAdapter.d.ts.map +1 -0
- package/dist/adapters/GoAdapter.js +602 -0
- package/dist/adapters/GoAdapter.js.map +1 -0
- package/dist/adapters/GoConfig.d.ts +35 -0
- package/dist/adapters/GoConfig.d.ts.map +1 -0
- package/dist/adapters/GoConfig.js +155 -0
- package/dist/adapters/GoConfig.js.map +1 -0
- package/dist/adapters/LanguageAdapter.d.ts +135 -0
- package/dist/adapters/LanguageAdapter.d.ts.map +1 -0
- package/dist/adapters/LanguageAdapter.js +47 -0
- package/dist/adapters/LanguageAdapter.js.map +1 -0
- package/dist/adapters/TypeScriptAdapter.d.ts +43 -0
- package/dist/adapters/TypeScriptAdapter.d.ts.map +1 -0
- package/dist/adapters/TypeScriptAdapter.js +386 -0
- package/dist/adapters/TypeScriptAdapter.js.map +1 -0
- package/dist/adapters/UniversalAnalyzer.d.ts +42 -0
- package/dist/adapters/UniversalAnalyzer.d.ts.map +1 -0
- package/dist/adapters/UniversalAnalyzer.js +103 -0
- package/dist/adapters/UniversalAnalyzer.js.map +1 -0
- package/dist/adapters/UniversalSOLIDAnalyzer.d.ts +48 -0
- package/dist/adapters/UniversalSOLIDAnalyzer.d.ts.map +1 -0
- package/dist/adapters/UniversalSOLIDAnalyzer.js +178 -0
- package/dist/adapters/UniversalSOLIDAnalyzer.js.map +1 -0
- package/dist/adapters/solidAnalyzerCompat.d.ts +21 -0
- package/dist/adapters/solidAnalyzerCompat.d.ts.map +1 -0
- package/dist/adapters/solidAnalyzerCompat.js +78 -0
- package/dist/adapters/solidAnalyzerCompat.js.map +1 -0
- package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts +103 -0
- package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/cross-language/APIContractAnalyzer.js +425 -0
- package/dist/analyzers/cross-language/APIContractAnalyzer.js.map +1 -0
- package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts +117 -0
- package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js +618 -0
- package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js.map +1 -0
- package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts +129 -0
- package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -0
- package/dist/analyzers/cross-language/DependencyGraphBuilder.js +473 -0
- package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -0
- package/dist/analyzers/cross-language/SchemaValidator.d.ts +126 -0
- package/dist/analyzers/cross-language/SchemaValidator.d.ts.map +1 -0
- package/dist/analyzers/cross-language/SchemaValidator.js +522 -0
- package/dist/analyzers/cross-language/SchemaValidator.js.map +1 -0
- package/dist/analyzers/dataAccessAnalyzerCompat.d.ts +20 -0
- package/dist/analyzers/dataAccessAnalyzerCompat.d.ts.map +1 -0
- package/dist/analyzers/dataAccessAnalyzerCompat.js +59 -0
- package/dist/analyzers/dataAccessAnalyzerCompat.js.map +1 -0
- package/dist/analyzers/documentationAnalyzerCompat.d.ts +20 -0
- package/dist/analyzers/documentationAnalyzerCompat.d.ts.map +1 -0
- package/dist/analyzers/documentationAnalyzerCompat.js +52 -0
- package/dist/analyzers/documentationAnalyzerCompat.js.map +1 -0
- package/dist/analyzers/dryAnalyzerCompat.d.ts +20 -0
- package/dist/analyzers/dryAnalyzerCompat.d.ts.map +1 -0
- package/dist/analyzers/dryAnalyzerCompat.js +44 -0
- package/dist/analyzers/dryAnalyzerCompat.js.map +1 -0
- package/dist/analyzers/schemaAnalyzer.d.ts +21 -0
- package/dist/analyzers/schemaAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/schemaAnalyzer.js +405 -0
- package/dist/analyzers/schemaAnalyzer.js.map +1 -0
- package/dist/analyzers/schemaAnalyzerCompat.d.ts +20 -0
- package/dist/analyzers/schemaAnalyzerCompat.d.ts.map +1 -0
- package/dist/analyzers/schemaAnalyzerCompat.js +69 -0
- package/dist/analyzers/schemaAnalyzerCompat.js.map +1 -0
- package/dist/analyzers/solidAnalyzerCompat.d.ts +20 -0
- package/dist/analyzers/solidAnalyzerCompat.d.ts.map +1 -0
- package/dist/analyzers/solidAnalyzerCompat.js +78 -0
- package/dist/analyzers/solidAnalyzerCompat.js.map +1 -0
- package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +71 -0
- package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/universal/UniversalDRYAnalyzer.js +276 -0
- package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -0
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +82 -0
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +489 -0
- package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -0
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts +48 -0
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +175 -0
- package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -0
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +64 -0
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +286 -0
- package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -0
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts +119 -0
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts.map +1 -0
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.js +812 -0
- package/dist/analyzers/universal/UniversalSchemaAnalyzer.js.map +1 -0
- package/dist/auditRunner.d.ts.map +1 -1
- package/dist/auditRunner.js +23 -7
- package/dist/auditRunner.js.map +1 -1
- package/dist/codeIndexDB-enhanced.d.ts +80 -0
- package/dist/codeIndexDB-enhanced.d.ts.map +1 -0
- package/dist/codeIndexDB-enhanced.js +488 -0
- package/dist/codeIndexDB-enhanced.js.map +1 -0
- package/dist/codeIndexDb.d.ts +70 -1
- package/dist/codeIndexDb.d.ts.map +1 -1
- package/dist/codeIndexDb.js +199 -2
- package/dist/codeIndexDb.js.map +1 -1
- package/dist/config/defaults.js +1 -1
- package/dist/config/defaults.js.map +1 -1
- package/dist/languages/LanguageOrchestrator.d.ts +181 -0
- package/dist/languages/LanguageOrchestrator.d.ts.map +1 -0
- package/dist/languages/LanguageOrchestrator.js +365 -0
- package/dist/languages/LanguageOrchestrator.js.map +1 -0
- package/dist/languages/LanguageRegistry.d.ts +43 -0
- package/dist/languages/LanguageRegistry.d.ts.map +1 -0
- package/dist/languages/LanguageRegistry.js +86 -0
- package/dist/languages/LanguageRegistry.js.map +1 -0
- package/dist/languages/RuntimeManager.d.ts +181 -0
- package/dist/languages/RuntimeManager.d.ts.map +1 -0
- package/dist/languages/RuntimeManager.js +841 -0
- package/dist/languages/RuntimeManager.js.map +1 -0
- package/dist/languages/UniversalAnalyzer.d.ts +37 -0
- package/dist/languages/UniversalAnalyzer.d.ts.map +1 -0
- package/dist/languages/UniversalAnalyzer.js +101 -0
- package/dist/languages/UniversalAnalyzer.js.map +1 -0
- package/dist/languages/go/GoAdapter.d.ts +57 -0
- package/dist/languages/go/GoAdapter.d.ts.map +1 -0
- package/dist/languages/go/GoAdapter.js +360 -0
- package/dist/languages/go/GoAdapter.js.map +1 -0
- package/dist/languages/index.d.ts +13 -0
- package/dist/languages/index.d.ts.map +1 -0
- package/dist/languages/index.js +23 -0
- package/dist/languages/index.js.map +1 -0
- package/dist/languages/types.d.ts +182 -0
- package/dist/languages/types.d.ts.map +1 -0
- package/dist/languages/types.js +5 -0
- package/dist/languages/types.js.map +1 -0
- package/dist/languages/typescript/TypeScriptAdapter.d.ts +108 -0
- package/dist/languages/typescript/TypeScriptAdapter.d.ts.map +1 -0
- package/dist/languages/typescript/TypeScriptAdapter.js +567 -0
- package/dist/languages/typescript/TypeScriptAdapter.js.map +1 -0
- package/dist/languages/typescript/test-extraction.d.ts +2 -0
- package/dist/languages/typescript/test-extraction.d.ts.map +1 -0
- package/dist/languages/typescript/test-extraction.js +36 -0
- package/dist/languages/typescript/test-extraction.js.map +1 -0
- package/dist/mcp-hybrid.d.ts +10 -0
- package/dist/mcp-hybrid.d.ts.map +1 -0
- package/dist/mcp-hybrid.js +41 -0
- package/dist/mcp-hybrid.js.map +1 -0
- package/dist/mcp-index.d.ts +11 -0
- package/dist/mcp-index.d.ts.map +1 -0
- package/dist/mcp-index.js +101 -0
- package/dist/mcp-index.js.map +1 -0
- package/dist/mcp-tools/workflowGuide.d.ts.map +1 -1
- package/dist/mcp-tools/workflowGuide.js +67 -10
- package/dist/mcp-tools/workflowGuide.js.map +1 -1
- package/dist/mcp-tools-shared.d.ts +49 -0
- package/dist/mcp-tools-shared.d.ts.map +1 -0
- package/dist/mcp-tools-shared.js +1282 -0
- package/dist/mcp-tools-shared.js.map +1 -0
- package/dist/mcp-ui-server.d.ts +27 -0
- package/dist/mcp-ui-server.d.ts.map +1 -0
- package/dist/mcp-ui-server.js +484 -0
- package/dist/mcp-ui-server.js.map +1 -0
- package/dist/mcp-ui-simple.d.ts +27 -0
- package/dist/mcp-ui-simple.d.ts.map +1 -0
- package/dist/mcp-ui-simple.js +425 -0
- package/dist/mcp-ui-simple.js.map +1 -0
- package/dist/mcp.js +7 -4
- package/dist/mcp.js.map +1 -1
- package/dist/services/SchemaParser.d.ts +89 -0
- package/dist/services/SchemaParser.d.ts.map +1 -0
- package/dist/services/SchemaParser.js +434 -0
- package/dist/services/SchemaParser.js.map +1 -0
- package/dist/types/crossLanguage.d.ts +267 -0
- package/dist/types/crossLanguage.d.ts.map +1 -0
- package/dist/types/crossLanguage.js +6 -0
- package/dist/types/crossLanguage.js.map +1 -0
- package/dist/types.d.ts +128 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/fileDiscovery.d.ts +6 -0
- package/dist/utils/fileDiscovery.d.ts.map +1 -1
- package/dist/utils/fileDiscovery.js +12 -1
- package/dist/utils/fileDiscovery.js.map +1 -1
- package/examples/schema-example.json +364 -0
- package/examples/schema-example.yaml +137 -0
- package/package.json +10 -3
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compatibility layer for Data Access Analyzer
|
|
3
|
+
* Ensures the new universal analyzer produces similar results to the legacy one
|
|
4
|
+
*/
|
|
5
|
+
import type { AnalyzerFunction } from '../types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Legacy-compatible data access analyzer function
|
|
8
|
+
* This wraps the new UniversalDataAccessAnalyzer to maintain API compatibility
|
|
9
|
+
*/
|
|
10
|
+
export declare const analyzeDataAccess: AnalyzerFunction;
|
|
11
|
+
/**
|
|
12
|
+
* Analyzer definition for registration
|
|
13
|
+
*/
|
|
14
|
+
export declare const dataAccessAnalyzer: {
|
|
15
|
+
name: string;
|
|
16
|
+
description: string;
|
|
17
|
+
category: string;
|
|
18
|
+
analyze: AnalyzerFunction;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=dataAccessAnalyzerCompat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataAccessAnalyzerCompat.d.ts","sourceRoot":"","sources":["../../src/analyzers/dataAccessAnalyzerCompat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOpD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,gBAqC/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;CAK9B,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compatibility layer for Data Access Analyzer
|
|
3
|
+
* Ensures the new universal analyzer produces similar results to the legacy one
|
|
4
|
+
*/
|
|
5
|
+
import { UniversalDataAccessAnalyzer } from './universal/UniversalDataAccessAnalyzer.js';
|
|
6
|
+
import { initializeLanguages } from '../languages/index.js';
|
|
7
|
+
// Initialize language system on module load
|
|
8
|
+
initializeLanguages();
|
|
9
|
+
/**
|
|
10
|
+
* Legacy-compatible data access analyzer function
|
|
11
|
+
* This wraps the new UniversalDataAccessAnalyzer to maintain API compatibility
|
|
12
|
+
*/
|
|
13
|
+
export const analyzeDataAccess = async (files, config = {}, options = {}, progressCallback) => {
|
|
14
|
+
const analyzer = new UniversalDataAccessAnalyzer();
|
|
15
|
+
// Map legacy config to universal config, only including defined values
|
|
16
|
+
const universalConfig = {};
|
|
17
|
+
if (config.databases !== undefined)
|
|
18
|
+
universalConfig.databases = config.databases;
|
|
19
|
+
if (config.organizationPatterns !== undefined)
|
|
20
|
+
universalConfig.organizationPatterns = config.organizationPatterns;
|
|
21
|
+
if (config.tablePatterns !== undefined)
|
|
22
|
+
universalConfig.tablePatterns = config.tablePatterns;
|
|
23
|
+
if (config.performanceThresholds !== undefined)
|
|
24
|
+
universalConfig.performanceThresholds = config.performanceThresholds;
|
|
25
|
+
if (config.securityPatterns !== undefined)
|
|
26
|
+
universalConfig.securityPatterns = config.securityPatterns;
|
|
27
|
+
if (config.checkOrgFilters !== undefined)
|
|
28
|
+
universalConfig.checkOrgFilters = config.checkOrgFilters;
|
|
29
|
+
if (config.checkSQLInjection !== undefined)
|
|
30
|
+
universalConfig.checkSQLInjection = config.checkSQLInjection;
|
|
31
|
+
if (config.checkPerformance !== undefined)
|
|
32
|
+
universalConfig.checkPerformance = config.checkPerformance;
|
|
33
|
+
// Call the universal analyzer
|
|
34
|
+
const result = await analyzer.analyze(files, universalConfig, {
|
|
35
|
+
progressCallback: progressCallback ? (progress) => {
|
|
36
|
+
progressCallback({
|
|
37
|
+
current: Math.floor(progress * 100),
|
|
38
|
+
total: 100,
|
|
39
|
+
analyzer: 'data-access',
|
|
40
|
+
phase: 'analyzing'
|
|
41
|
+
});
|
|
42
|
+
} : undefined,
|
|
43
|
+
...options
|
|
44
|
+
});
|
|
45
|
+
// Transform result to include data access patterns
|
|
46
|
+
// Note: The universal analyzer focuses on violations, while the legacy one
|
|
47
|
+
// also returned DataAccessPattern objects. For now, we'll just return violations.
|
|
48
|
+
return result;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Analyzer definition for registration
|
|
52
|
+
*/
|
|
53
|
+
export const dataAccessAnalyzer = {
|
|
54
|
+
name: 'data-access',
|
|
55
|
+
description: 'Analyzes database access patterns and data layer interactions',
|
|
56
|
+
category: 'security',
|
|
57
|
+
analyze: analyzeDataAccess
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=dataAccessAnalyzerCompat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataAccessAnalyzerCompat.js","sourceRoot":"","sources":["../../src/analyzers/dataAccessAnalyzerCompat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,4CAA4C;AAC5C,mBAAmB,EAAE,CAAC;AAEtB;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAqB,KAAK,EACtD,KAAe,EACf,SAAc,EAAE,EAChB,OAAO,GAAG,EAAE,EACZ,gBAAgB,EAChB,EAAE;IACF,MAAM,QAAQ,GAAG,IAAI,2BAA2B,EAAE,CAAC;IAEnD,uEAAuE;IACvE,MAAM,eAAe,GAAQ,EAAE,CAAC;IAEhC,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;QAAE,eAAe,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACjF,IAAI,MAAM,CAAC,oBAAoB,KAAK,SAAS;QAAE,eAAe,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;IAClH,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS;QAAE,eAAe,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAC7F,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS;QAAE,eAAe,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;IACrH,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS;QAAE,eAAe,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACtG,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS;QAAE,eAAe,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IACnG,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS;QAAE,eAAe,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;IACzG,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS;QAAE,eAAe,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAEtG,8BAA8B;IAC9B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE;QAC5D,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAgB,EAAE,EAAE;YACxD,gBAAgB,CAAC;gBACf,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;gBACnC,KAAK,EAAE,GAAG;gBACV,QAAQ,EAAE,aAAa;gBACvB,KAAK,EAAE,WAAW;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC,CAAC,SAAS;QACb,GAAG,OAAO;KACX,CAAC,CAAC;IAEH,mDAAmD;IACnD,2EAA2E;IAC3E,kFAAkF;IAClF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,+DAA+D;IAC5E,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,iBAAiB;CAC3B,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compatibility layer for DocumentationAnalyzer
|
|
3
|
+
* Ensures the new universal analyzer produces identical results to the legacy one
|
|
4
|
+
*/
|
|
5
|
+
import type { AnalyzerFunction } from '../types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Legacy-compatible documentation analyzer function
|
|
8
|
+
* This wraps the new UniversalDocumentationAnalyzer to maintain API compatibility
|
|
9
|
+
*/
|
|
10
|
+
export declare const analyzeDocumentation: AnalyzerFunction;
|
|
11
|
+
/**
|
|
12
|
+
* Analyzer definition for registration
|
|
13
|
+
*/
|
|
14
|
+
export declare const documentationAnalyzer: {
|
|
15
|
+
name: string;
|
|
16
|
+
description: string;
|
|
17
|
+
category: string;
|
|
18
|
+
analyze: AnalyzerFunction;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=documentationAnalyzerCompat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"documentationAnalyzerCompat.d.ts","sourceRoot":"","sources":["../../src/analyzers/documentationAnalyzerCompat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOpD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,gBAqClC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;CAKjC,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compatibility layer for DocumentationAnalyzer
|
|
3
|
+
* Ensures the new universal analyzer produces identical results to the legacy one
|
|
4
|
+
*/
|
|
5
|
+
import { UniversalDocumentationAnalyzer } from './universal/UniversalDocumentationAnalyzer.js';
|
|
6
|
+
import { initializeLanguages } from '../languages/index.js';
|
|
7
|
+
// Initialize language system on module load
|
|
8
|
+
initializeLanguages();
|
|
9
|
+
/**
|
|
10
|
+
* Legacy-compatible documentation analyzer function
|
|
11
|
+
* This wraps the new UniversalDocumentationAnalyzer to maintain API compatibility
|
|
12
|
+
*/
|
|
13
|
+
export const analyzeDocumentation = async (files, config = {}, options = {}, progressCallback) => {
|
|
14
|
+
console.log('[DEBUG] DocumentationAnalyzerCompat called with files:', files);
|
|
15
|
+
console.log('[DEBUG] DocumentationAnalyzerCompat config:', config);
|
|
16
|
+
const analyzer = new UniversalDocumentationAnalyzer();
|
|
17
|
+
// Convert legacy config format if needed
|
|
18
|
+
const universalConfig = {
|
|
19
|
+
requireFunctionDocs: config.requireFunctionDocs ?? true,
|
|
20
|
+
requireClassDocs: config.requireComponentDocs ?? true, // Map component → class
|
|
21
|
+
requireFileDocs: config.requireFileDocs ?? true,
|
|
22
|
+
requireParamDocs: config.requireParamDocs ?? true,
|
|
23
|
+
requireReturnDocs: config.requireReturnDocs ?? true,
|
|
24
|
+
minDescriptionLength: config.minDescriptionLength ?? 10,
|
|
25
|
+
checkExportedOnly: config.checkExportedOnly ?? false,
|
|
26
|
+
exemptPatterns: config.exemptPatterns ?? ['test', 'spec', '\\.d\\.ts$', 'mock', 'fixture']
|
|
27
|
+
};
|
|
28
|
+
// Call the universal analyzer
|
|
29
|
+
const result = await analyzer.analyze(files, universalConfig, {
|
|
30
|
+
progressCallback: progressCallback ? (progress) => {
|
|
31
|
+
progressCallback({
|
|
32
|
+
current: Math.floor(progress * 100),
|
|
33
|
+
total: 100,
|
|
34
|
+
analyzer: 'documentation',
|
|
35
|
+
phase: 'analyzing'
|
|
36
|
+
});
|
|
37
|
+
} : undefined,
|
|
38
|
+
...options
|
|
39
|
+
});
|
|
40
|
+
// The result format should be identical, but we can add any necessary transformations here
|
|
41
|
+
return result;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Analyzer definition for registration
|
|
45
|
+
*/
|
|
46
|
+
export const documentationAnalyzer = {
|
|
47
|
+
name: 'documentation',
|
|
48
|
+
description: 'Analyzes documentation quality across the codebase',
|
|
49
|
+
category: 'documentation',
|
|
50
|
+
analyze: analyzeDocumentation
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=documentationAnalyzerCompat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"documentationAnalyzerCompat.js","sourceRoot":"","sources":["../../src/analyzers/documentationAnalyzerCompat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,4CAA4C;AAC5C,mBAAmB,EAAE,CAAC;AAEtB;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAqB,KAAK,EACzD,KAAe,EACf,SAAc,EAAE,EAChB,OAAO,GAAG,EAAE,EACZ,gBAAgB,EAChB,EAAE;IACF,OAAO,CAAC,GAAG,CAAC,wDAAwD,EAAE,KAAK,CAAC,CAAC;IAC7E,OAAO,CAAC,GAAG,CAAC,6CAA6C,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,IAAI,8BAA8B,EAAE,CAAC;IAEtD,yCAAyC;IACzC,MAAM,eAAe,GAAG;QACtB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,IAAI,IAAI;QACvD,gBAAgB,EAAE,MAAM,CAAC,oBAAoB,IAAI,IAAI,EAAG,wBAAwB;QAChF,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;QAC/C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI;QACjD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,IAAI;QACnD,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,IAAI,EAAE;QACvD,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,KAAK;QACpD,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC;KAC3F,CAAC;IAEF,8BAA8B;IAC9B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE;QAC5D,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAgB,EAAE,EAAE;YACxD,gBAAgB,CAAC;gBACf,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;gBACnC,KAAK,EAAE,GAAG;gBACV,QAAQ,EAAE,eAAe;gBACzB,KAAK,EAAE,WAAW;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC,CAAC,SAAS;QACb,GAAG,OAAO;KACX,CAAC,CAAC;IAEH,2FAA2F;IAC3F,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,oDAAoD;IACjE,QAAQ,EAAE,eAAe;IACzB,OAAO,EAAE,oBAAoB;CAC9B,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compatibility layer for DRY Analyzer
|
|
3
|
+
* Ensures the new universal analyzer produces identical results to the legacy one
|
|
4
|
+
*/
|
|
5
|
+
import type { AnalyzerFunction } from '../types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Legacy-compatible DRY analyzer function
|
|
8
|
+
* This wraps the new UniversalDRYAnalyzer to maintain API compatibility
|
|
9
|
+
*/
|
|
10
|
+
export declare const analyzeDRY: AnalyzerFunction;
|
|
11
|
+
/**
|
|
12
|
+
* Analyzer definition for registration
|
|
13
|
+
*/
|
|
14
|
+
export declare const dryAnalyzer: {
|
|
15
|
+
name: string;
|
|
16
|
+
description: string;
|
|
17
|
+
category: string;
|
|
18
|
+
analyze: AnalyzerFunction;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=dryAnalyzerCompat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dryAnalyzerCompat.d.ts","sourceRoot":"","sources":["../../src/analyzers/dryAnalyzerCompat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOpD;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,gBA6BxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;CAKvB,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compatibility layer for DRY Analyzer
|
|
3
|
+
* Ensures the new universal analyzer produces identical results to the legacy one
|
|
4
|
+
*/
|
|
5
|
+
import { UniversalDRYAnalyzer } from './universal/UniversalDRYAnalyzer.js';
|
|
6
|
+
import { initializeLanguages } from '../languages/index.js';
|
|
7
|
+
// Initialize language system on module load
|
|
8
|
+
initializeLanguages();
|
|
9
|
+
/**
|
|
10
|
+
* Legacy-compatible DRY analyzer function
|
|
11
|
+
* This wraps the new UniversalDRYAnalyzer to maintain API compatibility
|
|
12
|
+
*/
|
|
13
|
+
export const analyzeDRY = async (files, config = {}, options = {}, progressCallback) => {
|
|
14
|
+
const analyzer = new UniversalDRYAnalyzer();
|
|
15
|
+
// The config format should be mostly compatible
|
|
16
|
+
const universalConfig = {
|
|
17
|
+
...config,
|
|
18
|
+
// Map any legacy config fields if needed
|
|
19
|
+
};
|
|
20
|
+
// Call the universal analyzer
|
|
21
|
+
const result = await analyzer.analyze(files, universalConfig, {
|
|
22
|
+
progressCallback: progressCallback ? (progress) => {
|
|
23
|
+
progressCallback({
|
|
24
|
+
current: Math.floor(progress * 100),
|
|
25
|
+
total: 100,
|
|
26
|
+
analyzer: 'dry',
|
|
27
|
+
phase: 'analyzing'
|
|
28
|
+
});
|
|
29
|
+
} : undefined,
|
|
30
|
+
...options
|
|
31
|
+
});
|
|
32
|
+
// The result format should be identical, but we can add any necessary transformations here
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Analyzer definition for registration
|
|
37
|
+
*/
|
|
38
|
+
export const dryAnalyzer = {
|
|
39
|
+
name: 'dry',
|
|
40
|
+
description: 'Detects code duplication across the codebase',
|
|
41
|
+
category: 'maintainability',
|
|
42
|
+
analyze: analyzeDRY
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=dryAnalyzerCompat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dryAnalyzerCompat.js","sourceRoot":"","sources":["../../src/analyzers/dryAnalyzerCompat.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,4CAA4C;AAC5C,mBAAmB,EAAE,CAAC;AAEtB;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAqB,KAAK,EAC/C,KAAe,EACf,SAAc,EAAE,EAChB,OAAO,GAAG,EAAE,EACZ,gBAAgB,EAChB,EAAE;IACF,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAE5C,gDAAgD;IAChD,MAAM,eAAe,GAAG;QACtB,GAAG,MAAM;QACT,yCAAyC;KAC1C,CAAC;IAEF,8BAA8B;IAC9B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE;QAC5D,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAgB,EAAE,EAAE;YACxD,gBAAgB,CAAC;gBACf,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;gBACnC,KAAK,EAAE,GAAG;gBACV,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,WAAW;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC,CAAC,SAAS;QACb,GAAG,OAAO;KACX,CAAC,CAAC;IAEH,2FAA2F;IAC3F,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,KAAK;IACX,WAAW,EAAE,8CAA8C;IAC3D,QAAQ,EAAE,iBAAiB;IAC3B,OAAO,EAAE,UAAU;CACpB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Schema Analyzer
|
|
3
|
+
* Analyzes code against loaded database schemas to find violations and patterns
|
|
4
|
+
*/
|
|
5
|
+
import type { AnalyzerFunction, AnalyzerDefinition } from '../types.js';
|
|
6
|
+
export interface SchemaAnalyzerConfig {
|
|
7
|
+
enableTableUsageTracking: boolean;
|
|
8
|
+
checkMissingReferences: boolean;
|
|
9
|
+
checkNamingConventions: boolean;
|
|
10
|
+
detectUnusedTables: boolean;
|
|
11
|
+
validateQueryPatterns: boolean;
|
|
12
|
+
maxQueriesPerFunction: number;
|
|
13
|
+
allowedQueryPatterns: string[];
|
|
14
|
+
requiredSchemas: string[];
|
|
15
|
+
}
|
|
16
|
+
export declare const analyzeSchema: AnalyzerFunction;
|
|
17
|
+
/**
|
|
18
|
+
* Schema Analyzer Definition
|
|
19
|
+
*/
|
|
20
|
+
export declare const schemaAnalyzer: AnalyzerDefinition;
|
|
21
|
+
//# sourceMappingURL=schemaAnalyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schemaAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzers/schemaAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAmC,MAAM,aAAa,CAAC;AAMzG,MAAM,WAAW,oBAAoB;IACnC,wBAAwB,EAAE,OAAO,CAAC;IAClC,sBAAsB,EAAE,OAAO,CAAC;IAChC,sBAAsB,EAAE,OAAO,CAAC;IAChC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAaD,eAAO,MAAM,aAAa,EAAE,gBA2F3B,CAAC;AAoXF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,kBAM5B,CAAC"}
|