@kb-labs/quality-contracts 2.94.0 → 2.98.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/index.d.ts +1826 -132
- package/dist/index.js +158 -41
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -116,20 +116,66 @@ interface TestRunResult {
|
|
|
116
116
|
}
|
|
117
117
|
|
|
118
118
|
/**
|
|
119
|
-
*
|
|
119
|
+
* Quality snapshot types — persistent history for trend tracking
|
|
120
120
|
*/
|
|
121
|
+
interface DimensionScore {
|
|
122
|
+
score: number;
|
|
123
|
+
grade: 'A' | 'B' | 'C' | 'D' | 'F';
|
|
124
|
+
details: string[];
|
|
125
|
+
}
|
|
126
|
+
interface DimensionScores {
|
|
127
|
+
architecture: DimensionScore;
|
|
128
|
+
typescript: DimensionScore;
|
|
129
|
+
deadCode: DimensionScore;
|
|
130
|
+
depHygiene: DimensionScore;
|
|
131
|
+
testCoverage: DimensionScore;
|
|
132
|
+
}
|
|
133
|
+
interface QualitySnapshot {
|
|
134
|
+
id: string;
|
|
135
|
+
timestamp: string;
|
|
136
|
+
git: {
|
|
137
|
+
commit: string;
|
|
138
|
+
branch: string;
|
|
139
|
+
message: string;
|
|
140
|
+
};
|
|
141
|
+
score: number;
|
|
142
|
+
grade: 'A' | 'B' | 'C' | 'D' | 'F';
|
|
143
|
+
dimensions: DimensionScores;
|
|
144
|
+
/** Raw counters for delta computation */
|
|
145
|
+
counters: {
|
|
146
|
+
layeringViolations: number;
|
|
147
|
+
avgInstability: number;
|
|
148
|
+
anyCount: number;
|
|
149
|
+
tsIgnoreCount: number;
|
|
150
|
+
unusedFiles: number;
|
|
151
|
+
unusedDeps: number;
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
interface SnapshotDelta {
|
|
155
|
+
score: number;
|
|
156
|
+
layeringViolations: number;
|
|
157
|
+
anyCount: number;
|
|
158
|
+
tsIgnoreCount: number;
|
|
159
|
+
unusedFiles: number;
|
|
160
|
+
unusedDeps: number;
|
|
161
|
+
avgInstability: number;
|
|
162
|
+
}
|
|
163
|
+
interface SnapshotHistory {
|
|
164
|
+
snapshots: QualitySnapshot[];
|
|
165
|
+
/** Delta vs previous snapshot, if history has >= 2 entries */
|
|
166
|
+
delta: SnapshotDelta | null;
|
|
167
|
+
latest: QualitySnapshot | null;
|
|
168
|
+
}
|
|
121
169
|
|
|
122
170
|
/**
|
|
123
|
-
*
|
|
171
|
+
* Types for quality:stats and quality:health commands
|
|
124
172
|
*/
|
|
173
|
+
|
|
125
174
|
interface HealthScore {
|
|
126
175
|
score: number;
|
|
127
176
|
grade: 'A' | 'B' | 'C' | 'D' | 'F';
|
|
128
|
-
|
|
177
|
+
dimensions: DimensionScores;
|
|
129
178
|
}
|
|
130
|
-
/**
|
|
131
|
-
* Package statistics
|
|
132
|
-
*/
|
|
133
179
|
interface PackageStats {
|
|
134
180
|
name: string;
|
|
135
181
|
path?: string;
|
|
@@ -138,9 +184,6 @@ interface PackageStats {
|
|
|
138
184
|
lines: number;
|
|
139
185
|
bytes: number;
|
|
140
186
|
}
|
|
141
|
-
/**
|
|
142
|
-
* Repository statistics
|
|
143
|
-
*/
|
|
144
187
|
interface RepositoryStats {
|
|
145
188
|
name: string;
|
|
146
189
|
packages: number;
|
|
@@ -148,9 +191,6 @@ interface RepositoryStats {
|
|
|
148
191
|
lines: number;
|
|
149
192
|
bytes: number;
|
|
150
193
|
}
|
|
151
|
-
/**
|
|
152
|
-
* Dependency statistics
|
|
153
|
-
*/
|
|
154
194
|
interface DependencyStats {
|
|
155
195
|
total: number;
|
|
156
196
|
workspace: number;
|
|
@@ -161,9 +201,6 @@ interface DependencyStats {
|
|
|
161
201
|
count: number;
|
|
162
202
|
}>;
|
|
163
203
|
}
|
|
164
|
-
/**
|
|
165
|
-
* Statistics result from quality:stats
|
|
166
|
-
*/
|
|
167
204
|
interface StatsResult {
|
|
168
205
|
overview: {
|
|
169
206
|
totalPackages: number;
|
|
@@ -179,126 +216,68 @@ interface StatsResult {
|
|
|
179
216
|
}
|
|
180
217
|
|
|
181
218
|
/**
|
|
182
|
-
*
|
|
183
|
-
*/
|
|
184
|
-
/**
|
|
185
|
-
* Environment variables
|
|
219
|
+
* Architecture analysis types — layering violations and coupling metrics
|
|
186
220
|
*/
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
/**
|
|
208
|
-
|
|
209
|
-
*/
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
readonly CI: 600000;
|
|
219
|
-
readonly DEAD_CODE: 120000;
|
|
220
|
-
};
|
|
221
|
-
/**
|
|
222
|
-
* Health score grades
|
|
223
|
-
*/
|
|
224
|
-
declare const HEALTH_GRADES: {
|
|
225
|
-
readonly A: {
|
|
226
|
-
readonly min: 90;
|
|
227
|
-
readonly max: 100;
|
|
228
|
-
readonly label: "Excellent";
|
|
229
|
-
};
|
|
230
|
-
readonly B: {
|
|
231
|
-
readonly min: 80;
|
|
232
|
-
readonly max: 89;
|
|
233
|
-
readonly label: "Good";
|
|
234
|
-
};
|
|
235
|
-
readonly C: {
|
|
236
|
-
readonly min: 70;
|
|
237
|
-
readonly max: 79;
|
|
238
|
-
readonly label: "Fair";
|
|
239
|
-
};
|
|
240
|
-
readonly D: {
|
|
241
|
-
readonly min: 60;
|
|
242
|
-
readonly max: 69;
|
|
243
|
-
readonly label: "Poor";
|
|
244
|
-
};
|
|
245
|
-
readonly F: {
|
|
246
|
-
readonly min: 0;
|
|
247
|
-
readonly max: 59;
|
|
248
|
-
readonly label: "Failing";
|
|
249
|
-
};
|
|
250
|
-
};
|
|
221
|
+
/** A single import that crosses layer boundaries */
|
|
222
|
+
interface LayeringViolation {
|
|
223
|
+
file: string;
|
|
224
|
+
fromPackage: string;
|
|
225
|
+
fromLayer: number;
|
|
226
|
+
toPackage: string;
|
|
227
|
+
toLayer: number;
|
|
228
|
+
importSpecifier: string;
|
|
229
|
+
}
|
|
230
|
+
interface LayeringReport {
|
|
231
|
+
violations: LayeringViolation[];
|
|
232
|
+
totalViolations: number;
|
|
233
|
+
affectedPackages: string[];
|
|
234
|
+
/** Layer map used for analysis */
|
|
235
|
+
layerMap: Record<string, number>;
|
|
236
|
+
}
|
|
237
|
+
interface PackageCoupling {
|
|
238
|
+
name: string;
|
|
239
|
+
/** Afferent coupling: packages that depend on this */
|
|
240
|
+
afferent: number;
|
|
241
|
+
/** Efferent coupling: packages this depends on */
|
|
242
|
+
efferent: number;
|
|
243
|
+
/** Instability = Ce/(Ca+Ce). 0 = stable, 1 = unstable */
|
|
244
|
+
instability: number;
|
|
245
|
+
}
|
|
246
|
+
interface CouplingReport {
|
|
247
|
+
packages: PackageCoupling[];
|
|
248
|
+
avgInstability: number;
|
|
249
|
+
mostUnstable: PackageCoupling[];
|
|
250
|
+
mostCoupled: PackageCoupling[];
|
|
251
|
+
}
|
|
251
252
|
|
|
252
253
|
/**
|
|
253
|
-
*
|
|
254
|
-
* REST API route constants for quality plugin
|
|
255
|
-
*/
|
|
256
|
-
/**
|
|
257
|
-
* REST API base path for quality plugin
|
|
258
|
-
*/
|
|
259
|
-
declare const QUALITY_BASE_PATH: "/v1/plugins/quality";
|
|
260
|
-
/**
|
|
261
|
-
* REST API route paths (relative to basePath)
|
|
262
|
-
*/
|
|
263
|
-
declare const QUALITY_ROUTES: {
|
|
264
|
-
/** GET /stats - Get monorepo statistics */
|
|
265
|
-
readonly STATS: "/stats";
|
|
266
|
-
/** GET /health - Get health score */
|
|
267
|
-
readonly HEALTH: "/health";
|
|
268
|
-
/** GET /dependencies - Get dependency issues */
|
|
269
|
-
readonly DEPENDENCIES: "/dependencies";
|
|
270
|
-
/** GET /build-order - Get build order */
|
|
271
|
-
readonly BUILD_ORDER: "/build-order";
|
|
272
|
-
/** GET /cycles - Get circular dependencies */
|
|
273
|
-
readonly CYCLES: "/cycles";
|
|
274
|
-
/** GET /graph - Get dependency graph */
|
|
275
|
-
readonly GRAPH: "/graph";
|
|
276
|
-
/** GET /stale - Get stale packages */
|
|
277
|
-
readonly STALE: "/stale";
|
|
278
|
-
/** GET /builds - Get build status */
|
|
279
|
-
readonly BUILDS: "/builds";
|
|
280
|
-
/** GET /types - Get type safety analysis */
|
|
281
|
-
readonly TYPES: "/types";
|
|
282
|
-
/** GET /tests - Get test results and coverage */
|
|
283
|
-
readonly TESTS: "/tests";
|
|
284
|
-
};
|
|
285
|
-
/**
|
|
286
|
-
* Full REST API URLs (basePath + route)
|
|
287
|
-
* Useful for testing and documentation
|
|
254
|
+
* Quality plugin configuration — stored in kb.config.json under "quality" section
|
|
288
255
|
*/
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
256
|
+
interface QualityLayerMap {
|
|
257
|
+
[pathPrefix: string]: number;
|
|
258
|
+
}
|
|
259
|
+
interface QualityThresholds {
|
|
260
|
+
/** Minimum health score before exit 1. Default: 70 */
|
|
261
|
+
health: number;
|
|
262
|
+
/** Instability threshold for warning. Default: 0.85 */
|
|
263
|
+
instability: number;
|
|
264
|
+
}
|
|
265
|
+
interface QualityKnipConfig {
|
|
266
|
+
/** Whether to run knip for dead code / dep analysis. Default: true */
|
|
267
|
+
enabled: boolean;
|
|
268
|
+
}
|
|
269
|
+
interface QualityPluginConfig {
|
|
270
|
+
/** Max snapshots to retain in history. Default: 30 */
|
|
271
|
+
maxSnapshots: number;
|
|
272
|
+
knip: QualityKnipConfig;
|
|
273
|
+
/**
|
|
274
|
+
* Layer map: path prefix → layer index.
|
|
275
|
+
* Defaults to KB Labs standard layers from CLAUDE.md.
|
|
276
|
+
*/
|
|
277
|
+
layers: QualityLayerMap;
|
|
278
|
+
thresholds: QualityThresholds;
|
|
279
|
+
}
|
|
280
|
+
declare const defaultQualityConfig: QualityPluginConfig;
|
|
302
281
|
|
|
303
282
|
/**
|
|
304
283
|
* Types for dead code file detection
|
|
@@ -384,6 +363,131 @@ interface DeadCodeRemovalResult {
|
|
|
384
363
|
exportsCleanedUp: number;
|
|
385
364
|
manifest: DeadCodeBackupManifest;
|
|
386
365
|
}
|
|
366
|
+
interface KnipUnusedExport {
|
|
367
|
+
file: string;
|
|
368
|
+
symbol: string;
|
|
369
|
+
}
|
|
370
|
+
interface KnipUnusedDependency {
|
|
371
|
+
package: string;
|
|
372
|
+
workspace: string;
|
|
373
|
+
}
|
|
374
|
+
/** Parsed output from `knip --reporter json` */
|
|
375
|
+
interface KnipReport {
|
|
376
|
+
unusedFiles: string[];
|
|
377
|
+
unusedExports: KnipUnusedExport[];
|
|
378
|
+
unusedDependencies: KnipUnusedDependency[];
|
|
379
|
+
unlistedDependencies: KnipUnusedDependency[];
|
|
380
|
+
/** Total issue count for quick health scoring */
|
|
381
|
+
totalIssues: number;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
/**
|
|
385
|
+
* Constants for Quality Plugin
|
|
386
|
+
*/
|
|
387
|
+
declare const QUALITY_ENV_VARS: readonly ["KB_QUALITY_CACHE_TTL", "KB_QUALITY_MAX_PACKAGES"];
|
|
388
|
+
declare const QUALITY_CACHE_PREFIX = "quality:";
|
|
389
|
+
declare const CACHE_KEYS: {
|
|
390
|
+
readonly STATS: "quality:stats";
|
|
391
|
+
readonly HEALTH: "quality:health";
|
|
392
|
+
readonly IMPORTS: "quality:imports";
|
|
393
|
+
readonly EXPORTS: "quality:exports";
|
|
394
|
+
readonly TYPES: "quality:types";
|
|
395
|
+
readonly DUPLICATES: "quality:duplicates";
|
|
396
|
+
readonly BUILDS: "quality:builds";
|
|
397
|
+
readonly TYPE_ANALYSIS: "quality:type-analysis";
|
|
398
|
+
readonly TESTS: "quality:tests";
|
|
399
|
+
readonly DEAD_CODE: "quality:dead-code";
|
|
400
|
+
readonly KNIP: "quality:knip";
|
|
401
|
+
readonly LAYERS: "quality:layers";
|
|
402
|
+
readonly COUPLING: "quality:coupling";
|
|
403
|
+
};
|
|
404
|
+
/** Cache TTLs in milliseconds */
|
|
405
|
+
declare const CACHE_TTLS: {
|
|
406
|
+
readonly FAST: number;
|
|
407
|
+
readonly SLOW: number;
|
|
408
|
+
};
|
|
409
|
+
declare const DEFAULT_TIMEOUTS: {
|
|
410
|
+
readonly STATS: 60000;
|
|
411
|
+
readonly HEALTH: 120000;
|
|
412
|
+
readonly LAYERS: 60000;
|
|
413
|
+
readonly COUPLING: 30000;
|
|
414
|
+
readonly KNIP: 180000;
|
|
415
|
+
readonly CHECK_TYPES: 90000;
|
|
416
|
+
readonly FIX_DEPS: 300000;
|
|
417
|
+
readonly CI: 600000;
|
|
418
|
+
};
|
|
419
|
+
declare const HEALTH_GRADES: {
|
|
420
|
+
readonly A: {
|
|
421
|
+
readonly min: 90;
|
|
422
|
+
readonly max: 100;
|
|
423
|
+
readonly label: "Excellent";
|
|
424
|
+
};
|
|
425
|
+
readonly B: {
|
|
426
|
+
readonly min: 80;
|
|
427
|
+
readonly max: 89;
|
|
428
|
+
readonly label: "Good";
|
|
429
|
+
};
|
|
430
|
+
readonly C: {
|
|
431
|
+
readonly min: 70;
|
|
432
|
+
readonly max: 79;
|
|
433
|
+
readonly label: "Fair";
|
|
434
|
+
};
|
|
435
|
+
readonly D: {
|
|
436
|
+
readonly min: 60;
|
|
437
|
+
readonly max: 69;
|
|
438
|
+
readonly label: "Poor";
|
|
439
|
+
};
|
|
440
|
+
readonly F: {
|
|
441
|
+
readonly min: 0;
|
|
442
|
+
readonly max: 59;
|
|
443
|
+
readonly label: "Failing";
|
|
444
|
+
};
|
|
445
|
+
};
|
|
446
|
+
/** Dimension weights for composite health score */
|
|
447
|
+
declare const DIMENSION_WEIGHTS: {
|
|
448
|
+
readonly architecture: 0.3;
|
|
449
|
+
readonly typescript: 0.25;
|
|
450
|
+
readonly deadCode: 0.2;
|
|
451
|
+
readonly depHygiene: 0.15;
|
|
452
|
+
readonly testCoverage: 0.1;
|
|
453
|
+
};
|
|
454
|
+
declare const SNAPSHOT_DIR = ".kb/quality/snapshots";
|
|
455
|
+
declare const SNAPSHOT_FILE = "quality.json";
|
|
456
|
+
declare const MAX_SNAPSHOTS_DEFAULT = 30;
|
|
457
|
+
|
|
458
|
+
/**
|
|
459
|
+
* @module @kb-labs/quality-contracts/routes
|
|
460
|
+
* REST API route constants for quality plugin
|
|
461
|
+
*/
|
|
462
|
+
declare const QUALITY_BASE_PATH: "/v1/plugins/quality";
|
|
463
|
+
declare const QUALITY_ROUTES: {
|
|
464
|
+
/** GET /stats */
|
|
465
|
+
readonly STATS: "/stats";
|
|
466
|
+
/** GET /health */
|
|
467
|
+
readonly HEALTH: "/health";
|
|
468
|
+
/** GET /dependencies */
|
|
469
|
+
readonly DEPENDENCIES: "/dependencies";
|
|
470
|
+
/** GET /build-order */
|
|
471
|
+
readonly BUILD_ORDER: "/build-order";
|
|
472
|
+
/** GET /cycles */
|
|
473
|
+
readonly CYCLES: "/cycles";
|
|
474
|
+
/** GET /graph */
|
|
475
|
+
readonly GRAPH: "/graph";
|
|
476
|
+
/** GET /stale */
|
|
477
|
+
readonly STALE: "/stale";
|
|
478
|
+
/** GET /layers — layering violation report */
|
|
479
|
+
readonly LAYERS: "/layers";
|
|
480
|
+
/** GET /coupling — coupling metrics */
|
|
481
|
+
readonly COUPLING: "/coupling";
|
|
482
|
+
/** GET /dead-code — knip report */
|
|
483
|
+
readonly DEAD_CODE: "/dead-code";
|
|
484
|
+
/** GET /history — snapshot history */
|
|
485
|
+
readonly HISTORY: "/history";
|
|
486
|
+
/** POST /snapshot — save snapshot */
|
|
487
|
+
readonly SNAPSHOT: "/snapshot";
|
|
488
|
+
};
|
|
489
|
+
declare const QUALITY_FULL_ROUTES: { [K in keyof typeof QUALITY_ROUTES]: string; };
|
|
490
|
+
type QualityRoute = (typeof QUALITY_ROUTES)[keyof typeof QUALITY_ROUTES];
|
|
387
491
|
|
|
388
492
|
/**
|
|
389
493
|
* REST API Request/Response Types and Zod Schemas for Quality Plugin
|
|
@@ -963,5 +1067,1595 @@ declare const StaleResponseSchema: z.ZodObject<{
|
|
|
963
1067
|
}[] | undefined;
|
|
964
1068
|
}>;
|
|
965
1069
|
type StaleResponse = z.infer<typeof StaleResponseSchema>;
|
|
1070
|
+
declare const DimensionScoreSchema: z.ZodObject<{
|
|
1071
|
+
score: z.ZodNumber;
|
|
1072
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1073
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1074
|
+
}, "strip", z.ZodTypeAny, {
|
|
1075
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1076
|
+
score: number;
|
|
1077
|
+
details: string[];
|
|
1078
|
+
}, {
|
|
1079
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1080
|
+
score: number;
|
|
1081
|
+
details: string[];
|
|
1082
|
+
}>;
|
|
1083
|
+
declare const DimensionScoresSchema: z.ZodObject<{
|
|
1084
|
+
architecture: z.ZodObject<{
|
|
1085
|
+
score: z.ZodNumber;
|
|
1086
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1087
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1088
|
+
}, "strip", z.ZodTypeAny, {
|
|
1089
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1090
|
+
score: number;
|
|
1091
|
+
details: string[];
|
|
1092
|
+
}, {
|
|
1093
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1094
|
+
score: number;
|
|
1095
|
+
details: string[];
|
|
1096
|
+
}>;
|
|
1097
|
+
typescript: z.ZodObject<{
|
|
1098
|
+
score: z.ZodNumber;
|
|
1099
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1100
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1101
|
+
}, "strip", z.ZodTypeAny, {
|
|
1102
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1103
|
+
score: number;
|
|
1104
|
+
details: string[];
|
|
1105
|
+
}, {
|
|
1106
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1107
|
+
score: number;
|
|
1108
|
+
details: string[];
|
|
1109
|
+
}>;
|
|
1110
|
+
deadCode: z.ZodObject<{
|
|
1111
|
+
score: z.ZodNumber;
|
|
1112
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1113
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1114
|
+
}, "strip", z.ZodTypeAny, {
|
|
1115
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1116
|
+
score: number;
|
|
1117
|
+
details: string[];
|
|
1118
|
+
}, {
|
|
1119
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1120
|
+
score: number;
|
|
1121
|
+
details: string[];
|
|
1122
|
+
}>;
|
|
1123
|
+
depHygiene: z.ZodObject<{
|
|
1124
|
+
score: z.ZodNumber;
|
|
1125
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1126
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1127
|
+
}, "strip", z.ZodTypeAny, {
|
|
1128
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1129
|
+
score: number;
|
|
1130
|
+
details: string[];
|
|
1131
|
+
}, {
|
|
1132
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1133
|
+
score: number;
|
|
1134
|
+
details: string[];
|
|
1135
|
+
}>;
|
|
1136
|
+
testCoverage: z.ZodObject<{
|
|
1137
|
+
score: z.ZodNumber;
|
|
1138
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1139
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1140
|
+
}, "strip", z.ZodTypeAny, {
|
|
1141
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1142
|
+
score: number;
|
|
1143
|
+
details: string[];
|
|
1144
|
+
}, {
|
|
1145
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1146
|
+
score: number;
|
|
1147
|
+
details: string[];
|
|
1148
|
+
}>;
|
|
1149
|
+
}, "strip", z.ZodTypeAny, {
|
|
1150
|
+
architecture: {
|
|
1151
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1152
|
+
score: number;
|
|
1153
|
+
details: string[];
|
|
1154
|
+
};
|
|
1155
|
+
typescript: {
|
|
1156
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1157
|
+
score: number;
|
|
1158
|
+
details: string[];
|
|
1159
|
+
};
|
|
1160
|
+
deadCode: {
|
|
1161
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1162
|
+
score: number;
|
|
1163
|
+
details: string[];
|
|
1164
|
+
};
|
|
1165
|
+
depHygiene: {
|
|
1166
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1167
|
+
score: number;
|
|
1168
|
+
details: string[];
|
|
1169
|
+
};
|
|
1170
|
+
testCoverage: {
|
|
1171
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1172
|
+
score: number;
|
|
1173
|
+
details: string[];
|
|
1174
|
+
};
|
|
1175
|
+
}, {
|
|
1176
|
+
architecture: {
|
|
1177
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1178
|
+
score: number;
|
|
1179
|
+
details: string[];
|
|
1180
|
+
};
|
|
1181
|
+
typescript: {
|
|
1182
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1183
|
+
score: number;
|
|
1184
|
+
details: string[];
|
|
1185
|
+
};
|
|
1186
|
+
deadCode: {
|
|
1187
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1188
|
+
score: number;
|
|
1189
|
+
details: string[];
|
|
1190
|
+
};
|
|
1191
|
+
depHygiene: {
|
|
1192
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1193
|
+
score: number;
|
|
1194
|
+
details: string[];
|
|
1195
|
+
};
|
|
1196
|
+
testCoverage: {
|
|
1197
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1198
|
+
score: number;
|
|
1199
|
+
details: string[];
|
|
1200
|
+
};
|
|
1201
|
+
}>;
|
|
1202
|
+
declare const HealthV2ResponseSchema: z.ZodObject<{
|
|
1203
|
+
score: z.ZodNumber;
|
|
1204
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1205
|
+
dimensions: z.ZodObject<{
|
|
1206
|
+
architecture: z.ZodObject<{
|
|
1207
|
+
score: z.ZodNumber;
|
|
1208
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1209
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1210
|
+
}, "strip", z.ZodTypeAny, {
|
|
1211
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1212
|
+
score: number;
|
|
1213
|
+
details: string[];
|
|
1214
|
+
}, {
|
|
1215
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1216
|
+
score: number;
|
|
1217
|
+
details: string[];
|
|
1218
|
+
}>;
|
|
1219
|
+
typescript: z.ZodObject<{
|
|
1220
|
+
score: z.ZodNumber;
|
|
1221
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1222
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1223
|
+
}, "strip", z.ZodTypeAny, {
|
|
1224
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1225
|
+
score: number;
|
|
1226
|
+
details: string[];
|
|
1227
|
+
}, {
|
|
1228
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1229
|
+
score: number;
|
|
1230
|
+
details: string[];
|
|
1231
|
+
}>;
|
|
1232
|
+
deadCode: z.ZodObject<{
|
|
1233
|
+
score: z.ZodNumber;
|
|
1234
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1235
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1236
|
+
}, "strip", z.ZodTypeAny, {
|
|
1237
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1238
|
+
score: number;
|
|
1239
|
+
details: string[];
|
|
1240
|
+
}, {
|
|
1241
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1242
|
+
score: number;
|
|
1243
|
+
details: string[];
|
|
1244
|
+
}>;
|
|
1245
|
+
depHygiene: z.ZodObject<{
|
|
1246
|
+
score: z.ZodNumber;
|
|
1247
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1248
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1249
|
+
}, "strip", z.ZodTypeAny, {
|
|
1250
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1251
|
+
score: number;
|
|
1252
|
+
details: string[];
|
|
1253
|
+
}, {
|
|
1254
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1255
|
+
score: number;
|
|
1256
|
+
details: string[];
|
|
1257
|
+
}>;
|
|
1258
|
+
testCoverage: z.ZodObject<{
|
|
1259
|
+
score: z.ZodNumber;
|
|
1260
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1261
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1262
|
+
}, "strip", z.ZodTypeAny, {
|
|
1263
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1264
|
+
score: number;
|
|
1265
|
+
details: string[];
|
|
1266
|
+
}, {
|
|
1267
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1268
|
+
score: number;
|
|
1269
|
+
details: string[];
|
|
1270
|
+
}>;
|
|
1271
|
+
}, "strip", z.ZodTypeAny, {
|
|
1272
|
+
architecture: {
|
|
1273
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1274
|
+
score: number;
|
|
1275
|
+
details: string[];
|
|
1276
|
+
};
|
|
1277
|
+
typescript: {
|
|
1278
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1279
|
+
score: number;
|
|
1280
|
+
details: string[];
|
|
1281
|
+
};
|
|
1282
|
+
deadCode: {
|
|
1283
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1284
|
+
score: number;
|
|
1285
|
+
details: string[];
|
|
1286
|
+
};
|
|
1287
|
+
depHygiene: {
|
|
1288
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1289
|
+
score: number;
|
|
1290
|
+
details: string[];
|
|
1291
|
+
};
|
|
1292
|
+
testCoverage: {
|
|
1293
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1294
|
+
score: number;
|
|
1295
|
+
details: string[];
|
|
1296
|
+
};
|
|
1297
|
+
}, {
|
|
1298
|
+
architecture: {
|
|
1299
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1300
|
+
score: number;
|
|
1301
|
+
details: string[];
|
|
1302
|
+
};
|
|
1303
|
+
typescript: {
|
|
1304
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1305
|
+
score: number;
|
|
1306
|
+
details: string[];
|
|
1307
|
+
};
|
|
1308
|
+
deadCode: {
|
|
1309
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1310
|
+
score: number;
|
|
1311
|
+
details: string[];
|
|
1312
|
+
};
|
|
1313
|
+
depHygiene: {
|
|
1314
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1315
|
+
score: number;
|
|
1316
|
+
details: string[];
|
|
1317
|
+
};
|
|
1318
|
+
testCoverage: {
|
|
1319
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1320
|
+
score: number;
|
|
1321
|
+
details: string[];
|
|
1322
|
+
};
|
|
1323
|
+
}>;
|
|
1324
|
+
}, "strip", z.ZodTypeAny, {
|
|
1325
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1326
|
+
score: number;
|
|
1327
|
+
dimensions: {
|
|
1328
|
+
architecture: {
|
|
1329
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1330
|
+
score: number;
|
|
1331
|
+
details: string[];
|
|
1332
|
+
};
|
|
1333
|
+
typescript: {
|
|
1334
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1335
|
+
score: number;
|
|
1336
|
+
details: string[];
|
|
1337
|
+
};
|
|
1338
|
+
deadCode: {
|
|
1339
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1340
|
+
score: number;
|
|
1341
|
+
details: string[];
|
|
1342
|
+
};
|
|
1343
|
+
depHygiene: {
|
|
1344
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1345
|
+
score: number;
|
|
1346
|
+
details: string[];
|
|
1347
|
+
};
|
|
1348
|
+
testCoverage: {
|
|
1349
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1350
|
+
score: number;
|
|
1351
|
+
details: string[];
|
|
1352
|
+
};
|
|
1353
|
+
};
|
|
1354
|
+
}, {
|
|
1355
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1356
|
+
score: number;
|
|
1357
|
+
dimensions: {
|
|
1358
|
+
architecture: {
|
|
1359
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1360
|
+
score: number;
|
|
1361
|
+
details: string[];
|
|
1362
|
+
};
|
|
1363
|
+
typescript: {
|
|
1364
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1365
|
+
score: number;
|
|
1366
|
+
details: string[];
|
|
1367
|
+
};
|
|
1368
|
+
deadCode: {
|
|
1369
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1370
|
+
score: number;
|
|
1371
|
+
details: string[];
|
|
1372
|
+
};
|
|
1373
|
+
depHygiene: {
|
|
1374
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1375
|
+
score: number;
|
|
1376
|
+
details: string[];
|
|
1377
|
+
};
|
|
1378
|
+
testCoverage: {
|
|
1379
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1380
|
+
score: number;
|
|
1381
|
+
details: string[];
|
|
1382
|
+
};
|
|
1383
|
+
};
|
|
1384
|
+
}>;
|
|
1385
|
+
type HealthV2Response = z.infer<typeof HealthV2ResponseSchema>;
|
|
1386
|
+
declare const LayeringViolationSchema: z.ZodObject<{
|
|
1387
|
+
file: z.ZodString;
|
|
1388
|
+
fromPackage: z.ZodString;
|
|
1389
|
+
fromLayer: z.ZodNumber;
|
|
1390
|
+
toPackage: z.ZodString;
|
|
1391
|
+
toLayer: z.ZodNumber;
|
|
1392
|
+
importSpecifier: z.ZodString;
|
|
1393
|
+
}, "strip", z.ZodTypeAny, {
|
|
1394
|
+
file: string;
|
|
1395
|
+
fromPackage: string;
|
|
1396
|
+
fromLayer: number;
|
|
1397
|
+
toPackage: string;
|
|
1398
|
+
toLayer: number;
|
|
1399
|
+
importSpecifier: string;
|
|
1400
|
+
}, {
|
|
1401
|
+
file: string;
|
|
1402
|
+
fromPackage: string;
|
|
1403
|
+
fromLayer: number;
|
|
1404
|
+
toPackage: string;
|
|
1405
|
+
toLayer: number;
|
|
1406
|
+
importSpecifier: string;
|
|
1407
|
+
}>;
|
|
1408
|
+
declare const LayeringResponseSchema: z.ZodObject<{
|
|
1409
|
+
violations: z.ZodArray<z.ZodObject<{
|
|
1410
|
+
file: z.ZodString;
|
|
1411
|
+
fromPackage: z.ZodString;
|
|
1412
|
+
fromLayer: z.ZodNumber;
|
|
1413
|
+
toPackage: z.ZodString;
|
|
1414
|
+
toLayer: z.ZodNumber;
|
|
1415
|
+
importSpecifier: z.ZodString;
|
|
1416
|
+
}, "strip", z.ZodTypeAny, {
|
|
1417
|
+
file: string;
|
|
1418
|
+
fromPackage: string;
|
|
1419
|
+
fromLayer: number;
|
|
1420
|
+
toPackage: string;
|
|
1421
|
+
toLayer: number;
|
|
1422
|
+
importSpecifier: string;
|
|
1423
|
+
}, {
|
|
1424
|
+
file: string;
|
|
1425
|
+
fromPackage: string;
|
|
1426
|
+
fromLayer: number;
|
|
1427
|
+
toPackage: string;
|
|
1428
|
+
toLayer: number;
|
|
1429
|
+
importSpecifier: string;
|
|
1430
|
+
}>, "many">;
|
|
1431
|
+
totalViolations: z.ZodNumber;
|
|
1432
|
+
affectedPackages: z.ZodArray<z.ZodString, "many">;
|
|
1433
|
+
layerMap: z.ZodRecord<z.ZodString, z.ZodNumber>;
|
|
1434
|
+
}, "strip", z.ZodTypeAny, {
|
|
1435
|
+
affectedPackages: string[];
|
|
1436
|
+
violations: {
|
|
1437
|
+
file: string;
|
|
1438
|
+
fromPackage: string;
|
|
1439
|
+
fromLayer: number;
|
|
1440
|
+
toPackage: string;
|
|
1441
|
+
toLayer: number;
|
|
1442
|
+
importSpecifier: string;
|
|
1443
|
+
}[];
|
|
1444
|
+
totalViolations: number;
|
|
1445
|
+
layerMap: Record<string, number>;
|
|
1446
|
+
}, {
|
|
1447
|
+
affectedPackages: string[];
|
|
1448
|
+
violations: {
|
|
1449
|
+
file: string;
|
|
1450
|
+
fromPackage: string;
|
|
1451
|
+
fromLayer: number;
|
|
1452
|
+
toPackage: string;
|
|
1453
|
+
toLayer: number;
|
|
1454
|
+
importSpecifier: string;
|
|
1455
|
+
}[];
|
|
1456
|
+
totalViolations: number;
|
|
1457
|
+
layerMap: Record<string, number>;
|
|
1458
|
+
}>;
|
|
1459
|
+
type LayeringResponse = z.infer<typeof LayeringResponseSchema>;
|
|
1460
|
+
declare const PackageCouplingSchema: z.ZodObject<{
|
|
1461
|
+
name: z.ZodString;
|
|
1462
|
+
afferent: z.ZodNumber;
|
|
1463
|
+
efferent: z.ZodNumber;
|
|
1464
|
+
instability: z.ZodNumber;
|
|
1465
|
+
}, "strip", z.ZodTypeAny, {
|
|
1466
|
+
name: string;
|
|
1467
|
+
afferent: number;
|
|
1468
|
+
efferent: number;
|
|
1469
|
+
instability: number;
|
|
1470
|
+
}, {
|
|
1471
|
+
name: string;
|
|
1472
|
+
afferent: number;
|
|
1473
|
+
efferent: number;
|
|
1474
|
+
instability: number;
|
|
1475
|
+
}>;
|
|
1476
|
+
declare const CouplingResponseSchema: z.ZodObject<{
|
|
1477
|
+
packages: z.ZodArray<z.ZodObject<{
|
|
1478
|
+
name: z.ZodString;
|
|
1479
|
+
afferent: z.ZodNumber;
|
|
1480
|
+
efferent: z.ZodNumber;
|
|
1481
|
+
instability: z.ZodNumber;
|
|
1482
|
+
}, "strip", z.ZodTypeAny, {
|
|
1483
|
+
name: string;
|
|
1484
|
+
afferent: number;
|
|
1485
|
+
efferent: number;
|
|
1486
|
+
instability: number;
|
|
1487
|
+
}, {
|
|
1488
|
+
name: string;
|
|
1489
|
+
afferent: number;
|
|
1490
|
+
efferent: number;
|
|
1491
|
+
instability: number;
|
|
1492
|
+
}>, "many">;
|
|
1493
|
+
avgInstability: z.ZodNumber;
|
|
1494
|
+
mostUnstable: z.ZodArray<z.ZodObject<{
|
|
1495
|
+
name: z.ZodString;
|
|
1496
|
+
afferent: z.ZodNumber;
|
|
1497
|
+
efferent: z.ZodNumber;
|
|
1498
|
+
instability: z.ZodNumber;
|
|
1499
|
+
}, "strip", z.ZodTypeAny, {
|
|
1500
|
+
name: string;
|
|
1501
|
+
afferent: number;
|
|
1502
|
+
efferent: number;
|
|
1503
|
+
instability: number;
|
|
1504
|
+
}, {
|
|
1505
|
+
name: string;
|
|
1506
|
+
afferent: number;
|
|
1507
|
+
efferent: number;
|
|
1508
|
+
instability: number;
|
|
1509
|
+
}>, "many">;
|
|
1510
|
+
mostCoupled: z.ZodArray<z.ZodObject<{
|
|
1511
|
+
name: z.ZodString;
|
|
1512
|
+
afferent: z.ZodNumber;
|
|
1513
|
+
efferent: z.ZodNumber;
|
|
1514
|
+
instability: z.ZodNumber;
|
|
1515
|
+
}, "strip", z.ZodTypeAny, {
|
|
1516
|
+
name: string;
|
|
1517
|
+
afferent: number;
|
|
1518
|
+
efferent: number;
|
|
1519
|
+
instability: number;
|
|
1520
|
+
}, {
|
|
1521
|
+
name: string;
|
|
1522
|
+
afferent: number;
|
|
1523
|
+
efferent: number;
|
|
1524
|
+
instability: number;
|
|
1525
|
+
}>, "many">;
|
|
1526
|
+
}, "strip", z.ZodTypeAny, {
|
|
1527
|
+
packages: {
|
|
1528
|
+
name: string;
|
|
1529
|
+
afferent: number;
|
|
1530
|
+
efferent: number;
|
|
1531
|
+
instability: number;
|
|
1532
|
+
}[];
|
|
1533
|
+
avgInstability: number;
|
|
1534
|
+
mostUnstable: {
|
|
1535
|
+
name: string;
|
|
1536
|
+
afferent: number;
|
|
1537
|
+
efferent: number;
|
|
1538
|
+
instability: number;
|
|
1539
|
+
}[];
|
|
1540
|
+
mostCoupled: {
|
|
1541
|
+
name: string;
|
|
1542
|
+
afferent: number;
|
|
1543
|
+
efferent: number;
|
|
1544
|
+
instability: number;
|
|
1545
|
+
}[];
|
|
1546
|
+
}, {
|
|
1547
|
+
packages: {
|
|
1548
|
+
name: string;
|
|
1549
|
+
afferent: number;
|
|
1550
|
+
efferent: number;
|
|
1551
|
+
instability: number;
|
|
1552
|
+
}[];
|
|
1553
|
+
avgInstability: number;
|
|
1554
|
+
mostUnstable: {
|
|
1555
|
+
name: string;
|
|
1556
|
+
afferent: number;
|
|
1557
|
+
efferent: number;
|
|
1558
|
+
instability: number;
|
|
1559
|
+
}[];
|
|
1560
|
+
mostCoupled: {
|
|
1561
|
+
name: string;
|
|
1562
|
+
afferent: number;
|
|
1563
|
+
efferent: number;
|
|
1564
|
+
instability: number;
|
|
1565
|
+
}[];
|
|
1566
|
+
}>;
|
|
1567
|
+
type CouplingResponse = z.infer<typeof CouplingResponseSchema>;
|
|
1568
|
+
declare const KnipUnusedExportSchema: z.ZodObject<{
|
|
1569
|
+
file: z.ZodString;
|
|
1570
|
+
symbol: z.ZodString;
|
|
1571
|
+
}, "strip", z.ZodTypeAny, {
|
|
1572
|
+
symbol: string;
|
|
1573
|
+
file: string;
|
|
1574
|
+
}, {
|
|
1575
|
+
symbol: string;
|
|
1576
|
+
file: string;
|
|
1577
|
+
}>;
|
|
1578
|
+
declare const KnipUnusedDependencySchema: z.ZodObject<{
|
|
1579
|
+
package: z.ZodString;
|
|
1580
|
+
workspace: z.ZodString;
|
|
1581
|
+
}, "strip", z.ZodTypeAny, {
|
|
1582
|
+
package: string;
|
|
1583
|
+
workspace: string;
|
|
1584
|
+
}, {
|
|
1585
|
+
package: string;
|
|
1586
|
+
workspace: string;
|
|
1587
|
+
}>;
|
|
1588
|
+
declare const DeadCodeResponseSchema: z.ZodObject<{
|
|
1589
|
+
unusedFiles: z.ZodArray<z.ZodString, "many">;
|
|
1590
|
+
unusedExports: z.ZodArray<z.ZodObject<{
|
|
1591
|
+
file: z.ZodString;
|
|
1592
|
+
symbol: z.ZodString;
|
|
1593
|
+
}, "strip", z.ZodTypeAny, {
|
|
1594
|
+
symbol: string;
|
|
1595
|
+
file: string;
|
|
1596
|
+
}, {
|
|
1597
|
+
symbol: string;
|
|
1598
|
+
file: string;
|
|
1599
|
+
}>, "many">;
|
|
1600
|
+
unusedDependencies: z.ZodArray<z.ZodObject<{
|
|
1601
|
+
package: z.ZodString;
|
|
1602
|
+
workspace: z.ZodString;
|
|
1603
|
+
}, "strip", z.ZodTypeAny, {
|
|
1604
|
+
package: string;
|
|
1605
|
+
workspace: string;
|
|
1606
|
+
}, {
|
|
1607
|
+
package: string;
|
|
1608
|
+
workspace: string;
|
|
1609
|
+
}>, "many">;
|
|
1610
|
+
unlistedDependencies: z.ZodArray<z.ZodObject<{
|
|
1611
|
+
package: z.ZodString;
|
|
1612
|
+
workspace: z.ZodString;
|
|
1613
|
+
}, "strip", z.ZodTypeAny, {
|
|
1614
|
+
package: string;
|
|
1615
|
+
workspace: string;
|
|
1616
|
+
}, {
|
|
1617
|
+
package: string;
|
|
1618
|
+
workspace: string;
|
|
1619
|
+
}>, "many">;
|
|
1620
|
+
totalIssues: z.ZodNumber;
|
|
1621
|
+
}, "strip", z.ZodTypeAny, {
|
|
1622
|
+
totalIssues: number;
|
|
1623
|
+
unusedFiles: string[];
|
|
1624
|
+
unusedExports: {
|
|
1625
|
+
symbol: string;
|
|
1626
|
+
file: string;
|
|
1627
|
+
}[];
|
|
1628
|
+
unusedDependencies: {
|
|
1629
|
+
package: string;
|
|
1630
|
+
workspace: string;
|
|
1631
|
+
}[];
|
|
1632
|
+
unlistedDependencies: {
|
|
1633
|
+
package: string;
|
|
1634
|
+
workspace: string;
|
|
1635
|
+
}[];
|
|
1636
|
+
}, {
|
|
1637
|
+
totalIssues: number;
|
|
1638
|
+
unusedFiles: string[];
|
|
1639
|
+
unusedExports: {
|
|
1640
|
+
symbol: string;
|
|
1641
|
+
file: string;
|
|
1642
|
+
}[];
|
|
1643
|
+
unusedDependencies: {
|
|
1644
|
+
package: string;
|
|
1645
|
+
workspace: string;
|
|
1646
|
+
}[];
|
|
1647
|
+
unlistedDependencies: {
|
|
1648
|
+
package: string;
|
|
1649
|
+
workspace: string;
|
|
1650
|
+
}[];
|
|
1651
|
+
}>;
|
|
1652
|
+
type DeadCodeResponse = z.infer<typeof DeadCodeResponseSchema>;
|
|
1653
|
+
declare const QualitySnapshotSchema: z.ZodObject<{
|
|
1654
|
+
id: z.ZodString;
|
|
1655
|
+
timestamp: z.ZodString;
|
|
1656
|
+
git: z.ZodObject<{
|
|
1657
|
+
commit: z.ZodString;
|
|
1658
|
+
branch: z.ZodString;
|
|
1659
|
+
message: z.ZodString;
|
|
1660
|
+
}, "strip", z.ZodTypeAny, {
|
|
1661
|
+
message: string;
|
|
1662
|
+
commit: string;
|
|
1663
|
+
branch: string;
|
|
1664
|
+
}, {
|
|
1665
|
+
message: string;
|
|
1666
|
+
commit: string;
|
|
1667
|
+
branch: string;
|
|
1668
|
+
}>;
|
|
1669
|
+
score: z.ZodNumber;
|
|
1670
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1671
|
+
dimensions: z.ZodObject<{
|
|
1672
|
+
architecture: z.ZodObject<{
|
|
1673
|
+
score: z.ZodNumber;
|
|
1674
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1675
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1676
|
+
}, "strip", z.ZodTypeAny, {
|
|
1677
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1678
|
+
score: number;
|
|
1679
|
+
details: string[];
|
|
1680
|
+
}, {
|
|
1681
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1682
|
+
score: number;
|
|
1683
|
+
details: string[];
|
|
1684
|
+
}>;
|
|
1685
|
+
typescript: z.ZodObject<{
|
|
1686
|
+
score: z.ZodNumber;
|
|
1687
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1688
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1689
|
+
}, "strip", z.ZodTypeAny, {
|
|
1690
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1691
|
+
score: number;
|
|
1692
|
+
details: string[];
|
|
1693
|
+
}, {
|
|
1694
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1695
|
+
score: number;
|
|
1696
|
+
details: string[];
|
|
1697
|
+
}>;
|
|
1698
|
+
deadCode: z.ZodObject<{
|
|
1699
|
+
score: z.ZodNumber;
|
|
1700
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1701
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1702
|
+
}, "strip", z.ZodTypeAny, {
|
|
1703
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1704
|
+
score: number;
|
|
1705
|
+
details: string[];
|
|
1706
|
+
}, {
|
|
1707
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1708
|
+
score: number;
|
|
1709
|
+
details: string[];
|
|
1710
|
+
}>;
|
|
1711
|
+
depHygiene: z.ZodObject<{
|
|
1712
|
+
score: z.ZodNumber;
|
|
1713
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1714
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1715
|
+
}, "strip", z.ZodTypeAny, {
|
|
1716
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1717
|
+
score: number;
|
|
1718
|
+
details: string[];
|
|
1719
|
+
}, {
|
|
1720
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1721
|
+
score: number;
|
|
1722
|
+
details: string[];
|
|
1723
|
+
}>;
|
|
1724
|
+
testCoverage: z.ZodObject<{
|
|
1725
|
+
score: z.ZodNumber;
|
|
1726
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1727
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1728
|
+
}, "strip", z.ZodTypeAny, {
|
|
1729
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1730
|
+
score: number;
|
|
1731
|
+
details: string[];
|
|
1732
|
+
}, {
|
|
1733
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1734
|
+
score: number;
|
|
1735
|
+
details: string[];
|
|
1736
|
+
}>;
|
|
1737
|
+
}, "strip", z.ZodTypeAny, {
|
|
1738
|
+
architecture: {
|
|
1739
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1740
|
+
score: number;
|
|
1741
|
+
details: string[];
|
|
1742
|
+
};
|
|
1743
|
+
typescript: {
|
|
1744
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1745
|
+
score: number;
|
|
1746
|
+
details: string[];
|
|
1747
|
+
};
|
|
1748
|
+
deadCode: {
|
|
1749
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1750
|
+
score: number;
|
|
1751
|
+
details: string[];
|
|
1752
|
+
};
|
|
1753
|
+
depHygiene: {
|
|
1754
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1755
|
+
score: number;
|
|
1756
|
+
details: string[];
|
|
1757
|
+
};
|
|
1758
|
+
testCoverage: {
|
|
1759
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1760
|
+
score: number;
|
|
1761
|
+
details: string[];
|
|
1762
|
+
};
|
|
1763
|
+
}, {
|
|
1764
|
+
architecture: {
|
|
1765
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1766
|
+
score: number;
|
|
1767
|
+
details: string[];
|
|
1768
|
+
};
|
|
1769
|
+
typescript: {
|
|
1770
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1771
|
+
score: number;
|
|
1772
|
+
details: string[];
|
|
1773
|
+
};
|
|
1774
|
+
deadCode: {
|
|
1775
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1776
|
+
score: number;
|
|
1777
|
+
details: string[];
|
|
1778
|
+
};
|
|
1779
|
+
depHygiene: {
|
|
1780
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1781
|
+
score: number;
|
|
1782
|
+
details: string[];
|
|
1783
|
+
};
|
|
1784
|
+
testCoverage: {
|
|
1785
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1786
|
+
score: number;
|
|
1787
|
+
details: string[];
|
|
1788
|
+
};
|
|
1789
|
+
}>;
|
|
1790
|
+
counters: z.ZodObject<{
|
|
1791
|
+
layeringViolations: z.ZodNumber;
|
|
1792
|
+
avgInstability: z.ZodNumber;
|
|
1793
|
+
anyCount: z.ZodNumber;
|
|
1794
|
+
tsIgnoreCount: z.ZodNumber;
|
|
1795
|
+
unusedFiles: z.ZodNumber;
|
|
1796
|
+
unusedDeps: z.ZodNumber;
|
|
1797
|
+
}, "strip", z.ZodTypeAny, {
|
|
1798
|
+
avgInstability: number;
|
|
1799
|
+
unusedFiles: number;
|
|
1800
|
+
layeringViolations: number;
|
|
1801
|
+
anyCount: number;
|
|
1802
|
+
tsIgnoreCount: number;
|
|
1803
|
+
unusedDeps: number;
|
|
1804
|
+
}, {
|
|
1805
|
+
avgInstability: number;
|
|
1806
|
+
unusedFiles: number;
|
|
1807
|
+
layeringViolations: number;
|
|
1808
|
+
anyCount: number;
|
|
1809
|
+
tsIgnoreCount: number;
|
|
1810
|
+
unusedDeps: number;
|
|
1811
|
+
}>;
|
|
1812
|
+
}, "strip", z.ZodTypeAny, {
|
|
1813
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1814
|
+
score: number;
|
|
1815
|
+
dimensions: {
|
|
1816
|
+
architecture: {
|
|
1817
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1818
|
+
score: number;
|
|
1819
|
+
details: string[];
|
|
1820
|
+
};
|
|
1821
|
+
typescript: {
|
|
1822
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1823
|
+
score: number;
|
|
1824
|
+
details: string[];
|
|
1825
|
+
};
|
|
1826
|
+
deadCode: {
|
|
1827
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1828
|
+
score: number;
|
|
1829
|
+
details: string[];
|
|
1830
|
+
};
|
|
1831
|
+
depHygiene: {
|
|
1832
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1833
|
+
score: number;
|
|
1834
|
+
details: string[];
|
|
1835
|
+
};
|
|
1836
|
+
testCoverage: {
|
|
1837
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1838
|
+
score: number;
|
|
1839
|
+
details: string[];
|
|
1840
|
+
};
|
|
1841
|
+
};
|
|
1842
|
+
id: string;
|
|
1843
|
+
timestamp: string;
|
|
1844
|
+
git: {
|
|
1845
|
+
message: string;
|
|
1846
|
+
commit: string;
|
|
1847
|
+
branch: string;
|
|
1848
|
+
};
|
|
1849
|
+
counters: {
|
|
1850
|
+
avgInstability: number;
|
|
1851
|
+
unusedFiles: number;
|
|
1852
|
+
layeringViolations: number;
|
|
1853
|
+
anyCount: number;
|
|
1854
|
+
tsIgnoreCount: number;
|
|
1855
|
+
unusedDeps: number;
|
|
1856
|
+
};
|
|
1857
|
+
}, {
|
|
1858
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1859
|
+
score: number;
|
|
1860
|
+
dimensions: {
|
|
1861
|
+
architecture: {
|
|
1862
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1863
|
+
score: number;
|
|
1864
|
+
details: string[];
|
|
1865
|
+
};
|
|
1866
|
+
typescript: {
|
|
1867
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1868
|
+
score: number;
|
|
1869
|
+
details: string[];
|
|
1870
|
+
};
|
|
1871
|
+
deadCode: {
|
|
1872
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1873
|
+
score: number;
|
|
1874
|
+
details: string[];
|
|
1875
|
+
};
|
|
1876
|
+
depHygiene: {
|
|
1877
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1878
|
+
score: number;
|
|
1879
|
+
details: string[];
|
|
1880
|
+
};
|
|
1881
|
+
testCoverage: {
|
|
1882
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1883
|
+
score: number;
|
|
1884
|
+
details: string[];
|
|
1885
|
+
};
|
|
1886
|
+
};
|
|
1887
|
+
id: string;
|
|
1888
|
+
timestamp: string;
|
|
1889
|
+
git: {
|
|
1890
|
+
message: string;
|
|
1891
|
+
commit: string;
|
|
1892
|
+
branch: string;
|
|
1893
|
+
};
|
|
1894
|
+
counters: {
|
|
1895
|
+
avgInstability: number;
|
|
1896
|
+
unusedFiles: number;
|
|
1897
|
+
layeringViolations: number;
|
|
1898
|
+
anyCount: number;
|
|
1899
|
+
tsIgnoreCount: number;
|
|
1900
|
+
unusedDeps: number;
|
|
1901
|
+
};
|
|
1902
|
+
}>;
|
|
1903
|
+
declare const SnapshotDeltaSchema: z.ZodObject<{
|
|
1904
|
+
score: z.ZodNumber;
|
|
1905
|
+
layeringViolations: z.ZodNumber;
|
|
1906
|
+
anyCount: z.ZodNumber;
|
|
1907
|
+
tsIgnoreCount: z.ZodNumber;
|
|
1908
|
+
unusedFiles: z.ZodNumber;
|
|
1909
|
+
unusedDeps: z.ZodNumber;
|
|
1910
|
+
avgInstability: z.ZodNumber;
|
|
1911
|
+
}, "strip", z.ZodTypeAny, {
|
|
1912
|
+
score: number;
|
|
1913
|
+
avgInstability: number;
|
|
1914
|
+
unusedFiles: number;
|
|
1915
|
+
layeringViolations: number;
|
|
1916
|
+
anyCount: number;
|
|
1917
|
+
tsIgnoreCount: number;
|
|
1918
|
+
unusedDeps: number;
|
|
1919
|
+
}, {
|
|
1920
|
+
score: number;
|
|
1921
|
+
avgInstability: number;
|
|
1922
|
+
unusedFiles: number;
|
|
1923
|
+
layeringViolations: number;
|
|
1924
|
+
anyCount: number;
|
|
1925
|
+
tsIgnoreCount: number;
|
|
1926
|
+
unusedDeps: number;
|
|
1927
|
+
}>;
|
|
1928
|
+
declare const HistoryResponseSchema: z.ZodObject<{
|
|
1929
|
+
snapshots: z.ZodArray<z.ZodObject<{
|
|
1930
|
+
id: z.ZodString;
|
|
1931
|
+
timestamp: z.ZodString;
|
|
1932
|
+
git: z.ZodObject<{
|
|
1933
|
+
commit: z.ZodString;
|
|
1934
|
+
branch: z.ZodString;
|
|
1935
|
+
message: z.ZodString;
|
|
1936
|
+
}, "strip", z.ZodTypeAny, {
|
|
1937
|
+
message: string;
|
|
1938
|
+
commit: string;
|
|
1939
|
+
branch: string;
|
|
1940
|
+
}, {
|
|
1941
|
+
message: string;
|
|
1942
|
+
commit: string;
|
|
1943
|
+
branch: string;
|
|
1944
|
+
}>;
|
|
1945
|
+
score: z.ZodNumber;
|
|
1946
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1947
|
+
dimensions: z.ZodObject<{
|
|
1948
|
+
architecture: z.ZodObject<{
|
|
1949
|
+
score: z.ZodNumber;
|
|
1950
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1951
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1952
|
+
}, "strip", z.ZodTypeAny, {
|
|
1953
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1954
|
+
score: number;
|
|
1955
|
+
details: string[];
|
|
1956
|
+
}, {
|
|
1957
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1958
|
+
score: number;
|
|
1959
|
+
details: string[];
|
|
1960
|
+
}>;
|
|
1961
|
+
typescript: z.ZodObject<{
|
|
1962
|
+
score: z.ZodNumber;
|
|
1963
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1964
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1965
|
+
}, "strip", z.ZodTypeAny, {
|
|
1966
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1967
|
+
score: number;
|
|
1968
|
+
details: string[];
|
|
1969
|
+
}, {
|
|
1970
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1971
|
+
score: number;
|
|
1972
|
+
details: string[];
|
|
1973
|
+
}>;
|
|
1974
|
+
deadCode: z.ZodObject<{
|
|
1975
|
+
score: z.ZodNumber;
|
|
1976
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1977
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1978
|
+
}, "strip", z.ZodTypeAny, {
|
|
1979
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1980
|
+
score: number;
|
|
1981
|
+
details: string[];
|
|
1982
|
+
}, {
|
|
1983
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1984
|
+
score: number;
|
|
1985
|
+
details: string[];
|
|
1986
|
+
}>;
|
|
1987
|
+
depHygiene: z.ZodObject<{
|
|
1988
|
+
score: z.ZodNumber;
|
|
1989
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
1990
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
1991
|
+
}, "strip", z.ZodTypeAny, {
|
|
1992
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1993
|
+
score: number;
|
|
1994
|
+
details: string[];
|
|
1995
|
+
}, {
|
|
1996
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
1997
|
+
score: number;
|
|
1998
|
+
details: string[];
|
|
1999
|
+
}>;
|
|
2000
|
+
testCoverage: z.ZodObject<{
|
|
2001
|
+
score: z.ZodNumber;
|
|
2002
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2003
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
2004
|
+
}, "strip", z.ZodTypeAny, {
|
|
2005
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2006
|
+
score: number;
|
|
2007
|
+
details: string[];
|
|
2008
|
+
}, {
|
|
2009
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2010
|
+
score: number;
|
|
2011
|
+
details: string[];
|
|
2012
|
+
}>;
|
|
2013
|
+
}, "strip", z.ZodTypeAny, {
|
|
2014
|
+
architecture: {
|
|
2015
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2016
|
+
score: number;
|
|
2017
|
+
details: string[];
|
|
2018
|
+
};
|
|
2019
|
+
typescript: {
|
|
2020
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2021
|
+
score: number;
|
|
2022
|
+
details: string[];
|
|
2023
|
+
};
|
|
2024
|
+
deadCode: {
|
|
2025
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2026
|
+
score: number;
|
|
2027
|
+
details: string[];
|
|
2028
|
+
};
|
|
2029
|
+
depHygiene: {
|
|
2030
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2031
|
+
score: number;
|
|
2032
|
+
details: string[];
|
|
2033
|
+
};
|
|
2034
|
+
testCoverage: {
|
|
2035
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2036
|
+
score: number;
|
|
2037
|
+
details: string[];
|
|
2038
|
+
};
|
|
2039
|
+
}, {
|
|
2040
|
+
architecture: {
|
|
2041
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2042
|
+
score: number;
|
|
2043
|
+
details: string[];
|
|
2044
|
+
};
|
|
2045
|
+
typescript: {
|
|
2046
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2047
|
+
score: number;
|
|
2048
|
+
details: string[];
|
|
2049
|
+
};
|
|
2050
|
+
deadCode: {
|
|
2051
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2052
|
+
score: number;
|
|
2053
|
+
details: string[];
|
|
2054
|
+
};
|
|
2055
|
+
depHygiene: {
|
|
2056
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2057
|
+
score: number;
|
|
2058
|
+
details: string[];
|
|
2059
|
+
};
|
|
2060
|
+
testCoverage: {
|
|
2061
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2062
|
+
score: number;
|
|
2063
|
+
details: string[];
|
|
2064
|
+
};
|
|
2065
|
+
}>;
|
|
2066
|
+
counters: z.ZodObject<{
|
|
2067
|
+
layeringViolations: z.ZodNumber;
|
|
2068
|
+
avgInstability: z.ZodNumber;
|
|
2069
|
+
anyCount: z.ZodNumber;
|
|
2070
|
+
tsIgnoreCount: z.ZodNumber;
|
|
2071
|
+
unusedFiles: z.ZodNumber;
|
|
2072
|
+
unusedDeps: z.ZodNumber;
|
|
2073
|
+
}, "strip", z.ZodTypeAny, {
|
|
2074
|
+
avgInstability: number;
|
|
2075
|
+
unusedFiles: number;
|
|
2076
|
+
layeringViolations: number;
|
|
2077
|
+
anyCount: number;
|
|
2078
|
+
tsIgnoreCount: number;
|
|
2079
|
+
unusedDeps: number;
|
|
2080
|
+
}, {
|
|
2081
|
+
avgInstability: number;
|
|
2082
|
+
unusedFiles: number;
|
|
2083
|
+
layeringViolations: number;
|
|
2084
|
+
anyCount: number;
|
|
2085
|
+
tsIgnoreCount: number;
|
|
2086
|
+
unusedDeps: number;
|
|
2087
|
+
}>;
|
|
2088
|
+
}, "strip", z.ZodTypeAny, {
|
|
2089
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2090
|
+
score: number;
|
|
2091
|
+
dimensions: {
|
|
2092
|
+
architecture: {
|
|
2093
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2094
|
+
score: number;
|
|
2095
|
+
details: string[];
|
|
2096
|
+
};
|
|
2097
|
+
typescript: {
|
|
2098
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2099
|
+
score: number;
|
|
2100
|
+
details: string[];
|
|
2101
|
+
};
|
|
2102
|
+
deadCode: {
|
|
2103
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2104
|
+
score: number;
|
|
2105
|
+
details: string[];
|
|
2106
|
+
};
|
|
2107
|
+
depHygiene: {
|
|
2108
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2109
|
+
score: number;
|
|
2110
|
+
details: string[];
|
|
2111
|
+
};
|
|
2112
|
+
testCoverage: {
|
|
2113
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2114
|
+
score: number;
|
|
2115
|
+
details: string[];
|
|
2116
|
+
};
|
|
2117
|
+
};
|
|
2118
|
+
id: string;
|
|
2119
|
+
timestamp: string;
|
|
2120
|
+
git: {
|
|
2121
|
+
message: string;
|
|
2122
|
+
commit: string;
|
|
2123
|
+
branch: string;
|
|
2124
|
+
};
|
|
2125
|
+
counters: {
|
|
2126
|
+
avgInstability: number;
|
|
2127
|
+
unusedFiles: number;
|
|
2128
|
+
layeringViolations: number;
|
|
2129
|
+
anyCount: number;
|
|
2130
|
+
tsIgnoreCount: number;
|
|
2131
|
+
unusedDeps: number;
|
|
2132
|
+
};
|
|
2133
|
+
}, {
|
|
2134
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2135
|
+
score: number;
|
|
2136
|
+
dimensions: {
|
|
2137
|
+
architecture: {
|
|
2138
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2139
|
+
score: number;
|
|
2140
|
+
details: string[];
|
|
2141
|
+
};
|
|
2142
|
+
typescript: {
|
|
2143
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2144
|
+
score: number;
|
|
2145
|
+
details: string[];
|
|
2146
|
+
};
|
|
2147
|
+
deadCode: {
|
|
2148
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2149
|
+
score: number;
|
|
2150
|
+
details: string[];
|
|
2151
|
+
};
|
|
2152
|
+
depHygiene: {
|
|
2153
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2154
|
+
score: number;
|
|
2155
|
+
details: string[];
|
|
2156
|
+
};
|
|
2157
|
+
testCoverage: {
|
|
2158
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2159
|
+
score: number;
|
|
2160
|
+
details: string[];
|
|
2161
|
+
};
|
|
2162
|
+
};
|
|
2163
|
+
id: string;
|
|
2164
|
+
timestamp: string;
|
|
2165
|
+
git: {
|
|
2166
|
+
message: string;
|
|
2167
|
+
commit: string;
|
|
2168
|
+
branch: string;
|
|
2169
|
+
};
|
|
2170
|
+
counters: {
|
|
2171
|
+
avgInstability: number;
|
|
2172
|
+
unusedFiles: number;
|
|
2173
|
+
layeringViolations: number;
|
|
2174
|
+
anyCount: number;
|
|
2175
|
+
tsIgnoreCount: number;
|
|
2176
|
+
unusedDeps: number;
|
|
2177
|
+
};
|
|
2178
|
+
}>, "many">;
|
|
2179
|
+
delta: z.ZodNullable<z.ZodObject<{
|
|
2180
|
+
score: z.ZodNumber;
|
|
2181
|
+
layeringViolations: z.ZodNumber;
|
|
2182
|
+
anyCount: z.ZodNumber;
|
|
2183
|
+
tsIgnoreCount: z.ZodNumber;
|
|
2184
|
+
unusedFiles: z.ZodNumber;
|
|
2185
|
+
unusedDeps: z.ZodNumber;
|
|
2186
|
+
avgInstability: z.ZodNumber;
|
|
2187
|
+
}, "strip", z.ZodTypeAny, {
|
|
2188
|
+
score: number;
|
|
2189
|
+
avgInstability: number;
|
|
2190
|
+
unusedFiles: number;
|
|
2191
|
+
layeringViolations: number;
|
|
2192
|
+
anyCount: number;
|
|
2193
|
+
tsIgnoreCount: number;
|
|
2194
|
+
unusedDeps: number;
|
|
2195
|
+
}, {
|
|
2196
|
+
score: number;
|
|
2197
|
+
avgInstability: number;
|
|
2198
|
+
unusedFiles: number;
|
|
2199
|
+
layeringViolations: number;
|
|
2200
|
+
anyCount: number;
|
|
2201
|
+
tsIgnoreCount: number;
|
|
2202
|
+
unusedDeps: number;
|
|
2203
|
+
}>>;
|
|
2204
|
+
latest: z.ZodNullable<z.ZodObject<{
|
|
2205
|
+
id: z.ZodString;
|
|
2206
|
+
timestamp: z.ZodString;
|
|
2207
|
+
git: z.ZodObject<{
|
|
2208
|
+
commit: z.ZodString;
|
|
2209
|
+
branch: z.ZodString;
|
|
2210
|
+
message: z.ZodString;
|
|
2211
|
+
}, "strip", z.ZodTypeAny, {
|
|
2212
|
+
message: string;
|
|
2213
|
+
commit: string;
|
|
2214
|
+
branch: string;
|
|
2215
|
+
}, {
|
|
2216
|
+
message: string;
|
|
2217
|
+
commit: string;
|
|
2218
|
+
branch: string;
|
|
2219
|
+
}>;
|
|
2220
|
+
score: z.ZodNumber;
|
|
2221
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2222
|
+
dimensions: z.ZodObject<{
|
|
2223
|
+
architecture: z.ZodObject<{
|
|
2224
|
+
score: z.ZodNumber;
|
|
2225
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2226
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
2227
|
+
}, "strip", z.ZodTypeAny, {
|
|
2228
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2229
|
+
score: number;
|
|
2230
|
+
details: string[];
|
|
2231
|
+
}, {
|
|
2232
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2233
|
+
score: number;
|
|
2234
|
+
details: string[];
|
|
2235
|
+
}>;
|
|
2236
|
+
typescript: z.ZodObject<{
|
|
2237
|
+
score: z.ZodNumber;
|
|
2238
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2239
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
2240
|
+
}, "strip", z.ZodTypeAny, {
|
|
2241
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2242
|
+
score: number;
|
|
2243
|
+
details: string[];
|
|
2244
|
+
}, {
|
|
2245
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2246
|
+
score: number;
|
|
2247
|
+
details: string[];
|
|
2248
|
+
}>;
|
|
2249
|
+
deadCode: z.ZodObject<{
|
|
2250
|
+
score: z.ZodNumber;
|
|
2251
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2252
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
2253
|
+
}, "strip", z.ZodTypeAny, {
|
|
2254
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2255
|
+
score: number;
|
|
2256
|
+
details: string[];
|
|
2257
|
+
}, {
|
|
2258
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2259
|
+
score: number;
|
|
2260
|
+
details: string[];
|
|
2261
|
+
}>;
|
|
2262
|
+
depHygiene: z.ZodObject<{
|
|
2263
|
+
score: z.ZodNumber;
|
|
2264
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2265
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
2266
|
+
}, "strip", z.ZodTypeAny, {
|
|
2267
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2268
|
+
score: number;
|
|
2269
|
+
details: string[];
|
|
2270
|
+
}, {
|
|
2271
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2272
|
+
score: number;
|
|
2273
|
+
details: string[];
|
|
2274
|
+
}>;
|
|
2275
|
+
testCoverage: z.ZodObject<{
|
|
2276
|
+
score: z.ZodNumber;
|
|
2277
|
+
grade: z.ZodEnum<["A", "B", "C", "D", "F"]>;
|
|
2278
|
+
details: z.ZodArray<z.ZodString, "many">;
|
|
2279
|
+
}, "strip", z.ZodTypeAny, {
|
|
2280
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2281
|
+
score: number;
|
|
2282
|
+
details: string[];
|
|
2283
|
+
}, {
|
|
2284
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2285
|
+
score: number;
|
|
2286
|
+
details: string[];
|
|
2287
|
+
}>;
|
|
2288
|
+
}, "strip", z.ZodTypeAny, {
|
|
2289
|
+
architecture: {
|
|
2290
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2291
|
+
score: number;
|
|
2292
|
+
details: string[];
|
|
2293
|
+
};
|
|
2294
|
+
typescript: {
|
|
2295
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2296
|
+
score: number;
|
|
2297
|
+
details: string[];
|
|
2298
|
+
};
|
|
2299
|
+
deadCode: {
|
|
2300
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2301
|
+
score: number;
|
|
2302
|
+
details: string[];
|
|
2303
|
+
};
|
|
2304
|
+
depHygiene: {
|
|
2305
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2306
|
+
score: number;
|
|
2307
|
+
details: string[];
|
|
2308
|
+
};
|
|
2309
|
+
testCoverage: {
|
|
2310
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2311
|
+
score: number;
|
|
2312
|
+
details: string[];
|
|
2313
|
+
};
|
|
2314
|
+
}, {
|
|
2315
|
+
architecture: {
|
|
2316
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2317
|
+
score: number;
|
|
2318
|
+
details: string[];
|
|
2319
|
+
};
|
|
2320
|
+
typescript: {
|
|
2321
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2322
|
+
score: number;
|
|
2323
|
+
details: string[];
|
|
2324
|
+
};
|
|
2325
|
+
deadCode: {
|
|
2326
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2327
|
+
score: number;
|
|
2328
|
+
details: string[];
|
|
2329
|
+
};
|
|
2330
|
+
depHygiene: {
|
|
2331
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2332
|
+
score: number;
|
|
2333
|
+
details: string[];
|
|
2334
|
+
};
|
|
2335
|
+
testCoverage: {
|
|
2336
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2337
|
+
score: number;
|
|
2338
|
+
details: string[];
|
|
2339
|
+
};
|
|
2340
|
+
}>;
|
|
2341
|
+
counters: z.ZodObject<{
|
|
2342
|
+
layeringViolations: z.ZodNumber;
|
|
2343
|
+
avgInstability: z.ZodNumber;
|
|
2344
|
+
anyCount: z.ZodNumber;
|
|
2345
|
+
tsIgnoreCount: z.ZodNumber;
|
|
2346
|
+
unusedFiles: z.ZodNumber;
|
|
2347
|
+
unusedDeps: z.ZodNumber;
|
|
2348
|
+
}, "strip", z.ZodTypeAny, {
|
|
2349
|
+
avgInstability: number;
|
|
2350
|
+
unusedFiles: number;
|
|
2351
|
+
layeringViolations: number;
|
|
2352
|
+
anyCount: number;
|
|
2353
|
+
tsIgnoreCount: number;
|
|
2354
|
+
unusedDeps: number;
|
|
2355
|
+
}, {
|
|
2356
|
+
avgInstability: number;
|
|
2357
|
+
unusedFiles: number;
|
|
2358
|
+
layeringViolations: number;
|
|
2359
|
+
anyCount: number;
|
|
2360
|
+
tsIgnoreCount: number;
|
|
2361
|
+
unusedDeps: number;
|
|
2362
|
+
}>;
|
|
2363
|
+
}, "strip", z.ZodTypeAny, {
|
|
2364
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2365
|
+
score: number;
|
|
2366
|
+
dimensions: {
|
|
2367
|
+
architecture: {
|
|
2368
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2369
|
+
score: number;
|
|
2370
|
+
details: string[];
|
|
2371
|
+
};
|
|
2372
|
+
typescript: {
|
|
2373
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2374
|
+
score: number;
|
|
2375
|
+
details: string[];
|
|
2376
|
+
};
|
|
2377
|
+
deadCode: {
|
|
2378
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2379
|
+
score: number;
|
|
2380
|
+
details: string[];
|
|
2381
|
+
};
|
|
2382
|
+
depHygiene: {
|
|
2383
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2384
|
+
score: number;
|
|
2385
|
+
details: string[];
|
|
2386
|
+
};
|
|
2387
|
+
testCoverage: {
|
|
2388
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2389
|
+
score: number;
|
|
2390
|
+
details: string[];
|
|
2391
|
+
};
|
|
2392
|
+
};
|
|
2393
|
+
id: string;
|
|
2394
|
+
timestamp: string;
|
|
2395
|
+
git: {
|
|
2396
|
+
message: string;
|
|
2397
|
+
commit: string;
|
|
2398
|
+
branch: string;
|
|
2399
|
+
};
|
|
2400
|
+
counters: {
|
|
2401
|
+
avgInstability: number;
|
|
2402
|
+
unusedFiles: number;
|
|
2403
|
+
layeringViolations: number;
|
|
2404
|
+
anyCount: number;
|
|
2405
|
+
tsIgnoreCount: number;
|
|
2406
|
+
unusedDeps: number;
|
|
2407
|
+
};
|
|
2408
|
+
}, {
|
|
2409
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2410
|
+
score: number;
|
|
2411
|
+
dimensions: {
|
|
2412
|
+
architecture: {
|
|
2413
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2414
|
+
score: number;
|
|
2415
|
+
details: string[];
|
|
2416
|
+
};
|
|
2417
|
+
typescript: {
|
|
2418
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2419
|
+
score: number;
|
|
2420
|
+
details: string[];
|
|
2421
|
+
};
|
|
2422
|
+
deadCode: {
|
|
2423
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2424
|
+
score: number;
|
|
2425
|
+
details: string[];
|
|
2426
|
+
};
|
|
2427
|
+
depHygiene: {
|
|
2428
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2429
|
+
score: number;
|
|
2430
|
+
details: string[];
|
|
2431
|
+
};
|
|
2432
|
+
testCoverage: {
|
|
2433
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2434
|
+
score: number;
|
|
2435
|
+
details: string[];
|
|
2436
|
+
};
|
|
2437
|
+
};
|
|
2438
|
+
id: string;
|
|
2439
|
+
timestamp: string;
|
|
2440
|
+
git: {
|
|
2441
|
+
message: string;
|
|
2442
|
+
commit: string;
|
|
2443
|
+
branch: string;
|
|
2444
|
+
};
|
|
2445
|
+
counters: {
|
|
2446
|
+
avgInstability: number;
|
|
2447
|
+
unusedFiles: number;
|
|
2448
|
+
layeringViolations: number;
|
|
2449
|
+
anyCount: number;
|
|
2450
|
+
tsIgnoreCount: number;
|
|
2451
|
+
unusedDeps: number;
|
|
2452
|
+
};
|
|
2453
|
+
}>>;
|
|
2454
|
+
}, "strip", z.ZodTypeAny, {
|
|
2455
|
+
snapshots: {
|
|
2456
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2457
|
+
score: number;
|
|
2458
|
+
dimensions: {
|
|
2459
|
+
architecture: {
|
|
2460
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2461
|
+
score: number;
|
|
2462
|
+
details: string[];
|
|
2463
|
+
};
|
|
2464
|
+
typescript: {
|
|
2465
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2466
|
+
score: number;
|
|
2467
|
+
details: string[];
|
|
2468
|
+
};
|
|
2469
|
+
deadCode: {
|
|
2470
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2471
|
+
score: number;
|
|
2472
|
+
details: string[];
|
|
2473
|
+
};
|
|
2474
|
+
depHygiene: {
|
|
2475
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2476
|
+
score: number;
|
|
2477
|
+
details: string[];
|
|
2478
|
+
};
|
|
2479
|
+
testCoverage: {
|
|
2480
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2481
|
+
score: number;
|
|
2482
|
+
details: string[];
|
|
2483
|
+
};
|
|
2484
|
+
};
|
|
2485
|
+
id: string;
|
|
2486
|
+
timestamp: string;
|
|
2487
|
+
git: {
|
|
2488
|
+
message: string;
|
|
2489
|
+
commit: string;
|
|
2490
|
+
branch: string;
|
|
2491
|
+
};
|
|
2492
|
+
counters: {
|
|
2493
|
+
avgInstability: number;
|
|
2494
|
+
unusedFiles: number;
|
|
2495
|
+
layeringViolations: number;
|
|
2496
|
+
anyCount: number;
|
|
2497
|
+
tsIgnoreCount: number;
|
|
2498
|
+
unusedDeps: number;
|
|
2499
|
+
};
|
|
2500
|
+
}[];
|
|
2501
|
+
delta: {
|
|
2502
|
+
score: number;
|
|
2503
|
+
avgInstability: number;
|
|
2504
|
+
unusedFiles: number;
|
|
2505
|
+
layeringViolations: number;
|
|
2506
|
+
anyCount: number;
|
|
2507
|
+
tsIgnoreCount: number;
|
|
2508
|
+
unusedDeps: number;
|
|
2509
|
+
} | null;
|
|
2510
|
+
latest: {
|
|
2511
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2512
|
+
score: number;
|
|
2513
|
+
dimensions: {
|
|
2514
|
+
architecture: {
|
|
2515
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2516
|
+
score: number;
|
|
2517
|
+
details: string[];
|
|
2518
|
+
};
|
|
2519
|
+
typescript: {
|
|
2520
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2521
|
+
score: number;
|
|
2522
|
+
details: string[];
|
|
2523
|
+
};
|
|
2524
|
+
deadCode: {
|
|
2525
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2526
|
+
score: number;
|
|
2527
|
+
details: string[];
|
|
2528
|
+
};
|
|
2529
|
+
depHygiene: {
|
|
2530
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2531
|
+
score: number;
|
|
2532
|
+
details: string[];
|
|
2533
|
+
};
|
|
2534
|
+
testCoverage: {
|
|
2535
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2536
|
+
score: number;
|
|
2537
|
+
details: string[];
|
|
2538
|
+
};
|
|
2539
|
+
};
|
|
2540
|
+
id: string;
|
|
2541
|
+
timestamp: string;
|
|
2542
|
+
git: {
|
|
2543
|
+
message: string;
|
|
2544
|
+
commit: string;
|
|
2545
|
+
branch: string;
|
|
2546
|
+
};
|
|
2547
|
+
counters: {
|
|
2548
|
+
avgInstability: number;
|
|
2549
|
+
unusedFiles: number;
|
|
2550
|
+
layeringViolations: number;
|
|
2551
|
+
anyCount: number;
|
|
2552
|
+
tsIgnoreCount: number;
|
|
2553
|
+
unusedDeps: number;
|
|
2554
|
+
};
|
|
2555
|
+
} | null;
|
|
2556
|
+
}, {
|
|
2557
|
+
snapshots: {
|
|
2558
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2559
|
+
score: number;
|
|
2560
|
+
dimensions: {
|
|
2561
|
+
architecture: {
|
|
2562
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2563
|
+
score: number;
|
|
2564
|
+
details: string[];
|
|
2565
|
+
};
|
|
2566
|
+
typescript: {
|
|
2567
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2568
|
+
score: number;
|
|
2569
|
+
details: string[];
|
|
2570
|
+
};
|
|
2571
|
+
deadCode: {
|
|
2572
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2573
|
+
score: number;
|
|
2574
|
+
details: string[];
|
|
2575
|
+
};
|
|
2576
|
+
depHygiene: {
|
|
2577
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2578
|
+
score: number;
|
|
2579
|
+
details: string[];
|
|
2580
|
+
};
|
|
2581
|
+
testCoverage: {
|
|
2582
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2583
|
+
score: number;
|
|
2584
|
+
details: string[];
|
|
2585
|
+
};
|
|
2586
|
+
};
|
|
2587
|
+
id: string;
|
|
2588
|
+
timestamp: string;
|
|
2589
|
+
git: {
|
|
2590
|
+
message: string;
|
|
2591
|
+
commit: string;
|
|
2592
|
+
branch: string;
|
|
2593
|
+
};
|
|
2594
|
+
counters: {
|
|
2595
|
+
avgInstability: number;
|
|
2596
|
+
unusedFiles: number;
|
|
2597
|
+
layeringViolations: number;
|
|
2598
|
+
anyCount: number;
|
|
2599
|
+
tsIgnoreCount: number;
|
|
2600
|
+
unusedDeps: number;
|
|
2601
|
+
};
|
|
2602
|
+
}[];
|
|
2603
|
+
delta: {
|
|
2604
|
+
score: number;
|
|
2605
|
+
avgInstability: number;
|
|
2606
|
+
unusedFiles: number;
|
|
2607
|
+
layeringViolations: number;
|
|
2608
|
+
anyCount: number;
|
|
2609
|
+
tsIgnoreCount: number;
|
|
2610
|
+
unusedDeps: number;
|
|
2611
|
+
} | null;
|
|
2612
|
+
latest: {
|
|
2613
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2614
|
+
score: number;
|
|
2615
|
+
dimensions: {
|
|
2616
|
+
architecture: {
|
|
2617
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2618
|
+
score: number;
|
|
2619
|
+
details: string[];
|
|
2620
|
+
};
|
|
2621
|
+
typescript: {
|
|
2622
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2623
|
+
score: number;
|
|
2624
|
+
details: string[];
|
|
2625
|
+
};
|
|
2626
|
+
deadCode: {
|
|
2627
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2628
|
+
score: number;
|
|
2629
|
+
details: string[];
|
|
2630
|
+
};
|
|
2631
|
+
depHygiene: {
|
|
2632
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2633
|
+
score: number;
|
|
2634
|
+
details: string[];
|
|
2635
|
+
};
|
|
2636
|
+
testCoverage: {
|
|
2637
|
+
grade: "A" | "B" | "C" | "D" | "F";
|
|
2638
|
+
score: number;
|
|
2639
|
+
details: string[];
|
|
2640
|
+
};
|
|
2641
|
+
};
|
|
2642
|
+
id: string;
|
|
2643
|
+
timestamp: string;
|
|
2644
|
+
git: {
|
|
2645
|
+
message: string;
|
|
2646
|
+
commit: string;
|
|
2647
|
+
branch: string;
|
|
2648
|
+
};
|
|
2649
|
+
counters: {
|
|
2650
|
+
avgInstability: number;
|
|
2651
|
+
unusedFiles: number;
|
|
2652
|
+
layeringViolations: number;
|
|
2653
|
+
anyCount: number;
|
|
2654
|
+
tsIgnoreCount: number;
|
|
2655
|
+
unusedDeps: number;
|
|
2656
|
+
};
|
|
2657
|
+
} | null;
|
|
2658
|
+
}>;
|
|
2659
|
+
type HistoryResponse = z.infer<typeof HistoryResponseSchema>;
|
|
966
2660
|
|
|
967
|
-
export { type AliveReason, type BuildCheckResult, type BuildOrderRequest, BuildOrderRequestSchema, type BuildOrderResponse, BuildOrderResponseSchema, CACHE_KEYS, type CyclesRequest, CyclesRequestSchema, type CyclesResponse, CyclesResponseSchema, DEFAULT_TIMEOUTS, type DeadCodeBackupManifest, type DeadCodeOptions, type DeadCodeRemovalResult, type DeadCodeResult, type DeadFile, type DependenciesRequest, DependenciesRequestSchema, type DependenciesResponse, DependenciesResponseSchema, type DependencyStats, type DuplicateDependency, DuplicateDependencySchema, type GraphMode, GraphModeSchema, type GraphNode, GraphNodeSchema, type GraphRequest, GraphRequestSchema, type GraphResponse, GraphResponseSchema, type GraphStats, GraphStatsSchema, HEALTH_GRADES, type HealthIssue, HealthIssueSchema, type HealthRequest, HealthRequestSchema, type HealthResponse, HealthResponseSchema, type HealthScore, type Issue, type IssueSeverity, type MissingDependency, MissingDependencySchema, type PackageDeadCodeResult, type PackageInfo, type PackageStats, QUALITY_BASE_PATH, QUALITY_CACHE_PREFIX, QUALITY_ENV_VARS, QUALITY_FULL_ROUTES, QUALITY_ROUTES, type QualityRoute, type Recommendation, type RepositoryInfo, type RepositoryStats, type StaleChain, StaleChainSchema, type StalePackage, StalePackageSchema, type StaleRequest, StaleRequestSchema, type StaleResponse, StaleResponseSchema, type StatsRequest, StatsRequestSchema, type StatsResponse, StatsResponseSchema, type StatsResult, type TestRunResult, type TypeAnalysisResult, type UnusedDependency, UnusedDependencySchema, type VersionInfo, VersionInfoSchema };
|
|
2661
|
+
export { type AliveReason, type BuildCheckResult, type BuildOrderRequest, BuildOrderRequestSchema, type BuildOrderResponse, BuildOrderResponseSchema, CACHE_KEYS, CACHE_TTLS, type CouplingReport, type CouplingResponse, CouplingResponseSchema, type CyclesRequest, CyclesRequestSchema, type CyclesResponse, CyclesResponseSchema, DEFAULT_TIMEOUTS, DIMENSION_WEIGHTS, type DeadCodeBackupManifest, type DeadCodeOptions, type DeadCodeRemovalResult, type DeadCodeResponse, DeadCodeResponseSchema, type DeadCodeResult, type DeadFile, type DependenciesRequest, DependenciesRequestSchema, type DependenciesResponse, DependenciesResponseSchema, type DependencyStats, type DimensionScore, DimensionScoreSchema, type DimensionScores, DimensionScoresSchema, type DuplicateDependency, DuplicateDependencySchema, type GraphMode, GraphModeSchema, type GraphNode, GraphNodeSchema, type GraphRequest, GraphRequestSchema, type GraphResponse, GraphResponseSchema, type GraphStats, GraphStatsSchema, HEALTH_GRADES, type HealthIssue, HealthIssueSchema, type HealthRequest, HealthRequestSchema, type HealthResponse, HealthResponseSchema, type HealthScore, type HealthV2Response, HealthV2ResponseSchema, type HistoryResponse, HistoryResponseSchema, type Issue, type IssueSeverity, type KnipReport, type KnipUnusedDependency, KnipUnusedDependencySchema, type KnipUnusedExport, KnipUnusedExportSchema, type LayeringReport, type LayeringResponse, LayeringResponseSchema, type LayeringViolation, LayeringViolationSchema, MAX_SNAPSHOTS_DEFAULT, type MissingDependency, MissingDependencySchema, type PackageCoupling, PackageCouplingSchema, type PackageDeadCodeResult, type PackageInfo, type PackageStats, QUALITY_BASE_PATH, QUALITY_CACHE_PREFIX, QUALITY_ENV_VARS, QUALITY_FULL_ROUTES, QUALITY_ROUTES, type QualityKnipConfig, type QualityLayerMap, type QualityPluginConfig, type QualityRoute, type QualitySnapshot, QualitySnapshotSchema, type QualityThresholds, type Recommendation, type RepositoryInfo, type RepositoryStats, SNAPSHOT_DIR, SNAPSHOT_FILE, type SnapshotDelta, SnapshotDeltaSchema, type SnapshotHistory, type StaleChain, StaleChainSchema, type StalePackage, StalePackageSchema, type StaleRequest, StaleRequestSchema, type StaleResponse, StaleResponseSchema, type StatsRequest, StatsRequestSchema, type StatsResponse, StatsResponseSchema, type StatsResult, type TestRunResult, type TypeAnalysisResult, type UnusedDependency, UnusedDependencySchema, type VersionInfo, VersionInfoSchema, defaultQualityConfig };
|