@aiready/consistency 0.21.9 → 0.21.11
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/.turbo/turbo-build.log +23 -24
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +4 -4
- package/dist/index.mjs +3 -3
- package/package.json +2 -2
- package/src/__tests__/provider.test.ts +6 -34
- package/src/index.ts +3 -3
- package/src/provider.ts +2 -2
- package/dist/__tests__/analyzer.test.d.ts +0 -2
- package/dist/__tests__/analyzer.test.d.ts.map +0 -1
- package/dist/__tests__/analyzer.test.js +0 -157
- package/dist/__tests__/analyzer.test.js.map +0 -1
- package/dist/__tests__/language-filter.test.d.ts +0 -2
- package/dist/__tests__/language-filter.test.d.ts.map +0 -1
- package/dist/__tests__/language-filter.test.js +0 -46
- package/dist/__tests__/language-filter.test.js.map +0 -1
- package/dist/__tests__/scoring.test.d.ts +0 -2
- package/dist/__tests__/scoring.test.d.ts.map +0 -1
- package/dist/__tests__/scoring.test.js +0 -118
- package/dist/__tests__/scoring.test.js.map +0 -1
- package/dist/analyzer.d.ts +0 -7
- package/dist/analyzer.d.ts.map +0 -1
- package/dist/analyzer.js +0 -160
- package/dist/analyzer.js.map +0 -1
- package/dist/analyzers/naming-ast.d.ts +0 -7
- package/dist/analyzers/naming-ast.d.ts.map +0 -1
- package/dist/analyzers/naming-ast.js +0 -253
- package/dist/analyzers/naming-ast.js.map +0 -1
- package/dist/analyzers/naming-constants.d.ts +0 -21
- package/dist/analyzers/naming-constants.d.ts.map +0 -1
- package/dist/analyzers/naming-constants.js +0 -96
- package/dist/analyzers/naming-constants.js.map +0 -1
- package/dist/analyzers/naming-python.d.ts +0 -16
- package/dist/analyzers/naming-python.d.ts.map +0 -1
- package/dist/analyzers/naming-python.js +0 -165
- package/dist/analyzers/naming-python.js.map +0 -1
- package/dist/analyzers/naming.d.ts +0 -6
- package/dist/analyzers/naming.d.ts.map +0 -1
- package/dist/analyzers/naming.js +0 -234
- package/dist/analyzers/naming.js.map +0 -1
- package/dist/analyzers/patterns.d.ts +0 -10
- package/dist/analyzers/patterns.d.ts.map +0 -1
- package/dist/analyzers/patterns.js +0 -197
- package/dist/analyzers/patterns.js.map +0 -1
- package/dist/chunk-2BTBNG6X.mjs +0 -814
- package/dist/chunk-3ZB6FFRL.mjs +0 -661
- package/dist/chunk-5UFRGXSB.mjs +0 -783
- package/dist/chunk-66M3TIO7.mjs +0 -837
- package/dist/chunk-6BM5MV3S.mjs +0 -719
- package/dist/chunk-6H3JHDP7.mjs +0 -832
- package/dist/chunk-7PHHJOGC.mjs +0 -1374
- package/dist/chunk-AASFXGUR.mjs +0 -1622
- package/dist/chunk-AR7DIZLP.mjs +0 -827
- package/dist/chunk-BDDMOIU2.mjs +0 -385
- package/dist/chunk-BMILMNKJ.mjs +0 -1633
- package/dist/chunk-BYY6MD5T.mjs +0 -729
- package/dist/chunk-CA4Q5JBK.mjs +0 -1143
- package/dist/chunk-CF4LU7KE.mjs +0 -384
- package/dist/chunk-CJINEUIH.mjs +0 -1369
- package/dist/chunk-CLWNLHDB.mjs +0 -909
- package/dist/chunk-CZUJTDNH.mjs +0 -848
- package/dist/chunk-DNGW3WQK.mjs +0 -810
- package/dist/chunk-DSI3TEO2.mjs +0 -662
- package/dist/chunk-EIQ5K6OO.mjs +0 -1579
- package/dist/chunk-FEJODRK5.mjs +0 -783
- package/dist/chunk-FK56AZ43.mjs +0 -817
- package/dist/chunk-H6S7WKSQ.mjs +0 -729
- package/dist/chunk-HAOJLJNB.mjs +0 -1290
- package/dist/chunk-HJCP36VW.mjs +0 -821
- package/dist/chunk-HPG7P6PD.mjs +0 -1372
- package/dist/chunk-IVRBV7SE.mjs +0 -1295
- package/dist/chunk-IXBC6GVT.mjs +0 -832
- package/dist/chunk-J5IFYDVU.mjs +0 -1579
- package/dist/chunk-KWQVBF7K.mjs +0 -831
- package/dist/chunk-LD3CHHU2.mjs +0 -1297
- package/dist/chunk-LMOXGPCM.mjs +0 -722
- package/dist/chunk-LSXZH6X6.mjs +0 -810
- package/dist/chunk-LUAREV6A.mjs +0 -508
- package/dist/chunk-MAPVFXBP.mjs +0 -708
- package/dist/chunk-MM2PLUCH.mjs +0 -1376
- package/dist/chunk-NPWCJZUG.mjs +0 -708
- package/dist/chunk-ON73WHHU.mjs +0 -1310
- package/dist/chunk-P6NVKUBB.mjs +0 -831
- package/dist/chunk-Q3KTWDSL.mjs +0 -808
- package/dist/chunk-Q5XMWG33.mjs +0 -661
- package/dist/chunk-QOIPVP6P.mjs +0 -1607
- package/dist/chunk-RMEQWG52.mjs +0 -1633
- package/dist/chunk-S6BZVTWN.mjs +0 -731
- package/dist/chunk-TE6JYZD3.mjs +0 -810
- package/dist/chunk-TLVLM3M5.mjs +0 -771
- package/dist/chunk-TXHPUU7A.mjs +0 -863
- package/dist/chunk-UMBBTNQN.mjs +0 -787
- package/dist/chunk-V2UPXL7L.mjs +0 -842
- package/dist/chunk-VODCPPET.mjs +0 -1292
- package/dist/chunk-W6UGMKRV.mjs +0 -1310
- package/dist/chunk-WGH4TGZ3.mjs +0 -1288
- package/dist/chunk-WTBDNCEN.mjs +0 -1352
- package/dist/chunk-XVW5DKJQ.mjs +0 -1619
- package/dist/chunk-YCDCIOJN.mjs +0 -842
- package/dist/chunk-YEHXYHGY.mjs +0 -1497
- package/dist/chunk-YHHXE2JX.mjs +0 -912
- package/dist/chunk-ZB6UK276.mjs +0 -662
- package/dist/chunk-ZG3KFSD3.mjs +0 -1142
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/scoring.d.ts +0 -12
- package/dist/scoring.d.ts.map +0 -1
- package/dist/scoring.js +0 -110
- package/dist/scoring.js.map +0 -1
- package/dist/types.d.ts +0 -53
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
- package/dist/utils/ast-parser.d.ts +0 -46
- package/dist/utils/ast-parser.d.ts.map +0 -1
- package/dist/utils/ast-parser.js +0 -157
- package/dist/utils/ast-parser.js.map +0 -1
- package/dist/utils/config-loader.d.ts +0 -19
- package/dist/utils/config-loader.d.ts.map +0 -1
- package/dist/utils/config-loader.js +0 -31
- package/dist/utils/config-loader.js.map +0 -1
- package/dist/utils/context-detector.d.ts +0 -40
- package/dist/utils/context-detector.d.ts.map +0 -1
- package/dist/utils/context-detector.js +0 -225
- package/dist/utils/context-detector.js.map +0 -1
- package/dist/utils/scope-tracker.d.ts +0 -87
- package/dist/utils/scope-tracker.d.ts.map +0 -1
- package/dist/utils/scope-tracker.js +0 -161
- package/dist/utils/scope-tracker.js.map +0 -1
package/dist/cli.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
package/dist/cli.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC,CAAC,uBAAuB;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/scoring.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { ToolScoringOutput } from '@aiready/core';
|
|
2
|
-
import type { ConsistencyIssue } from './types';
|
|
3
|
-
/**
|
|
4
|
-
* Calculate AI Readiness Score for code consistency (0-100)
|
|
5
|
-
*
|
|
6
|
-
* Based on:
|
|
7
|
-
* - Issue density (issues per file)
|
|
8
|
-
* - Weighted severity (critical: 10pts, major: 3pts, minor: 0.5pts)
|
|
9
|
-
* - Pattern consistency across codebase
|
|
10
|
-
*/
|
|
11
|
-
export declare function calculateConsistencyScore(issues: ConsistencyIssue[], totalFilesAnalyzed: number): ToolScoringOutput;
|
|
12
|
-
//# sourceMappingURL=scoring.d.ts.map
|
package/dist/scoring.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,gBAAgB,EAAE,EAC1B,kBAAkB,EAAE,MAAM,GACzB,iBAAiB,CAiHnB"}
|
package/dist/scoring.js
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Calculate AI Readiness Score for code consistency (0-100)
|
|
3
|
-
*
|
|
4
|
-
* Based on:
|
|
5
|
-
* - Issue density (issues per file)
|
|
6
|
-
* - Weighted severity (critical: 10pts, major: 3pts, minor: 0.5pts)
|
|
7
|
-
* - Pattern consistency across codebase
|
|
8
|
-
*/
|
|
9
|
-
export function calculateConsistencyScore(issues, totalFilesAnalyzed) {
|
|
10
|
-
const criticalIssues = issues.filter(i => i.severity === 'critical').length;
|
|
11
|
-
const majorIssues = issues.filter(i => i.severity === 'major').length;
|
|
12
|
-
const minorIssues = issues.filter(i => i.severity === 'minor').length;
|
|
13
|
-
const totalIssues = issues.length;
|
|
14
|
-
// Issue density penalty (0-50 points)
|
|
15
|
-
// Ideal: 0 issues/file = 0 penalty
|
|
16
|
-
// Acceptable: <1 issue/file = 10 penalty
|
|
17
|
-
// High: 1-3 issues/file = 10-40 penalty
|
|
18
|
-
// Critical: >3 issues/file = 40-50 penalty
|
|
19
|
-
const issuesPerFile = totalFilesAnalyzed > 0 ? totalIssues / totalFilesAnalyzed : 0;
|
|
20
|
-
const densityPenalty = Math.min(50, issuesPerFile * 15);
|
|
21
|
-
// Weighted severity penalty (0-50 points)
|
|
22
|
-
// Each critical: 10 points
|
|
23
|
-
// Each major: 3 points
|
|
24
|
-
// Each minor: 0.5 points
|
|
25
|
-
const weightedCount = (criticalIssues * 10) + (majorIssues * 3) + (minorIssues * 0.5);
|
|
26
|
-
const avgWeightedIssuesPerFile = totalFilesAnalyzed > 0 ? weightedCount / totalFilesAnalyzed : 0;
|
|
27
|
-
const severityPenalty = Math.min(50, avgWeightedIssuesPerFile * 2);
|
|
28
|
-
// Calculate final score
|
|
29
|
-
const rawScore = 100 - densityPenalty - severityPenalty;
|
|
30
|
-
const score = Math.max(0, Math.min(100, Math.round(rawScore)));
|
|
31
|
-
// Build factors array
|
|
32
|
-
const factors = [
|
|
33
|
-
{
|
|
34
|
-
name: 'Issue Density',
|
|
35
|
-
impact: -Math.round(densityPenalty),
|
|
36
|
-
description: `${issuesPerFile.toFixed(2)} issues per file ${issuesPerFile < 1 ? '(excellent)' : issuesPerFile < 3 ? '(acceptable)' : '(high)'}`,
|
|
37
|
-
},
|
|
38
|
-
];
|
|
39
|
-
if (criticalIssues > 0) {
|
|
40
|
-
const criticalImpact = Math.min(30, criticalIssues * 10);
|
|
41
|
-
factors.push({
|
|
42
|
-
name: 'Critical Issues',
|
|
43
|
-
impact: -criticalImpact,
|
|
44
|
-
description: `${criticalIssues} critical consistency issue${criticalIssues > 1 ? 's' : ''} (high AI confusion risk)`,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
if (majorIssues > 0) {
|
|
48
|
-
const majorImpact = Math.min(20, Math.round(majorIssues * 3));
|
|
49
|
-
factors.push({
|
|
50
|
-
name: 'Major Issues',
|
|
51
|
-
impact: -majorImpact,
|
|
52
|
-
description: `${majorIssues} major issue${majorIssues > 1 ? 's' : ''} (moderate AI confusion risk)`,
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
if (minorIssues > 0 && minorIssues >= totalFilesAnalyzed) {
|
|
56
|
-
const minorImpact = -Math.round(minorIssues * 0.5);
|
|
57
|
-
factors.push({
|
|
58
|
-
name: 'Minor Issues',
|
|
59
|
-
impact: minorImpact,
|
|
60
|
-
description: `${minorIssues} minor issue${minorIssues > 1 ? 's' : ''} (slight AI confusion risk)`,
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
// Generate recommendations
|
|
64
|
-
const recommendations = [];
|
|
65
|
-
if (criticalIssues > 0) {
|
|
66
|
-
const estimatedImpact = Math.min(30, criticalIssues * 10);
|
|
67
|
-
recommendations.push({
|
|
68
|
-
action: 'Fix critical naming/pattern inconsistencies (highest AI confusion risk)',
|
|
69
|
-
estimatedImpact,
|
|
70
|
-
priority: 'high',
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
if (majorIssues > 5) {
|
|
74
|
-
const estimatedImpact = Math.min(15, Math.round(majorIssues / 2));
|
|
75
|
-
recommendations.push({
|
|
76
|
-
action: 'Standardize naming conventions across codebase',
|
|
77
|
-
estimatedImpact,
|
|
78
|
-
priority: 'medium',
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
if (issuesPerFile > 3) {
|
|
82
|
-
recommendations.push({
|
|
83
|
-
action: 'Establish and enforce coding style guide to reduce inconsistencies',
|
|
84
|
-
estimatedImpact: 12,
|
|
85
|
-
priority: 'medium',
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
if (totalIssues > 20 && minorIssues / totalIssues > 0.7) {
|
|
89
|
-
recommendations.push({
|
|
90
|
-
action: 'Enable linter/formatter to automatically fix minor style issues',
|
|
91
|
-
estimatedImpact: 8,
|
|
92
|
-
priority: 'low',
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
return {
|
|
96
|
-
toolName: 'consistency',
|
|
97
|
-
score,
|
|
98
|
-
rawMetrics: {
|
|
99
|
-
totalIssues,
|
|
100
|
-
criticalIssues,
|
|
101
|
-
majorIssues,
|
|
102
|
-
minorIssues,
|
|
103
|
-
issuesPerFile: Math.round(issuesPerFile * 100) / 100,
|
|
104
|
-
avgWeightedIssuesPerFile: Math.round(avgWeightedIssuesPerFile * 100) / 100,
|
|
105
|
-
},
|
|
106
|
-
factors,
|
|
107
|
-
recommendations,
|
|
108
|
-
};
|
|
109
|
-
}
|
|
110
|
-
//# sourceMappingURL=scoring.js.map
|
package/dist/scoring.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import type { ScanOptions, AnalysisResult, Issue } from '@aiready/core';
|
|
2
|
-
export interface ConsistencyOptions extends ScanOptions {
|
|
3
|
-
/** Check naming conventions and quality */
|
|
4
|
-
checkNaming?: boolean;
|
|
5
|
-
/** Check code pattern consistency */
|
|
6
|
-
checkPatterns?: boolean;
|
|
7
|
-
/** Check architectural consistency */
|
|
8
|
-
checkArchitecture?: boolean;
|
|
9
|
-
/** Minimum severity to report */
|
|
10
|
-
minSeverity?: 'info' | 'minor' | 'major' | 'critical';
|
|
11
|
-
}
|
|
12
|
-
export interface ConsistencyIssue extends Issue {
|
|
13
|
-
type: 'naming-inconsistency' | 'naming-quality' | 'pattern-inconsistency' | 'architecture-inconsistency';
|
|
14
|
-
category: 'naming' | 'patterns' | 'architecture';
|
|
15
|
-
/** Examples of the inconsistency found */
|
|
16
|
-
examples?: string[];
|
|
17
|
-
/** Suggested fix or convention to follow */
|
|
18
|
-
suggestion?: string;
|
|
19
|
-
}
|
|
20
|
-
export interface NamingIssue {
|
|
21
|
-
file: string;
|
|
22
|
-
line: number;
|
|
23
|
-
column?: number;
|
|
24
|
-
type: 'poor-naming' | 'convention-mix' | 'abbreviation' | 'unclear';
|
|
25
|
-
identifier: string;
|
|
26
|
-
suggestion?: string;
|
|
27
|
-
severity: 'critical' | 'major' | 'minor' | 'info';
|
|
28
|
-
}
|
|
29
|
-
export interface PatternIssue {
|
|
30
|
-
files: string[];
|
|
31
|
-
type: 'error-handling' | 'async-style' | 'import-style' | 'api-design';
|
|
32
|
-
description: string;
|
|
33
|
-
examples: string[];
|
|
34
|
-
severity: 'critical' | 'major' | 'minor' | 'info';
|
|
35
|
-
}
|
|
36
|
-
export interface ArchitectureIssue {
|
|
37
|
-
type: 'file-organization' | 'module-structure' | 'export-style';
|
|
38
|
-
description: string;
|
|
39
|
-
affectedPaths: string[];
|
|
40
|
-
severity: 'critical' | 'major' | 'minor' | 'info';
|
|
41
|
-
}
|
|
42
|
-
export interface ConsistencyReport {
|
|
43
|
-
summary: {
|
|
44
|
-
totalIssues: number;
|
|
45
|
-
namingIssues: number;
|
|
46
|
-
patternIssues: number;
|
|
47
|
-
architectureIssues: number;
|
|
48
|
-
filesAnalyzed: number;
|
|
49
|
-
};
|
|
50
|
-
results: AnalysisResult[];
|
|
51
|
-
recommendations: string[];
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAExE,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACrD,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qCAAqC;IACrC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,sCAAsC;IACtC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;CACvD;AAED,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC7C,IAAI,EACA,sBAAsB,GACtB,gBAAgB,GAChB,uBAAuB,GACvB,4BAA4B,CAAC;IACjC,QAAQ,EAAE,QAAQ,GAAG,UAAU,GAAG,cAAc,CAAC;IACjD,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,GAAG,gBAAgB,GAAG,cAAc,GAAG,SAAS,CAAC;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,gBAAgB,GAAG,aAAa,GAAG,cAAc,GAAG,YAAY,CAAC;IACvE,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;CACnD;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,mBAAmB,GAAG,kBAAkB,GAAG,cAAc,CAAC;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;CACnD;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B"}
|
package/dist/types.js
DELETED
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { TSESTree } from '@typescript-eslint/typescript-estree';
|
|
2
|
-
/**
|
|
3
|
-
* Parse a file into an AST
|
|
4
|
-
* Only supports TypeScript/JavaScript files (.ts, .tsx, .js, .jsx)
|
|
5
|
-
*/
|
|
6
|
-
export declare function parseFile(filePath: string, content?: string): TSESTree.Program | null;
|
|
7
|
-
/**
|
|
8
|
-
* Traverse AST nodes with a visitor pattern
|
|
9
|
-
*/
|
|
10
|
-
export declare function traverseAST(node: TSESTree.Node, visitor: {
|
|
11
|
-
enter?: (node: TSESTree.Node, parent: TSESTree.Node | null) => void;
|
|
12
|
-
leave?: (node: TSESTree.Node, parent: TSESTree.Node | null) => void;
|
|
13
|
-
}, parent?: TSESTree.Node | null): void;
|
|
14
|
-
/**
|
|
15
|
-
* Check if a node is within a specific type of ancestor
|
|
16
|
-
*/
|
|
17
|
-
export declare function hasAncestor(node: TSESTree.Node, ancestorTypes: string[], ancestors: TSESTree.Node[]): boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Get the name of an identifier or pattern
|
|
20
|
-
*/
|
|
21
|
-
export declare function getIdentifierName(node: TSESTree.Node): string | null;
|
|
22
|
-
/**
|
|
23
|
-
* Check if a node is a loop
|
|
24
|
-
*/
|
|
25
|
-
export declare function isLoopStatement(node: TSESTree.Node): boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Check if a node is an arrow function or callback
|
|
28
|
-
*/
|
|
29
|
-
export declare function isCallback(node: TSESTree.Node): boolean;
|
|
30
|
-
/**
|
|
31
|
-
* Extract function/method name from various declaration types
|
|
32
|
-
*/
|
|
33
|
-
export declare function getFunctionName(node: TSESTree.Node): string | null;
|
|
34
|
-
/**
|
|
35
|
-
* Check if a variable declaration is in a destructuring pattern
|
|
36
|
-
*/
|
|
37
|
-
export declare function isInDestructuring(node: TSESTree.Node): boolean;
|
|
38
|
-
/**
|
|
39
|
-
* Get the line number from a node
|
|
40
|
-
*/
|
|
41
|
-
export declare function getLineNumber(node: TSESTree.Node): number;
|
|
42
|
-
/**
|
|
43
|
-
* Check if a node represents a coverage metric context
|
|
44
|
-
*/
|
|
45
|
-
export declare function isCoverageContext(node: TSESTree.Node, ancestors: TSESTree.Node[]): boolean;
|
|
46
|
-
//# sourceMappingURL=ast-parser.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast-parser.d.ts","sourceRoot":"","sources":["../../src/utils/ast-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAGvE;;;GAGG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,OAAO,GAAG,IAAI,CAsBrF;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,OAAO,EAAE;IACP,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACpE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;CACrE,EACD,MAAM,GAAE,QAAQ,CAAC,IAAI,GAAG,IAAW,GAClC,IAAI,CAqBN;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,aAAa,EAAE,MAAM,EAAE,EACvB,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,GACzB,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,GAAG,IAAI,CAKpE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAQ5D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAQvD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,GAAG,IAAI,CAgBlE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAI9D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,OAAO,CA8B1F"}
|
package/dist/utils/ast-parser.js
DELETED
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
import { parse } from '@typescript-eslint/typescript-estree';
|
|
2
|
-
import { readFileSync } from 'fs';
|
|
3
|
-
/**
|
|
4
|
-
* Parse a file into an AST
|
|
5
|
-
* Only supports TypeScript/JavaScript files (.ts, .tsx, .js, .jsx)
|
|
6
|
-
*/
|
|
7
|
-
export function parseFile(filePath, content) {
|
|
8
|
-
try {
|
|
9
|
-
const code = content ?? readFileSync(filePath, 'utf-8');
|
|
10
|
-
const isTypeScript = filePath.match(/\.tsx?$/);
|
|
11
|
-
return parse(code, {
|
|
12
|
-
jsx: filePath.match(/\.[jt]sx$/i) !== null,
|
|
13
|
-
loc: true,
|
|
14
|
-
range: true,
|
|
15
|
-
comment: false,
|
|
16
|
-
tokens: false,
|
|
17
|
-
// Relaxed parsing for JavaScript files
|
|
18
|
-
sourceType: 'module',
|
|
19
|
-
ecmaVersion: 'latest',
|
|
20
|
-
// Only use TypeScript parser features for .ts/.tsx files
|
|
21
|
-
filePath: isTypeScript ? filePath : undefined,
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
catch (error) {
|
|
25
|
-
// Silently skip files that fail to parse (likely non-JS/TS or syntax errors)
|
|
26
|
-
// Non-JS/TS files should be filtered before reaching this point
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Traverse AST nodes with a visitor pattern
|
|
32
|
-
*/
|
|
33
|
-
export function traverseAST(node, visitor, parent = null) {
|
|
34
|
-
if (!node)
|
|
35
|
-
return;
|
|
36
|
-
visitor.enter?.(node, parent);
|
|
37
|
-
// Visit children
|
|
38
|
-
for (const key of Object.keys(node)) {
|
|
39
|
-
const value = node[key];
|
|
40
|
-
if (Array.isArray(value)) {
|
|
41
|
-
for (const child of value) {
|
|
42
|
-
if (child && typeof child === 'object' && 'type' in child) {
|
|
43
|
-
traverseAST(child, visitor, node);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
else if (value && typeof value === 'object' && 'type' in value) {
|
|
48
|
-
traverseAST(value, visitor, node);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
visitor.leave?.(node, parent);
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Check if a node is within a specific type of ancestor
|
|
55
|
-
*/
|
|
56
|
-
export function hasAncestor(node, ancestorTypes, ancestors) {
|
|
57
|
-
return ancestors.some(ancestor => ancestorTypes.includes(ancestor.type));
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Get the name of an identifier or pattern
|
|
61
|
-
*/
|
|
62
|
-
export function getIdentifierName(node) {
|
|
63
|
-
if (node.type === 'Identifier') {
|
|
64
|
-
return node.name;
|
|
65
|
-
}
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
/**
|
|
69
|
-
* Check if a node is a loop
|
|
70
|
-
*/
|
|
71
|
-
export function isLoopStatement(node) {
|
|
72
|
-
return [
|
|
73
|
-
'ForStatement',
|
|
74
|
-
'ForInStatement',
|
|
75
|
-
'ForOfStatement',
|
|
76
|
-
'WhileStatement',
|
|
77
|
-
'DoWhileStatement',
|
|
78
|
-
].includes(node.type);
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Check if a node is an arrow function or callback
|
|
82
|
-
*/
|
|
83
|
-
export function isCallback(node) {
|
|
84
|
-
if (node.type === 'ArrowFunctionExpression') {
|
|
85
|
-
return true;
|
|
86
|
-
}
|
|
87
|
-
if (node.type === 'FunctionExpression') {
|
|
88
|
-
return true;
|
|
89
|
-
}
|
|
90
|
-
return false;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Extract function/method name from various declaration types
|
|
94
|
-
*/
|
|
95
|
-
export function getFunctionName(node) {
|
|
96
|
-
switch (node.type) {
|
|
97
|
-
case 'FunctionDeclaration':
|
|
98
|
-
return node.id?.name ?? null;
|
|
99
|
-
case 'FunctionExpression':
|
|
100
|
-
return node.id?.name ?? null;
|
|
101
|
-
case 'ArrowFunctionExpression':
|
|
102
|
-
return null; // Arrow functions don't have names directly
|
|
103
|
-
case 'MethodDefinition':
|
|
104
|
-
if (node.key.type === 'Identifier') {
|
|
105
|
-
return node.key.name;
|
|
106
|
-
}
|
|
107
|
-
return null;
|
|
108
|
-
default:
|
|
109
|
-
return null;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Check if a variable declaration is in a destructuring pattern
|
|
114
|
-
*/
|
|
115
|
-
export function isInDestructuring(node) {
|
|
116
|
-
if (!node)
|
|
117
|
-
return false;
|
|
118
|
-
return node.type === 'ObjectPattern' || node.type === 'ArrayPattern';
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Get the line number from a node
|
|
122
|
-
*/
|
|
123
|
-
export function getLineNumber(node) {
|
|
124
|
-
return node.loc?.start.line ?? 0;
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Check if a node represents a coverage metric context
|
|
128
|
-
*/
|
|
129
|
-
export function isCoverageContext(node, ancestors) {
|
|
130
|
-
// Check if any ancestor or the node itself references coverage-related properties
|
|
131
|
-
const coveragePatterns = /coverage|summary|metrics|pct|percent|statements|branches|functions|lines/i;
|
|
132
|
-
// Check variable name
|
|
133
|
-
if (node.type === 'Identifier' && coveragePatterns.test(node.name)) {
|
|
134
|
-
return true;
|
|
135
|
-
}
|
|
136
|
-
// Check if it's a property of something coverage-related
|
|
137
|
-
for (const ancestor of ancestors.slice(-3)) { // Check last 3 ancestors
|
|
138
|
-
if (ancestor.type === 'MemberExpression') {
|
|
139
|
-
const memberExpr = ancestor;
|
|
140
|
-
if (memberExpr.object.type === 'Identifier' && coveragePatterns.test(memberExpr.object.name)) {
|
|
141
|
-
return true;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
if (ancestor.type === 'ObjectPattern' || ancestor.type === 'ObjectExpression') {
|
|
145
|
-
// Check if parent variable has coverage-related name
|
|
146
|
-
const parent = ancestors[ancestors.indexOf(ancestor) - 1];
|
|
147
|
-
if (parent?.type === 'VariableDeclarator') {
|
|
148
|
-
const varDecl = parent;
|
|
149
|
-
if (varDecl.id.type === 'Identifier' && coveragePatterns.test(varDecl.id.name)) {
|
|
150
|
-
return true;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
return false;
|
|
156
|
-
}
|
|
157
|
-
//# sourceMappingURL=ast-parser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast-parser.js","sourceRoot":"","sources":["../../src/utils/ast-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Configuration for naming analyzers
|
|
3
|
-
*/
|
|
4
|
-
export interface NamingConfig {
|
|
5
|
-
customAbbreviations: Set<string>;
|
|
6
|
-
customShortWords: Set<string>;
|
|
7
|
-
disabledChecks: Set<string>;
|
|
8
|
-
allAbbreviations: Set<string>;
|
|
9
|
-
allShortWords: Set<string>;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Loads and merges naming configuration for consistency analyzers
|
|
13
|
-
* Extracts common config loading logic used by both naming.ts and naming-ast.ts
|
|
14
|
-
*
|
|
15
|
-
* @param files - Array of files being analyzed (used to determine project root)
|
|
16
|
-
* @returns Merged configuration with custom and default abbreviations/short words
|
|
17
|
-
*/
|
|
18
|
-
export declare function loadNamingConfig(files: string[]): Promise<NamingConfig>;
|
|
19
|
-
//# sourceMappingURL=config-loader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAsB7E"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { loadConfig } from '@aiready/core';
|
|
2
|
-
import { dirname } from 'path';
|
|
3
|
-
import { COMMON_SHORT_WORDS, ACCEPTABLE_ABBREVIATIONS, } from '../analyzers/naming-constants';
|
|
4
|
-
/**
|
|
5
|
-
* Loads and merges naming configuration for consistency analyzers
|
|
6
|
-
* Extracts common config loading logic used by both naming.ts and naming-ast.ts
|
|
7
|
-
*
|
|
8
|
-
* @param files - Array of files being analyzed (used to determine project root)
|
|
9
|
-
* @returns Merged configuration with custom and default abbreviations/short words
|
|
10
|
-
*/
|
|
11
|
-
export async function loadNamingConfig(files) {
|
|
12
|
-
// Load config from the first file's directory (or project root)
|
|
13
|
-
const rootDir = files.length > 0 ? dirname(files[0]) : process.cwd();
|
|
14
|
-
const config = await loadConfig(rootDir);
|
|
15
|
-
const consistencyConfig = config?.tools?.['consistency'];
|
|
16
|
-
// Extract custom configuration
|
|
17
|
-
const customAbbreviations = new Set(consistencyConfig?.acceptedAbbreviations || []);
|
|
18
|
-
const customShortWords = new Set(consistencyConfig?.shortWords || []);
|
|
19
|
-
const disabledChecks = new Set(consistencyConfig?.disableChecks || []);
|
|
20
|
-
// Merge with defaults
|
|
21
|
-
const allAbbreviations = new Set([...ACCEPTABLE_ABBREVIATIONS, ...customAbbreviations]);
|
|
22
|
-
const allShortWords = new Set([...COMMON_SHORT_WORDS, ...customShortWords]);
|
|
23
|
-
return {
|
|
24
|
-
customAbbreviations,
|
|
25
|
-
customShortWords,
|
|
26
|
-
disabledChecks,
|
|
27
|
-
allAbbreviations,
|
|
28
|
-
allShortWords,
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=config-loader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,+BAA+B,CAAC;AAavC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAe;IACpD,gEAAgE;IAChE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACrE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,iBAAiB,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC;IAEzD,+BAA+B;IAC/B,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;IACpF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,iBAAiB,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;IAEvE,sBAAsB;IACtB,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,wBAAwB,EAAE,GAAG,mBAAmB,CAAC,CAAC,CAAC;IACxF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,kBAAkB,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAE5E,OAAO;QACL,mBAAmB;QACnB,gBAAgB;QAChB,cAAc;QACd,gBAAgB;QAChB,aAAa;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { TSESTree } from '@typescript-eslint/typescript-estree';
|
|
2
|
-
export type FileType = 'test' | 'production' | 'config' | 'types';
|
|
3
|
-
export type CodeLayer = 'api' | 'business' | 'data' | 'utility' | 'unknown';
|
|
4
|
-
export interface CodeContext {
|
|
5
|
-
fileType: FileType;
|
|
6
|
-
codeLayer: CodeLayer;
|
|
7
|
-
complexity: number;
|
|
8
|
-
isTestFile: boolean;
|
|
9
|
-
isTypeDefinition: boolean;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Detect the file type based on file path and content
|
|
13
|
-
*/
|
|
14
|
-
export declare function detectFileType(filePath: string, ast: TSESTree.Program): FileType;
|
|
15
|
-
/**
|
|
16
|
-
* Detect the code layer based on imports and exports
|
|
17
|
-
*/
|
|
18
|
-
export declare function detectCodeLayer(ast: TSESTree.Program): CodeLayer;
|
|
19
|
-
/**
|
|
20
|
-
* Calculate cyclomatic complexity for a function
|
|
21
|
-
*/
|
|
22
|
-
export declare function calculateComplexity(node: TSESTree.Node): number;
|
|
23
|
-
/**
|
|
24
|
-
* Build a complete context for a file
|
|
25
|
-
*/
|
|
26
|
-
export declare function buildCodeContext(filePath: string, ast: TSESTree.Program): CodeContext;
|
|
27
|
-
/**
|
|
28
|
-
* Get context-adjusted severity based on code context
|
|
29
|
-
*/
|
|
30
|
-
export declare function adjustSeverity(baseSeverity: 'info' | 'minor' | 'major' | 'critical', context: CodeContext, issueType: string): 'info' | 'minor' | 'major' | 'critical';
|
|
31
|
-
/**
|
|
32
|
-
* Check if a short variable name is acceptable in this context
|
|
33
|
-
*/
|
|
34
|
-
export declare function isAcceptableInContext(name: string, context: CodeContext, options: {
|
|
35
|
-
isLoopVariable?: boolean;
|
|
36
|
-
isParameter?: boolean;
|
|
37
|
-
isDestructured?: boolean;
|
|
38
|
-
complexity?: number;
|
|
39
|
-
}): boolean;
|
|
40
|
-
//# sourceMappingURL=context-detector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-detector.d.ts","sourceRoot":"","sources":["../../src/utils/context-detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAGhE,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,GAAG,OAAO,CAAC;AAClE,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAmBhF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG,SAAS,CAgFhE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CA6B/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,OAAO,GAAG,WAAW,CA8BrF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,EACrD,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CA6BzC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE;IACP,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,OAAO,CAmCT"}
|