semantic-complexity 0.0.7-741984fb → 0.0.15-f5745e88
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/__tests__/analyzers.test.d.ts +5 -0
- package/dist/__tests__/analyzers.test.d.ts.map +1 -0
- package/dist/__tests__/analyzers.test.js +357 -0
- package/dist/__tests__/analyzers.test.js.map +1 -0
- package/dist/__tests__/gate.test.d.ts +5 -0
- package/dist/__tests__/gate.test.d.ts.map +1 -0
- package/dist/__tests__/gate.test.js +140 -0
- package/dist/__tests__/gate.test.js.map +1 -0
- package/dist/analyzers/bread.d.ts +63 -0
- package/dist/analyzers/bread.d.ts.map +1 -0
- package/dist/analyzers/bread.js +415 -0
- package/dist/analyzers/bread.js.map +1 -0
- package/dist/analyzers/cheese.d.ts +111 -0
- package/dist/analyzers/cheese.d.ts.map +1 -0
- package/dist/analyzers/cheese.js +881 -0
- package/dist/analyzers/cheese.js.map +1 -0
- package/dist/analyzers/ham.d.ts +33 -0
- package/dist/analyzers/ham.d.ts.map +1 -0
- package/dist/analyzers/ham.js +264 -0
- package/dist/analyzers/ham.js.map +1 -0
- package/dist/analyzers/index.d.ts +7 -0
- package/dist/analyzers/index.d.ts.map +1 -0
- package/dist/analyzers/index.js +7 -0
- package/dist/analyzers/index.js.map +1 -0
- package/dist/budget/index.d.ts +50 -0
- package/dist/budget/index.d.ts.map +1 -0
- package/dist/budget/index.js +138 -0
- package/dist/budget/index.js.map +1 -0
- package/dist/cli/index.d.ts +6 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +103 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/gate/index.d.ts +31 -0
- package/dist/gate/index.d.ts.map +1 -0
- package/dist/gate/index.js +117 -0
- package/dist/gate/index.js.map +1 -0
- package/dist/gate/waiver.d.ts +83 -0
- package/dist/gate/waiver.d.ts.map +1 -0
- package/dist/gate/waiver.js +425 -0
- package/dist/gate/waiver.js.map +1 -0
- package/dist/index.d.ts +8 -34
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -49
- package/dist/index.js.map +1 -1
- package/dist/mcp/index.d.ts +5 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +351 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/recommend/index.d.ts +32 -0
- package/dist/recommend/index.d.ts.map +1 -0
- package/dist/recommend/index.js +169 -0
- package/dist/recommend/index.js.map +1 -0
- package/dist/simplex/index.d.ts +26 -0
- package/dist/simplex/index.d.ts.map +1 -0
- package/dist/simplex/index.js +100 -0
- package/dist/simplex/index.js.map +1 -0
- package/dist/types/index.d.ts +39 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +27 -52
- package/LICENSE +0 -21
- package/README.md +0 -72
- package/dist/ast/index.d.ts +0 -2
- package/dist/ast/index.d.ts.map +0 -1
- package/dist/ast/index.js +0 -2
- package/dist/ast/index.js.map +0 -1
- package/dist/ast/parser.d.ts +0 -27
- package/dist/ast/parser.d.ts.map +0 -1
- package/dist/ast/parser.js +0 -273
- package/dist/ast/parser.js.map +0 -1
- package/dist/canonical/convergence.d.ts +0 -56
- package/dist/canonical/convergence.d.ts.map +0 -1
- package/dist/canonical/convergence.js +0 -149
- package/dist/canonical/convergence.js.map +0 -1
- package/dist/canonical/index.d.ts +0 -11
- package/dist/canonical/index.d.ts.map +0 -1
- package/dist/canonical/index.js +0 -11
- package/dist/canonical/index.js.map +0 -1
- package/dist/canonical/profiles.d.ts +0 -40
- package/dist/canonical/profiles.d.ts.map +0 -1
- package/dist/canonical/profiles.js +0 -182
- package/dist/canonical/profiles.js.map +0 -1
- package/dist/canonical/types.d.ts +0 -124
- package/dist/canonical/types.d.ts.map +0 -1
- package/dist/canonical/types.js +0 -46
- package/dist/canonical/types.js.map +0 -1
- package/dist/compare.d.ts +0 -31
- package/dist/compare.d.ts.map +0 -1
- package/dist/compare.js +0 -354
- package/dist/compare.js.map +0 -1
- package/dist/context/index.d.ts +0 -41
- package/dist/context/index.d.ts.map +0 -1
- package/dist/context/index.js +0 -253
- package/dist/context/index.js.map +0 -1
- package/dist/gates/delta.d.ts +0 -45
- package/dist/gates/delta.d.ts.map +0 -1
- package/dist/gates/delta.js +0 -260
- package/dist/gates/delta.js.map +0 -1
- package/dist/gates/index.d.ts +0 -9
- package/dist/gates/index.d.ts.map +0 -1
- package/dist/gates/index.js +0 -9
- package/dist/gates/index.js.map +0 -1
- package/dist/gates/types.d.ts +0 -96
- package/dist/gates/types.d.ts.map +0 -1
- package/dist/gates/types.js +0 -59
- package/dist/gates/types.js.map +0 -1
- package/dist/graph/call.d.ts +0 -63
- package/dist/graph/call.d.ts.map +0 -1
- package/dist/graph/call.js +0 -240
- package/dist/graph/call.js.map +0 -1
- package/dist/graph/dependency.d.ts +0 -52
- package/dist/graph/dependency.d.ts.map +0 -1
- package/dist/graph/dependency.js +0 -296
- package/dist/graph/dependency.js.map +0 -1
- package/dist/graph/index.d.ts +0 -3
- package/dist/graph/index.d.ts.map +0 -1
- package/dist/graph/index.js +0 -3
- package/dist/graph/index.js.map +0 -1
- package/dist/metrics/cognitive.d.ts +0 -42
- package/dist/metrics/cognitive.d.ts.map +0 -1
- package/dist/metrics/cognitive.js +0 -204
- package/dist/metrics/cognitive.js.map +0 -1
- package/dist/metrics/cyclomatic.d.ts +0 -31
- package/dist/metrics/cyclomatic.d.ts.map +0 -1
- package/dist/metrics/cyclomatic.js +0 -121
- package/dist/metrics/cyclomatic.js.map +0 -1
- package/dist/metrics/dimensional.d.ts +0 -32
- package/dist/metrics/dimensional.d.ts.map +0 -1
- package/dist/metrics/dimensional.js +0 -560
- package/dist/metrics/dimensional.js.map +0 -1
- package/dist/metrics/index.d.ts +0 -26
- package/dist/metrics/index.d.ts.map +0 -1
- package/dist/metrics/index.js +0 -120
- package/dist/metrics/index.js.map +0 -1
- package/dist/metrics/meta.d.ts +0 -90
- package/dist/metrics/meta.d.ts.map +0 -1
- package/dist/metrics/meta.js +0 -144
- package/dist/metrics/meta.js.map +0 -1
- package/dist/tensor/canonical.d.ts +0 -53
- package/dist/tensor/canonical.d.ts.map +0 -1
- package/dist/tensor/canonical.js +0 -192
- package/dist/tensor/canonical.js.map +0 -1
- package/dist/tensor/index.d.ts +0 -22
- package/dist/tensor/index.d.ts.map +0 -1
- package/dist/tensor/index.js +0 -22
- package/dist/tensor/index.js.map +0 -1
- package/dist/tensor/matrix.d.ts +0 -62
- package/dist/tensor/matrix.d.ts.map +0 -1
- package/dist/tensor/matrix.js +0 -187
- package/dist/tensor/matrix.js.map +0 -1
- package/dist/tensor/scoring.d.ts +0 -82
- package/dist/tensor/scoring.d.ts.map +0 -1
- package/dist/tensor/scoring.js +0 -233
- package/dist/tensor/scoring.js.map +0 -1
- package/dist/tensor/types.d.ts +0 -186
- package/dist/tensor/types.d.ts.map +0 -1
- package/dist/tensor/types.js +0 -15
- package/dist/tensor/types.js.map +0 -1
- package/dist/types.d.ts +0 -341
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -22
- package/dist/types.js.map +0 -1
package/dist/tensor/types.d.ts
DELETED
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* v0.0.3: Tensor Types
|
|
3
|
-
*
|
|
4
|
-
* Mathematical foundation:
|
|
5
|
-
* score^(2) = v^T M v + <v, w>
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* 5-dimensional complexity vector
|
|
9
|
-
*/
|
|
10
|
-
export interface Vector5D {
|
|
11
|
-
control: number;
|
|
12
|
-
nesting: number;
|
|
13
|
-
state: number;
|
|
14
|
-
async: number;
|
|
15
|
-
coupling: number;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Module type for context-aware analysis
|
|
19
|
-
*/
|
|
20
|
-
export type ModuleType = 'api' | 'lib' | 'app' | 'web' | 'data' | 'infra' | 'deploy' | 'unknown';
|
|
21
|
-
/**
|
|
22
|
-
* Dimension indices
|
|
23
|
-
*/
|
|
24
|
-
export declare const IDX_CONTROL = 0;
|
|
25
|
-
export declare const IDX_NESTING = 1;
|
|
26
|
-
export declare const IDX_STATE = 2;
|
|
27
|
-
export declare const IDX_ASYNC = 3;
|
|
28
|
-
export declare const IDX_COUPLING = 4;
|
|
29
|
-
/**
|
|
30
|
-
* 5x5 Interaction Matrix
|
|
31
|
-
*/
|
|
32
|
-
export type Matrix5x5 = [
|
|
33
|
-
[
|
|
34
|
-
number,
|
|
35
|
-
number,
|
|
36
|
-
number,
|
|
37
|
-
number,
|
|
38
|
-
number
|
|
39
|
-
],
|
|
40
|
-
[
|
|
41
|
-
number,
|
|
42
|
-
number,
|
|
43
|
-
number,
|
|
44
|
-
number,
|
|
45
|
-
number
|
|
46
|
-
],
|
|
47
|
-
[
|
|
48
|
-
number,
|
|
49
|
-
number,
|
|
50
|
-
number,
|
|
51
|
-
number,
|
|
52
|
-
number
|
|
53
|
-
],
|
|
54
|
-
[
|
|
55
|
-
number,
|
|
56
|
-
number,
|
|
57
|
-
number,
|
|
58
|
-
number,
|
|
59
|
-
number
|
|
60
|
-
],
|
|
61
|
-
[
|
|
62
|
-
number,
|
|
63
|
-
number,
|
|
64
|
-
number,
|
|
65
|
-
number,
|
|
66
|
-
number
|
|
67
|
-
]
|
|
68
|
-
];
|
|
69
|
-
/**
|
|
70
|
-
* Tensor score result
|
|
71
|
-
*
|
|
72
|
-
* Dual-metric approach inspired by CDR (Clinical Dementia Rating):
|
|
73
|
-
* - tensorScore (CDR Global style): Algorithm-based, captures interactions
|
|
74
|
-
* - rawSum (CDR-SOB style): Simple sum, better for tracking changes
|
|
75
|
-
*/
|
|
76
|
-
export interface TensorScore {
|
|
77
|
-
/** Linear component: <v, w> */
|
|
78
|
-
linear: number;
|
|
79
|
-
/** Quadratic component: v^T M v */
|
|
80
|
-
quadratic: number;
|
|
81
|
-
/** Raw score: linear + quadratic */
|
|
82
|
-
raw: number;
|
|
83
|
-
/** Regularization term: ε‖v‖² */
|
|
84
|
-
regularization: number;
|
|
85
|
-
/** Final regularized score (CDR Global style) */
|
|
86
|
-
regularized: number;
|
|
87
|
-
/** Epsilon value used */
|
|
88
|
-
epsilon: number;
|
|
89
|
-
/** Module type used */
|
|
90
|
-
moduleType: ModuleType;
|
|
91
|
-
/** Complexity vector */
|
|
92
|
-
vector: Vector5D;
|
|
93
|
-
/** Simple sum of dimensions: C + N + S + A + Λ (CDR-SOB style) */
|
|
94
|
-
rawSum: number;
|
|
95
|
-
/** Threshold for rawSum based on canonical upper bounds */
|
|
96
|
-
rawSumThreshold: number;
|
|
97
|
-
/** rawSum / rawSumThreshold ratio (0-1 = safe, >1 = violation) */
|
|
98
|
-
rawSumRatio: number;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Convergence status
|
|
102
|
-
*/
|
|
103
|
-
export type ConvergenceStatus = 'safe' | 'review' | 'violation' | 'oscillating';
|
|
104
|
-
/**
|
|
105
|
-
* Convergence analysis result
|
|
106
|
-
*/
|
|
107
|
-
export interface ConvergenceAnalysis {
|
|
108
|
-
/** Current score */
|
|
109
|
-
score: number;
|
|
110
|
-
/** Threshold value */
|
|
111
|
-
threshold: number;
|
|
112
|
-
/** Epsilon value */
|
|
113
|
-
epsilon: number;
|
|
114
|
-
/** Convergence score: (score - target) / ε */
|
|
115
|
-
convergenceScore: number;
|
|
116
|
-
/** Status based on convergence score */
|
|
117
|
-
status: ConvergenceStatus;
|
|
118
|
-
/** Distance to target (threshold - ε) */
|
|
119
|
-
distanceToTarget: number;
|
|
120
|
-
/** Distance to threshold */
|
|
121
|
-
distanceToThreshold: number;
|
|
122
|
-
/** Lipschitz constant estimate */
|
|
123
|
-
lipschitzEstimate: number;
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Hodge decomposition result
|
|
127
|
-
*
|
|
128
|
-
* H^k(Code) = ⊕_{p+q=k} H^{p,q}(Code)
|
|
129
|
-
*/
|
|
130
|
-
export interface HodgeDecomposition {
|
|
131
|
-
/** H^{2,0}: Control + Nesting (algorithmic) */
|
|
132
|
-
algorithmic: number;
|
|
133
|
-
/** H^{0,2}: State + Coupling (architectural) */
|
|
134
|
-
architectural: number;
|
|
135
|
-
/** H^{1,1}: Async (balanced/harmonic) */
|
|
136
|
-
balanced: number;
|
|
137
|
-
/** Total complexity */
|
|
138
|
-
total: number;
|
|
139
|
-
/** Balance ratio: balanced / total */
|
|
140
|
-
balanceRatio: number;
|
|
141
|
-
/** Is in harmonic state (well-balanced) */
|
|
142
|
-
isHarmonic: boolean;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Complexity level classification
|
|
146
|
-
*/
|
|
147
|
-
export type ComplexityLevel = 'minimal' | 'low' | 'medium' | 'high' | 'extreme';
|
|
148
|
-
/**
|
|
149
|
-
* Deviation from canonical form result
|
|
150
|
-
*/
|
|
151
|
-
export interface DeviationResult {
|
|
152
|
-
/** Euclidean distance to canonical centroid */
|
|
153
|
-
euclideanDistance: number;
|
|
154
|
-
/** Mahalanobis-like distance using interaction matrix */
|
|
155
|
-
mahalanobisDistance: number;
|
|
156
|
-
/** Maximum deviation in any dimension */
|
|
157
|
-
maxDimensionDeviation: number;
|
|
158
|
-
/** Normalized deviation (0-1 scale) */
|
|
159
|
-
normalizedDeviation: number;
|
|
160
|
-
/** Whether vector is within canonical bounds */
|
|
161
|
-
isCanonical: boolean;
|
|
162
|
-
/** Whether vector is outside ALL canonical regions */
|
|
163
|
-
isOrphan: boolean;
|
|
164
|
-
/** Module type used for comparison */
|
|
165
|
-
moduleType: ModuleType;
|
|
166
|
-
/** Current vector */
|
|
167
|
-
vector: Vector5D;
|
|
168
|
-
/** Dimensions that violate canonical bounds */
|
|
169
|
-
violationDimensions: string[];
|
|
170
|
-
/** Status: canonical | deviated | orphan */
|
|
171
|
-
status: 'canonical' | 'deviated' | 'orphan';
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Refactoring recommendation
|
|
175
|
-
*/
|
|
176
|
-
export interface RefactoringRecommendation {
|
|
177
|
-
/** Dimension to address */
|
|
178
|
-
dimension: string;
|
|
179
|
-
/** Priority (1-5, higher = more urgent) */
|
|
180
|
-
priority: number;
|
|
181
|
-
/** Recommended action */
|
|
182
|
-
action: string;
|
|
183
|
-
/** Expected impact on score */
|
|
184
|
-
expectedImpact: number;
|
|
185
|
-
}
|
|
186
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tensor/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjG;;GAEG;AACH,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB;QAAC,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;KAAC;IACxC;QAAC,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;KAAC;IACxC;QAAC,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;KAAC;IACxC;QAAC,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;KAAC;IACxC;QAAC,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;QAAE,MAAM;KAAC;CACzC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,uBAAuB;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,wBAAwB;IACxB,MAAM,EAAE,QAAQ,CAAC;IAGjB,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,gBAAgB,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,yCAAyC;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,4BAA4B;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kCAAkC;IAClC,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yDAAyD;IACzD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yCAAyC;IACzC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,uCAAuC;IACvC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gDAAgD;IAChD,WAAW,EAAE,OAAO,CAAC;IACrB,sDAAsD;IACtD,QAAQ,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,UAAU,EAAE,UAAU,CAAC;IACvB,qBAAqB;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,+CAA+C;IAC/C,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,4CAA4C;IAC5C,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,cAAc,EAAE,MAAM,CAAC;CACxB"}
|
package/dist/tensor/types.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* v0.0.3: Tensor Types
|
|
3
|
-
*
|
|
4
|
-
* Mathematical foundation:
|
|
5
|
-
* score^(2) = v^T M v + <v, w>
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Dimension indices
|
|
9
|
-
*/
|
|
10
|
-
export const IDX_CONTROL = 0;
|
|
11
|
-
export const IDX_NESTING = 1;
|
|
12
|
-
export const IDX_STATE = 2;
|
|
13
|
-
export const IDX_ASYNC = 3;
|
|
14
|
-
export const IDX_COUPLING = 4;
|
|
15
|
-
//# sourceMappingURL=types.js.map
|
package/dist/tensor/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tensor/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC;AAC3B,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC;AAC3B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC"}
|
package/dist/types.d.ts
DELETED
|
@@ -1,341 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 소스 위치 정보
|
|
3
|
-
*/
|
|
4
|
-
export interface SourceLocation {
|
|
5
|
-
filePath: string;
|
|
6
|
-
startLine: number;
|
|
7
|
-
startColumn: number;
|
|
8
|
-
endLine: number;
|
|
9
|
-
endColumn: number;
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* 함수/메서드 정보
|
|
13
|
-
*/
|
|
14
|
-
export interface FunctionInfo {
|
|
15
|
-
name: string;
|
|
16
|
-
kind: 'function' | 'method' | 'arrow' | 'getter' | 'setter' | 'constructor';
|
|
17
|
-
location: SourceLocation;
|
|
18
|
-
isAsync: boolean;
|
|
19
|
-
isGenerator: boolean;
|
|
20
|
-
isExported: boolean;
|
|
21
|
-
parameters: ParameterInfo[];
|
|
22
|
-
returnType?: string;
|
|
23
|
-
className?: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* 파라미터 정보
|
|
27
|
-
*/
|
|
28
|
-
export interface ParameterInfo {
|
|
29
|
-
name: string;
|
|
30
|
-
type?: string;
|
|
31
|
-
isOptional: boolean;
|
|
32
|
-
isRest: boolean;
|
|
33
|
-
hasDefault: boolean;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* 복잡도 결과
|
|
37
|
-
*/
|
|
38
|
-
export interface ComplexityResult {
|
|
39
|
-
function: FunctionInfo;
|
|
40
|
-
cyclomatic: number;
|
|
41
|
-
cognitive: number;
|
|
42
|
-
details: ComplexityDetail[];
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* 복잡도 상세 정보
|
|
46
|
-
*/
|
|
47
|
-
export interface ComplexityDetail {
|
|
48
|
-
type: ComplexityContributor;
|
|
49
|
-
location: SourceLocation;
|
|
50
|
-
increment: number;
|
|
51
|
-
nestingLevel: number;
|
|
52
|
-
description: string;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* 복잡도 기여 요인
|
|
56
|
-
*/
|
|
57
|
-
export type ComplexityContributor = 'if' | 'else-if' | 'else' | 'switch' | 'case' | 'for' | 'for-in' | 'for-of' | 'while' | 'do-while' | 'catch' | 'conditional' | 'logical-and' | 'logical-or' | 'nullish-coalescing' | 'optional-chaining' | 'recursion' | 'callback' | 'nested-function';
|
|
58
|
-
/**
|
|
59
|
-
* 파일 분석 결과
|
|
60
|
-
*/
|
|
61
|
-
export interface FileAnalysisResult {
|
|
62
|
-
filePath: string;
|
|
63
|
-
functions: ComplexityResult[];
|
|
64
|
-
imports: ImportInfo[];
|
|
65
|
-
exports: ExportInfo[];
|
|
66
|
-
totalCyclomatic: number;
|
|
67
|
-
totalCognitive: number;
|
|
68
|
-
averageCyclomatic: number;
|
|
69
|
-
averageCognitive: number;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Import 정보
|
|
73
|
-
*/
|
|
74
|
-
export interface ImportInfo {
|
|
75
|
-
source: string;
|
|
76
|
-
specifiers: ImportSpecifier[];
|
|
77
|
-
isTypeOnly: boolean;
|
|
78
|
-
location: SourceLocation;
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Import 세부 정보
|
|
82
|
-
*/
|
|
83
|
-
export interface ImportSpecifier {
|
|
84
|
-
name: string;
|
|
85
|
-
alias?: string;
|
|
86
|
-
isDefault: boolean;
|
|
87
|
-
isNamespace: boolean;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Export 정보
|
|
91
|
-
*/
|
|
92
|
-
export interface ExportInfo {
|
|
93
|
-
name: string;
|
|
94
|
-
kind: 'function' | 'class' | 'variable' | 'type' | 'interface' | 're-export';
|
|
95
|
-
location: SourceLocation;
|
|
96
|
-
source?: string;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* 의존성 그래프 노드
|
|
100
|
-
*/
|
|
101
|
-
export interface DependencyNode {
|
|
102
|
-
filePath: string;
|
|
103
|
-
imports: string[];
|
|
104
|
-
importedBy: string[];
|
|
105
|
-
depth: number;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* 호출 그래프 노드
|
|
109
|
-
*/
|
|
110
|
-
export interface CallNode {
|
|
111
|
-
function: FunctionInfo;
|
|
112
|
-
calls: CallEdge[];
|
|
113
|
-
calledBy: CallEdge[];
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* 호출 그래프 엣지
|
|
117
|
-
*/
|
|
118
|
-
export interface CallEdge {
|
|
119
|
-
from: FunctionInfo;
|
|
120
|
-
to: FunctionInfo;
|
|
121
|
-
location: SourceLocation;
|
|
122
|
-
isConditional: boolean;
|
|
123
|
-
isAsync: boolean;
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* MCP용 컨텍스트 정보
|
|
127
|
-
*/
|
|
128
|
-
export interface AnalysisContext {
|
|
129
|
-
file: FileAnalysisResult;
|
|
130
|
-
dependencies: DependencyNode;
|
|
131
|
-
callGraph: CallNode[];
|
|
132
|
-
relatedFiles: FileAnalysisResult[];
|
|
133
|
-
projectInfo?: ProjectInfo;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* 프로젝트 정보
|
|
137
|
-
*/
|
|
138
|
-
export interface ProjectInfo {
|
|
139
|
-
name: string;
|
|
140
|
-
root: string;
|
|
141
|
-
packageManager: 'npm' | 'pnpm' | 'yarn' | 'bun';
|
|
142
|
-
framework?: string;
|
|
143
|
-
language: 'typescript' | 'javascript' | 'mixed';
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* 분석 옵션
|
|
147
|
-
*/
|
|
148
|
-
export interface AnalysisOptions {
|
|
149
|
-
/** 순환복잡도 임계값 (기본: 10) */
|
|
150
|
-
cyclomaticThreshold: number;
|
|
151
|
-
/** 인지복잡도 임계값 (기본: 15) */
|
|
152
|
-
cognitiveThreshold: number;
|
|
153
|
-
/** 타입 정보 포함 여부 */
|
|
154
|
-
includeTypes: boolean;
|
|
155
|
-
/** 테스트 파일 제외 여부 */
|
|
156
|
-
excludeTests: boolean;
|
|
157
|
-
/** 분석 제외 패턴 */
|
|
158
|
-
excludePatterns: string[];
|
|
159
|
-
/** 관련 파일 포함 깊이 (의존성 그래프) */
|
|
160
|
-
contextDepth: number;
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* 기본 분석 옵션
|
|
164
|
-
*/
|
|
165
|
-
export declare const DEFAULT_OPTIONS: AnalysisOptions;
|
|
166
|
-
/**
|
|
167
|
-
* 3D: 상태 복잡도 (State Complexity)
|
|
168
|
-
* 상태 공간과 분기의 결합으로 인한 복잡도
|
|
169
|
-
*/
|
|
170
|
-
export interface StateComplexity {
|
|
171
|
-
/** enum/union 타입 기반 상태 수 */
|
|
172
|
-
enumStates: number;
|
|
173
|
-
/** 상태 변경 지점 (setter, 재할당) */
|
|
174
|
-
stateMutations: number;
|
|
175
|
-
/** 상태 참조 지점 */
|
|
176
|
-
stateReads: number;
|
|
177
|
-
/** 상태 기반 분기 (상태값에 따른 조건문) */
|
|
178
|
-
stateBranches: number;
|
|
179
|
-
/** 상태 머신 패턴 탐지 */
|
|
180
|
-
stateMachinePatterns: StatePattern[];
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* 상태 패턴 정보
|
|
184
|
-
*/
|
|
185
|
-
export interface StatePattern {
|
|
186
|
-
kind: 'switch-enum' | 'reducer' | 'state-machine' | 'flag-based';
|
|
187
|
-
location: SourceLocation;
|
|
188
|
-
stateCount: number;
|
|
189
|
-
transitionCount: number;
|
|
190
|
-
}
|
|
191
|
-
/**
|
|
192
|
-
* 4D: 비동기/동시성 복잡도 (Async Complexity)
|
|
193
|
-
* 시간 축을 따라 발생하는 복잡도
|
|
194
|
-
*/
|
|
195
|
-
export interface AsyncComplexity {
|
|
196
|
-
/** async/await 경계 */
|
|
197
|
-
asyncBoundaries: number;
|
|
198
|
-
/** Promise 체인 깊이 */
|
|
199
|
-
promiseChains: number;
|
|
200
|
-
/** 재시도 패턴 (retry, exponential backoff 등) */
|
|
201
|
-
retryPatterns: number;
|
|
202
|
-
/** 타임아웃/인터벌 처리 */
|
|
203
|
-
timeouts: number;
|
|
204
|
-
/** 콜백 중첩 깊이 */
|
|
205
|
-
callbackDepth: number;
|
|
206
|
-
/** 동시성 패턴 (Promise.all, Promise.race 등) */
|
|
207
|
-
concurrencyPatterns: ConcurrencyPattern[];
|
|
208
|
-
/** 에러 경계 (try-catch in async) */
|
|
209
|
-
asyncErrorBoundaries: number;
|
|
210
|
-
}
|
|
211
|
-
/**
|
|
212
|
-
* 동시성 패턴 정보
|
|
213
|
-
*/
|
|
214
|
-
export interface ConcurrencyPattern {
|
|
215
|
-
kind: 'parallel' | 'race' | 'sequential' | 'batch' | 'throttle' | 'debounce';
|
|
216
|
-
location: SourceLocation;
|
|
217
|
-
promiseCount: number;
|
|
218
|
-
}
|
|
219
|
-
/**
|
|
220
|
-
* 5D: 숨은 결합 복잡도 (Hidden Coupling Complexity)
|
|
221
|
-
* 명시적으로 보이지 않는 의존성과 부작용
|
|
222
|
-
*/
|
|
223
|
-
export interface CouplingComplexity {
|
|
224
|
-
/** 전역 변수/싱글톤 접근 */
|
|
225
|
-
globalAccess: GlobalAccessInfo[];
|
|
226
|
-
/** 암묵적 I/O (console, DOM, fetch 등) */
|
|
227
|
-
implicitIO: ImplicitIOInfo[];
|
|
228
|
-
/** 부작용 (외부 상태 변경) */
|
|
229
|
-
sideEffects: SideEffectInfo[];
|
|
230
|
-
/** 환경 의존성 (process.env, window 등) */
|
|
231
|
-
envDependency: EnvDependencyInfo[];
|
|
232
|
-
/** 클로저 캡처 */
|
|
233
|
-
closureCaptures: ClosureCaptureInfo[];
|
|
234
|
-
}
|
|
235
|
-
/**
|
|
236
|
-
* 전역 접근 정보
|
|
237
|
-
*/
|
|
238
|
-
export interface GlobalAccessInfo {
|
|
239
|
-
name: string;
|
|
240
|
-
kind: 'global' | 'singleton' | 'static' | 'module-scope';
|
|
241
|
-
location: SourceLocation;
|
|
242
|
-
isWrite: boolean;
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* 암묵적 I/O 정보
|
|
246
|
-
*/
|
|
247
|
-
export interface ImplicitIOInfo {
|
|
248
|
-
kind: 'console' | 'dom' | 'fetch' | 'storage' | 'file' | 'network';
|
|
249
|
-
location: SourceLocation;
|
|
250
|
-
api: string;
|
|
251
|
-
}
|
|
252
|
-
/**
|
|
253
|
-
* 부작용 정보
|
|
254
|
-
*/
|
|
255
|
-
export interface SideEffectInfo {
|
|
256
|
-
kind: 'mutation' | 'event' | 'subscription' | 'timer';
|
|
257
|
-
location: SourceLocation;
|
|
258
|
-
target: string;
|
|
259
|
-
description: string;
|
|
260
|
-
}
|
|
261
|
-
/**
|
|
262
|
-
* 환경 의존성 정보
|
|
263
|
-
*/
|
|
264
|
-
export interface EnvDependencyInfo {
|
|
265
|
-
kind: 'process-env' | 'window' | 'document' | 'navigator' | 'location';
|
|
266
|
-
location: SourceLocation;
|
|
267
|
-
property: string;
|
|
268
|
-
}
|
|
269
|
-
/**
|
|
270
|
-
* 클로저 캡처 정보
|
|
271
|
-
*/
|
|
272
|
-
export interface ClosureCaptureInfo {
|
|
273
|
-
variableName: string;
|
|
274
|
-
location: SourceLocation;
|
|
275
|
-
capturedAt: SourceLocation;
|
|
276
|
-
isMutable: boolean;
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* 차원별 복잡도 가중치
|
|
280
|
-
*/
|
|
281
|
-
export interface DimensionalWeights {
|
|
282
|
-
/** 1D 제어 흐름 가중치 */
|
|
283
|
-
control: number;
|
|
284
|
-
/** 2D 중첩 가중치 */
|
|
285
|
-
nesting: number;
|
|
286
|
-
/** 3D 상태 가중치 */
|
|
287
|
-
state: number;
|
|
288
|
-
/** 4D 비동기 가중치 */
|
|
289
|
-
async: number;
|
|
290
|
-
/** 5D 결합 가중치 */
|
|
291
|
-
coupling: number;
|
|
292
|
-
}
|
|
293
|
-
/**
|
|
294
|
-
* 기본 차원 가중치 (연구 기반 초기값)
|
|
295
|
-
*/
|
|
296
|
-
export declare const DEFAULT_DIMENSIONAL_WEIGHTS: DimensionalWeights;
|
|
297
|
-
/**
|
|
298
|
-
* 차원 기반 복잡도 결과
|
|
299
|
-
*/
|
|
300
|
-
export interface DimensionalComplexity {
|
|
301
|
-
/** 1D: 제어 흐름 복잡도 (순환복잡도 기반) */
|
|
302
|
-
control: number;
|
|
303
|
-
/** 2D: 중첩 복잡도 (인지복잡도의 nesting penalty) */
|
|
304
|
-
nesting: number;
|
|
305
|
-
/** 3D: 상태 복잡도 */
|
|
306
|
-
state: StateComplexity;
|
|
307
|
-
/** 4D: 비동기 복잡도 */
|
|
308
|
-
async: AsyncComplexity;
|
|
309
|
-
/** 5D: 숨은 결합 복잡도 */
|
|
310
|
-
coupling: CouplingComplexity;
|
|
311
|
-
/** 가중 합산 점수 */
|
|
312
|
-
weighted: number;
|
|
313
|
-
/** 사용된 가중치 */
|
|
314
|
-
weights: DimensionalWeights;
|
|
315
|
-
/** 각 차원별 기여도 (0-1) */
|
|
316
|
-
contributions: {
|
|
317
|
-
control: number;
|
|
318
|
-
nesting: number;
|
|
319
|
-
state: number;
|
|
320
|
-
async: number;
|
|
321
|
-
coupling: number;
|
|
322
|
-
};
|
|
323
|
-
/** 주요 복잡도 원인 (상위 3개) */
|
|
324
|
-
hotspots: DimensionalHotspot[];
|
|
325
|
-
}
|
|
326
|
-
/**
|
|
327
|
-
* 복잡도 핫스팟
|
|
328
|
-
*/
|
|
329
|
-
export interface DimensionalHotspot {
|
|
330
|
-
dimension: '1D-control' | '2D-nesting' | '3D-state' | '4D-async' | '5D-coupling';
|
|
331
|
-
score: number;
|
|
332
|
-
location: SourceLocation;
|
|
333
|
-
reason: string;
|
|
334
|
-
}
|
|
335
|
-
/**
|
|
336
|
-
* 확장된 복잡도 결과 (차원 포함)
|
|
337
|
-
*/
|
|
338
|
-
export interface ExtendedComplexityResult extends ComplexityResult {
|
|
339
|
-
dimensional: DimensionalComplexity;
|
|
340
|
-
}
|
|
341
|
-
//# 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":"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"}
|
package/dist/types.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 기본 분석 옵션
|
|
3
|
-
*/
|
|
4
|
-
export const DEFAULT_OPTIONS = {
|
|
5
|
-
cyclomaticThreshold: 10,
|
|
6
|
-
cognitiveThreshold: 15,
|
|
7
|
-
includeTypes: true,
|
|
8
|
-
excludeTests: true,
|
|
9
|
-
excludePatterns: ['node_modules', 'dist', 'build', '.git'],
|
|
10
|
-
contextDepth: 2,
|
|
11
|
-
};
|
|
12
|
-
/**
|
|
13
|
-
* 기본 차원 가중치 (연구 기반 초기값)
|
|
14
|
-
*/
|
|
15
|
-
export const DEFAULT_DIMENSIONAL_WEIGHTS = {
|
|
16
|
-
control: 1.0, // 기준
|
|
17
|
-
nesting: 1.5, // 중첩은 1.5배
|
|
18
|
-
state: 2.0, // 상태 결합은 2배
|
|
19
|
-
async: 2.5, // 비동기는 2.5배 (Salesforce 연구 기반)
|
|
20
|
-
coupling: 3.0, // 숨은 결합은 3배 (디버깅 난이도 기반)
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAoMA;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,mBAAmB,EAAE,EAAE;IACvB,kBAAkB,EAAE,EAAE;IACtB,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IAC1D,YAAY,EAAE,CAAC;CAChB,CAAC;AAgJF;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAuB;IAC7D,OAAO,EAAE,GAAG,EAAI,KAAK;IACrB,OAAO,EAAE,GAAG,EAAI,WAAW;IAC3B,KAAK,EAAE,GAAG,EAAM,YAAY;IAC5B,KAAK,EAAE,GAAG,EAAM,+BAA+B;IAC/C,QAAQ,EAAE,GAAG,EAAG,yBAAyB;CAC1C,CAAC"}
|