@aiready/consistency 0.20.22 → 0.20.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +24 -23
- package/.turbo/turbo-test.log +34 -28
- package/coverage/clover.xml +452 -470
- package/coverage/coverage-final.json +7 -7
- package/coverage/index.html +26 -26
- package/coverage/src/analyzer.ts.html +126 -186
- package/coverage/src/analyzers/index.html +23 -23
- package/coverage/src/analyzers/naming-ast.ts.html +175 -169
- package/coverage/src/analyzers/naming-constants.ts.html +1 -1
- package/coverage/src/analyzers/naming-generalized.ts.html +63 -51
- package/coverage/src/analyzers/naming.ts.html +1 -1
- package/coverage/src/analyzers/patterns.ts.html +1 -1
- package/coverage/src/index.html +19 -19
- package/coverage/src/index.ts.html +1 -1
- package/coverage/src/provider.ts.html +1 -1
- package/coverage/src/scoring.ts.html +32 -32
- package/coverage/src/utils/ast-parser.ts.html +39 -39
- package/coverage/src/utils/config-loader.ts.html +1 -1
- package/coverage/src/utils/context-detector.ts.html +115 -115
- package/coverage/src/utils/index.html +1 -1
- package/coverage/src/utils/scope-tracker.ts.html +21 -21
- package/dist/chunk-YHHXE2JX.mjs +912 -0
- package/dist/cli.js +4 -1
- package/dist/cli.mjs +1 -1
- package/dist/index.js +4 -1
- package/dist/index.mjs +1 -1
- package/package.json +2 -2
- package/src/__tests__/analyzer.test.ts +52 -0
- package/src/analyzers/naming-generalized.ts +10 -6
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">90.37% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>122/135</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">62.8% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>76/121</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">100% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>25/
|
|
42
|
+
<span class='fraction'>25/25</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">90.19% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>92/102</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -304,27 +304,7 @@
|
|
|
304
304
|
<a name='L239'></a><a href='#L239'>239</a>
|
|
305
305
|
<a name='L240'></a><a href='#L240'>240</a>
|
|
306
306
|
<a name='L241'></a><a href='#L241'>241</a>
|
|
307
|
-
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
|
-
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
|
-
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
-
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
-
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
-
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
-
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
-
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
-
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
-
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
-
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
-
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
-
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
-
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
-
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
-
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
-
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
-
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
-
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
-
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
-
<a name='L262'></a><a href='#L262'>262</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
307
|
+
<a name='L242'></a><a href='#L242'>242</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
328
308
|
<span class="cline-any cline-neutral"> </span>
|
|
329
309
|
<span class="cline-any cline-neutral"> </span>
|
|
330
310
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -357,54 +337,55 @@
|
|
|
357
337
|
<span class="cline-any cline-yes">3x</span>
|
|
358
338
|
<span class="cline-any cline-yes">3x</span>
|
|
359
339
|
<span class="cline-any cline-yes">3x</span>
|
|
360
|
-
<span class="cline-any cline-yes">7x</span>
|
|
361
340
|
<span class="cline-any cline-yes">3x</span>
|
|
341
|
+
<span class="cline-any cline-yes">8x</span>
|
|
362
342
|
<span class="cline-any cline-neutral"> </span>
|
|
363
|
-
<span class="cline-any cline-yes">4x</span>
|
|
364
|
-
<span class="cline-any cline-yes">3x</span>
|
|
365
343
|
<span class="cline-any cline-neutral"> </span>
|
|
366
|
-
<span class="cline-any cline-yes">
|
|
367
|
-
<span class="cline-any cline-
|
|
368
|
-
<span class="cline-any cline-
|
|
369
|
-
<span class="cline-any cline-yes">
|
|
370
|
-
<span class="cline-any cline-yes">4x</span>
|
|
344
|
+
<span class="cline-any cline-yes">8x</span>
|
|
345
|
+
<span class="cline-any cline-neutral"> </span>
|
|
346
|
+
<span class="cline-any cline-neutral"> </span>
|
|
347
|
+
<span class="cline-any cline-yes">8x</span>
|
|
371
348
|
<span class="cline-any cline-yes">3x</span>
|
|
372
|
-
<span class="cline-any cline-yes">37x</span>
|
|
373
|
-
<span class="cline-any cline-yes">15x</span>
|
|
374
349
|
<span class="cline-any cline-neutral"> </span>
|
|
375
|
-
<span class="cline-any cline-yes">
|
|
376
|
-
<span class="cline-any cline-yes">
|
|
377
|
-
<span class="cline-any cline-yes">
|
|
350
|
+
<span class="cline-any cline-yes">5x</span>
|
|
351
|
+
<span class="cline-any cline-yes">8x</span>
|
|
352
|
+
<span class="cline-any cline-yes">38x</span>
|
|
353
|
+
<span class="cline-any cline-yes">38x</span>
|
|
378
354
|
<span class="cline-any cline-neutral"> </span>
|
|
379
|
-
<span class="cline-any cline-yes">26x</span>
|
|
380
355
|
<span class="cline-any cline-neutral"> </span>
|
|
356
|
+
<span class="cline-any cline-yes">64x</span>
|
|
357
|
+
<span class="cline-any cline-yes">27x</span>
|
|
358
|
+
<span class="cline-any cline-yes">27x</span>
|
|
381
359
|
<span class="cline-any cline-neutral"> </span>
|
|
360
|
+
<span class="cline-any cline-yes">27x</span>
|
|
382
361
|
<span class="cline-any cline-neutral"> </span>
|
|
383
|
-
<span class="cline-any cline-yes">26x</span>
|
|
384
362
|
<span class="cline-any cline-neutral"> </span>
|
|
385
363
|
<span class="cline-any cline-neutral"> </span>
|
|
386
|
-
<span class="cline-any cline-yes">
|
|
387
|
-
<span class="cline-any cline-
|
|
364
|
+
<span class="cline-any cline-yes">27x</span>
|
|
365
|
+
<span class="cline-any cline-neutral"> </span>
|
|
388
366
|
<span class="cline-any cline-neutral"> </span>
|
|
367
|
+
<span class="cline-any cline-yes">27x</span>
|
|
368
|
+
<span class="cline-any cline-yes">8x</span>
|
|
389
369
|
<span class="cline-any cline-yes">33x</span>
|
|
390
|
-
<span class="cline-any cline-yes">
|
|
391
|
-
<span class="cline-any cline-yes">
|
|
370
|
+
<span class="cline-any cline-yes">12x</span>
|
|
371
|
+
<span class="cline-any cline-yes">5x</span>
|
|
392
372
|
<span class="cline-any cline-yes">26x</span>
|
|
393
373
|
<span class="cline-any cline-neutral"> </span>
|
|
394
|
-
<span class="cline-any cline-yes">6x</span>
|
|
395
374
|
<span class="cline-any cline-neutral"> </span>
|
|
396
375
|
<span class="cline-any cline-yes">3x</span>
|
|
376
|
+
<span class="cline-any cline-yes">3x</span>
|
|
377
|
+
<span class="cline-any cline-yes">5x</span>
|
|
378
|
+
<span class="cline-any cline-yes">3x</span>
|
|
397
379
|
<span class="cline-any cline-yes">4x</span>
|
|
398
|
-
<span class="cline-any cline-yes">9x</span>
|
|
399
380
|
<span class="cline-any cline-yes">6x</span>
|
|
400
|
-
<span class="cline-any cline-neutral"> </span>
|
|
401
381
|
<span class="cline-any cline-no"> </span>
|
|
402
382
|
<span class="cline-any cline-neutral"> </span>
|
|
403
|
-
<span class="cline-any cline-
|
|
383
|
+
<span class="cline-any cline-neutral"> </span>
|
|
384
|
+
<span class="cline-any cline-yes">8x</span>
|
|
404
385
|
<span class="cline-any cline-yes">4x</span>
|
|
405
386
|
<span class="cline-any cline-neutral"> </span>
|
|
406
387
|
<span class="cline-any cline-neutral"> </span>
|
|
407
|
-
<span class="cline-any cline-yes">
|
|
388
|
+
<span class="cline-any cline-yes">6x</span>
|
|
408
389
|
<span class="cline-any cline-neutral"> </span>
|
|
409
390
|
<span class="cline-any cline-neutral"> </span>
|
|
410
391
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -412,53 +393,52 @@
|
|
|
412
393
|
<span class="cline-any cline-neutral"> </span>
|
|
413
394
|
<span class="cline-any cline-yes">7x</span>
|
|
414
395
|
<span class="cline-any cline-yes">6x</span>
|
|
415
|
-
<span class="cline-any cline-yes">4x</span>
|
|
416
396
|
<span class="cline-any cline-no"> </span>
|
|
417
397
|
<span class="cline-any cline-no"> </span>
|
|
418
|
-
<span class="cline-any cline-yes">4x</span>
|
|
419
|
-
<span class="cline-any cline-yes">6x</span>
|
|
420
|
-
<span class="cline-any cline-yes">6x</span>
|
|
421
|
-
<span class="cline-any cline-yes">9x</span>
|
|
422
398
|
<span class="cline-any cline-neutral"> </span>
|
|
399
|
+
<span class="cline-any cline-yes">5x</span>
|
|
400
|
+
<span class="cline-any cline-yes">5x</span>
|
|
423
401
|
<span class="cline-any cline-neutral"> </span>
|
|
424
402
|
<span class="cline-any cline-neutral"> </span>
|
|
403
|
+
<span class="cline-any cline-neutral"> </span>
|
|
404
|
+
<span class="cline-any cline-yes">5x</span>
|
|
425
405
|
<span class="cline-any cline-yes">3x</span>
|
|
426
|
-
<span class="cline-any cline-yes">
|
|
406
|
+
<span class="cline-any cline-yes">18x</span>
|
|
427
407
|
<span class="cline-any cline-neutral"> </span>
|
|
428
408
|
<span class="cline-any cline-neutral"> </span>
|
|
429
|
-
<span class="cline-any cline-yes">16x</span>
|
|
430
|
-
<span class="cline-any cline-yes">16x</span>
|
|
431
|
-
<span class="cline-any cline-yes">15x</span>
|
|
432
409
|
<span class="cline-any cline-neutral"> </span>
|
|
433
|
-
<span class="cline-any cline-yes">4x</span>
|
|
434
|
-
<span class="cline-any cline-yes">2x</span>
|
|
435
410
|
<span class="cline-any cline-neutral"> </span>
|
|
436
|
-
<span class="cline-any cline-yes">9x</span>
|
|
437
|
-
<span class="cline-any cline-yes">20x</span>
|
|
438
411
|
<span class="cline-any cline-neutral"> </span>
|
|
439
412
|
<span class="cline-any cline-neutral"> </span>
|
|
440
|
-
<span class="cline-any cline-yes">20x</span>
|
|
441
|
-
<span class="cline-any cline-yes">30x</span>
|
|
442
|
-
<span class="cline-any cline-yes">4x</span>
|
|
443
|
-
<span class="cline-any cline-yes">24x</span>
|
|
444
|
-
<span class="cline-any cline-yes">48x</span>
|
|
445
413
|
<span class="cline-any cline-neutral"> </span>
|
|
446
|
-
<span class="cline-any cline-yes">
|
|
414
|
+
<span class="cline-any cline-yes">5x</span>
|
|
415
|
+
<span class="cline-any cline-yes">5x</span>
|
|
416
|
+
<span class="cline-any cline-yes">7x</span>
|
|
417
|
+
<span class="cline-any cline-yes">25x</span>
|
|
418
|
+
<span class="cline-any cline-yes">8x</span>
|
|
419
|
+
<span class="cline-any cline-yes">5x</span>
|
|
420
|
+
<span class="cline-any cline-yes">20x</span>
|
|
421
|
+
<span class="cline-any cline-yes">35x</span>
|
|
422
|
+
<span class="cline-any cline-yes">3x</span>
|
|
423
|
+
<span class="cline-any cline-yes">20x</span>
|
|
424
|
+
<span class="cline-any cline-yes">44x</span>
|
|
447
425
|
<span class="cline-any cline-neutral"> </span>
|
|
448
|
-
<span class="cline-any cline-yes">24x</span>
|
|
449
|
-
<span class="cline-any cline-yes">10x</span>
|
|
450
426
|
<span class="cline-any cline-neutral"> </span>
|
|
427
|
+
<span class="cline-any cline-yes">5x</span>
|
|
428
|
+
<span class="cline-any cline-yes">25x</span>
|
|
429
|
+
<span class="cline-any cline-yes">11x</span>
|
|
451
430
|
<span class="cline-any cline-neutral"> </span>
|
|
431
|
+
<span class="cline-any cline-yes">8x</span>
|
|
452
432
|
<span class="cline-any cline-neutral"> </span>
|
|
453
|
-
<span class="cline-any cline-yes">
|
|
433
|
+
<span class="cline-any cline-yes">19x</span>
|
|
454
434
|
<span class="cline-any cline-neutral"> </span>
|
|
455
435
|
<span class="cline-any cline-neutral"> </span>
|
|
456
436
|
<span class="cline-any cline-neutral"> </span>
|
|
457
|
-
<span class="cline-any cline-yes">
|
|
437
|
+
<span class="cline-any cline-yes">8x</span>
|
|
458
438
|
<span class="cline-any cline-neutral"> </span>
|
|
459
439
|
<span class="cline-any cline-neutral"> </span>
|
|
460
|
-
<span class="cline-any cline-yes">
|
|
461
|
-
<span class="cline-any cline-yes">
|
|
440
|
+
<span class="cline-any cline-yes">38x</span>
|
|
441
|
+
<span class="cline-any cline-yes">8x</span>
|
|
462
442
|
<span class="cline-any cline-neutral"> </span>
|
|
463
443
|
<span class="cline-any cline-neutral"> </span>
|
|
464
444
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -467,92 +447,86 @@
|
|
|
467
447
|
<span class="cline-any cline-neutral"> </span>
|
|
468
448
|
<span class="cline-any cline-neutral"> </span>
|
|
469
449
|
<span class="cline-any cline-neutral"> </span>
|
|
470
|
-
<span class="cline-any cline-yes">16x</span>
|
|
471
450
|
<span class="cline-any cline-neutral"> </span>
|
|
472
451
|
<span class="cline-any cline-neutral"> </span>
|
|
473
452
|
<span class="cline-any cline-neutral"> </span>
|
|
474
453
|
<span class="cline-any cline-neutral"> </span>
|
|
475
454
|
<span class="cline-any cline-neutral"> </span>
|
|
455
|
+
<span class="cline-any cline-yes">11x</span>
|
|
476
456
|
<span class="cline-any cline-neutral"> </span>
|
|
477
457
|
<span class="cline-any cline-neutral"> </span>
|
|
478
458
|
<span class="cline-any cline-neutral"> </span>
|
|
479
459
|
<span class="cline-any cline-neutral"> </span>
|
|
480
|
-
<span class="cline-any cline-yes">9x</span>
|
|
481
460
|
<span class="cline-any cline-neutral"> </span>
|
|
482
461
|
<span class="cline-any cline-neutral"> </span>
|
|
483
|
-
<span class="cline-any cline-yes">66x</span>
|
|
484
|
-
<span class="cline-any cline-yes">75x</span>
|
|
485
462
|
<span class="cline-any cline-neutral"> </span>
|
|
463
|
+
<span class="cline-any cline-yes">66x</span>
|
|
464
|
+
<span class="cline-any cline-yes">66x</span>
|
|
465
|
+
<span class="cline-any cline-yes">6x</span>
|
|
486
466
|
<span class="cline-any cline-neutral"> </span>
|
|
487
467
|
<span class="cline-any cline-neutral"> </span>
|
|
468
|
+
<span class="cline-any cline-yes">6x</span>
|
|
469
|
+
<span class="cline-any cline-yes">18x</span>
|
|
470
|
+
<span class="cline-any cline-yes">28x</span>
|
|
488
471
|
<span class="cline-any cline-neutral"> </span>
|
|
489
|
-
<span class="cline-any cline-yes">
|
|
490
|
-
<span class="cline-any cline-yes">31x</span>
|
|
472
|
+
<span class="cline-any cline-yes">18x</span>
|
|
491
473
|
<span class="cline-any cline-neutral"> </span>
|
|
492
|
-
<span class="cline-any cline-yes">21x</span>
|
|
493
474
|
<span class="cline-any cline-neutral"> </span>
|
|
494
|
-
<span class="cline-any cline-yes">9x</span>
|
|
495
475
|
<span class="cline-any cline-neutral"> </span>
|
|
496
476
|
<span class="cline-any cline-neutral"> </span>
|
|
497
477
|
<span class="cline-any cline-neutral"> </span>
|
|
498
478
|
<span class="cline-any cline-neutral"> </span>
|
|
499
|
-
<span class="cline-any cline-yes">
|
|
479
|
+
<span class="cline-any cline-yes">9x</span>
|
|
500
480
|
<span class="cline-any cline-neutral"> </span>
|
|
501
481
|
<span class="cline-any cline-yes">3x</span>
|
|
502
482
|
<span class="cline-any cline-yes">33x</span>
|
|
503
483
|
<span class="cline-any cline-yes">3x</span>
|
|
504
484
|
<span class="cline-any cline-no"> </span>
|
|
505
|
-
<span class="cline-any cline-yes">12x</span>
|
|
506
|
-
<span class="cline-any cline-yes">3x</span>
|
|
507
|
-
<span class="cline-any cline-neutral"> </span>
|
|
508
|
-
<span class="cline-any cline-neutral"> </span>
|
|
509
|
-
<span class="cline-any cline-yes">33x</span>
|
|
510
|
-
<span class="cline-any cline-yes">3x</span>
|
|
511
|
-
<span class="cline-any cline-yes">9x</span>
|
|
512
485
|
<span class="cline-any cline-neutral"> </span>
|
|
513
486
|
<span class="cline-any cline-neutral"> </span>
|
|
514
487
|
<span class="cline-any cline-neutral"> </span>
|
|
515
488
|
<span class="cline-any cline-neutral"> </span>
|
|
489
|
+
<span class="cline-any cline-yes">33x</span>
|
|
516
490
|
<span class="cline-any cline-yes">9x</span>
|
|
517
|
-
<span class="cline-any cline-
|
|
518
|
-
<span class="cline-any cline-yes">12x</span>
|
|
519
|
-
<span class="cline-any cline-yes">12x</span>
|
|
520
|
-
<span class="cline-any cline-yes">9x</span>
|
|
491
|
+
<span class="cline-any cline-no"> </span>
|
|
521
492
|
<span class="cline-any cline-neutral"> </span>
|
|
522
493
|
<span class="cline-any cline-neutral"> </span>
|
|
523
494
|
<span class="cline-any cline-neutral"> </span>
|
|
524
495
|
<span class="cline-any cline-neutral"> </span>
|
|
525
|
-
<span class="cline-any cline-yes">9x</span>
|
|
526
|
-
<span class="cline-any cline-yes">9x</span>
|
|
527
|
-
<span class="cline-any cline-yes">9x</span>
|
|
528
496
|
<span class="cline-any cline-neutral"> </span>
|
|
529
|
-
<span class="cline-any cline-
|
|
530
|
-
<span class="cline-any cline-
|
|
531
|
-
<span class="cline-any cline-neutral"> </span>
|
|
532
|
-
<span class="cline-any cline-yes">9x</span>
|
|
497
|
+
<span class="cline-any cline-yes">3x</span>
|
|
498
|
+
<span class="cline-any cline-yes">6x</span>
|
|
533
499
|
<span class="cline-any cline-no"> </span>
|
|
534
500
|
<span class="cline-any cline-no"> </span>
|
|
501
|
+
<span class="cline-any cline-yes">6x</span>
|
|
502
|
+
<span class="cline-any cline-yes">6x</span>
|
|
503
|
+
<span class="cline-any cline-yes">6x</span>
|
|
504
|
+
<span class="cline-any cline-yes">9x</span>
|
|
505
|
+
<span class="cline-any cline-yes">6x</span>
|
|
506
|
+
<span class="cline-any cline-yes">6x</span>
|
|
507
|
+
<span class="cline-any cline-yes">6x</span>
|
|
535
508
|
<span class="cline-any cline-neutral"> </span>
|
|
536
509
|
<span class="cline-any cline-neutral"> </span>
|
|
537
|
-
<span class="cline-any cline-no"> </span>
|
|
538
|
-
<span class="cline-any cline-yes">3x</span>
|
|
539
|
-
<span class="cline-any cline-no"> </span>
|
|
540
|
-
<span class="cline-any cline-yes">3x</span>
|
|
541
|
-
<span class="cline-any cline-yes">3x</span>
|
|
542
510
|
<span class="cline-any cline-neutral"> </span>
|
|
543
511
|
<span class="cline-any cline-neutral"> </span>
|
|
544
|
-
<span class="cline-any cline-yes">
|
|
512
|
+
<span class="cline-any cline-yes">6x</span>
|
|
513
|
+
<span class="cline-any cline-yes">6x</span>
|
|
514
|
+
<span class="cline-any cline-yes">6x</span>
|
|
545
515
|
<span class="cline-any cline-neutral"> </span>
|
|
546
516
|
<span class="cline-any cline-neutral"> </span>
|
|
547
517
|
<span class="cline-any cline-neutral"> </span>
|
|
548
518
|
<span class="cline-any cline-neutral"> </span>
|
|
549
519
|
<span class="cline-any cline-neutral"> </span>
|
|
520
|
+
<span class="cline-any cline-yes">3x</span>
|
|
521
|
+
<span class="cline-any cline-yes">3x</span>
|
|
522
|
+
<span class="cline-any cline-no"> </span>
|
|
523
|
+
<span class="cline-any cline-no"> </span>
|
|
524
|
+
<span class="cline-any cline-yes">3x</span>
|
|
550
525
|
<span class="cline-any cline-neutral"> </span>
|
|
551
526
|
<span class="cline-any cline-neutral"> </span>
|
|
552
527
|
<span class="cline-any cline-neutral"> </span>
|
|
553
528
|
<span class="cline-any cline-neutral"> </span>
|
|
554
529
|
<span class="cline-any cline-neutral"> </span>
|
|
555
|
-
<span class="cline-any cline-no"> </span>
|
|
556
530
|
<span class="cline-any cline-neutral"> </span>
|
|
557
531
|
<span class="cline-any cline-neutral"> </span>
|
|
558
532
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -562,28 +536,14 @@
|
|
|
562
536
|
<span class="cline-any cline-neutral"> </span>
|
|
563
537
|
<span class="cline-any cline-neutral"> </span>
|
|
564
538
|
<span class="cline-any cline-neutral"> </span>
|
|
565
|
-
<span class="cline-any cline-yes">6x</span>
|
|
566
|
-
<span class="cline-any cline-yes">6x</span>
|
|
567
|
-
<span class="cline-any cline-yes">9x</span>
|
|
568
|
-
<span class="cline-any cline-yes">9x</span>
|
|
569
539
|
<span class="cline-any cline-neutral"> </span>
|
|
570
540
|
<span class="cline-any cline-no"> </span>
|
|
571
|
-
<span class="cline-any cline-no"> </span>
|
|
572
541
|
<span class="cline-any cline-neutral"> </span>
|
|
573
|
-
<span class="cline-any cline-yes">2x</span>
|
|
574
|
-
<span class="cline-any cline-yes">2x</span>
|
|
575
542
|
<span class="cline-any cline-neutral"> </span>
|
|
576
|
-
<span class="cline-any cline-yes">7x</span>
|
|
577
|
-
<span class="cline-any cline-yes">7x</span>
|
|
578
543
|
<span class="cline-any cline-neutral"> </span>
|
|
579
|
-
<span class="cline-any cline-no"> </span>
|
|
580
|
-
<span class="cline-any cline-no"> </span>
|
|
581
|
-
<span class="cline-any cline-neutral"> </span>
|
|
582
|
-
<span class="cline-any cline-no"> </span>
|
|
583
544
|
<span class="cline-any cline-neutral"> </span>
|
|
584
545
|
<span class="cline-any cline-neutral"> </span>
|
|
585
546
|
<span class="cline-any cline-neutral"> </span>
|
|
586
|
-
<span class="cline-any cline-yes">6x</span>
|
|
587
547
|
<span class="cline-any cline-neutral"> </span>
|
|
588
548
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import {
|
|
589
549
|
scanFiles,
|
|
@@ -600,6 +560,7 @@ import type {
|
|
|
600
560
|
import { analyzeNamingAST } from './analyzers/naming-ast';
|
|
601
561
|
import { analyzeNamingGeneralized } from './analyzers/naming-generalized';
|
|
602
562
|
import { analyzePatterns } from './analyzers/patterns';
|
|
563
|
+
import { calculateConsistencyScore as calculateConsistencyScoreFromScoring } from './scoring';
|
|
603
564
|
|
|
604
565
|
/**
|
|
605
566
|
* Main consistency analyzer that orchestrates all analysis types.
|
|
@@ -615,10 +576,10 @@ export async function analyzeConsistency(
|
|
|
615
576
|
const {
|
|
616
577
|
checkNaming = true,
|
|
617
578
|
checkPatterns = true,
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
...scanOptions<span class="branch-
|
|
621
|
-
} = options
|
|
579
|
+
<span class="missing-if-branch" title="else path not taken" >E</span> checkArchitecture = false, // Not implemented yet
|
|
580
|
+
minSeverity = Severity.Info,<span class="branch-1 cbranch-no" title="branch not covered" ></span>
|
|
581
|
+
...scanOptions<span class="branch-0 cbranch-no" title="branch not covered" ></span>
|
|
582
|
+
} = options;
|
|
622
583
|
|
|
623
584
|
// Mark intentionally-unused option to avoid lint warnings
|
|
624
585
|
void checkArchitecture;
|
|
@@ -658,8 +619,8 @@ export async function analyzeConsistency(
|
|
|
658
619
|
<span class="branch-3 cbranch-no" title="branch not covered" > 'unknown';</span>
|
|
659
620
|
if (!fileIssuesMap.has(fileName)) fileIssuesMap.set(fileName, []);
|
|
660
621
|
fileIssuesMap.get(fileName)!.push(issue as unknown as ConsistencyIssue);
|
|
661
|
-
}
|
|
662
|
-
|
|
622
|
+
}<span class="cstat-no" title="statement not covered" ></span>
|
|
623
|
+
|
|
663
624
|
// Process pattern issues
|
|
664
625
|
for (const issue of patternIssues) {
|
|
665
626
|
if (!shouldIncludeSeverity(issue.severity, minSeverity)) continue;
|
|
@@ -673,15 +634,19 @@ export async function analyzeConsistency(
|
|
|
673
634
|
: <span class="branch-1 cbranch-no" title="branch not covered" >'unknown');</span>
|
|
674
635
|
if (!fileIssuesMap.has(fileName)) fileIssuesMap.set(fileName, []);
|
|
675
636
|
fileIssuesMap.get(fileName)!.push(issue as unknown as ConsistencyIssue);
|
|
676
|
-
}
|
|
637
|
+
}<span class="cstat-no" title="statement not covered" ></span>
|
|
677
638
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
678
|
-
//
|
|
639
|
+
// Build final results
|
|
679
640
|
for (const [fileName, issues] of fileIssuesMap.entries()) {
|
|
641
|
+
const scoreResult = calculateConsistencyScoreFromScoring(
|
|
642
|
+
issues,
|
|
643
|
+
filePaths.length
|
|
644
|
+
);
|
|
680
645
|
results.push({
|
|
681
646
|
fileName,
|
|
682
647
|
issues: issues.map((i) => transformToIssue(i)),
|
|
683
648
|
metrics: {
|
|
684
|
-
consistencyScore:
|
|
649
|
+
consistencyScore: scoreResult.score / 100,
|
|
685
650
|
},
|
|
686
651
|
});
|
|
687
652
|
}
|
|
@@ -719,7 +684,7 @@ export async function analyzeConsistency(
|
|
|
719
684
|
|
|
720
685
|
/**
|
|
721
686
|
* Check if an issue severity meets the minimum threshold.
|
|
722
|
-
|
|
687
|
+
*
|
|
723
688
|
* @param severity - The severity of the issue.
|
|
724
689
|
* @param minSeverity - The minimum severity threshold.
|
|
725
690
|
* @returns True if severity is greater than or equal to minSeverity.
|
|
@@ -754,53 +719,53 @@ function getIssueType(type: string | undefined): IssueType {
|
|
|
754
719
|
|
|
755
720
|
return typeMap[type] || <span class="branch-1 cbranch-no" title="branch not covered" >IssueType.NamingInconsistency;</span>
|
|
756
721
|
}
|
|
757
|
-
|
|
722
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>
|
|
758
723
|
/**
|
|
759
|
-
*
|
|
760
|
-
|
|
724
|
+
* T<span class="missing-if-branch" title="if path not taken" >I</span>ransform NamingIssue or PatternIssue to the required Issue format.
|
|
725
|
+
*<span class="cstat-no" title="statement not covered" ></span>
|
|
761
726
|
* @param i - The raw issue object to transform.
|
|
762
|
-
|
|
727
|
+
* @returns Standardized Issue object.
|
|
763
728
|
*/
|
|
764
|
-
|
|
765
|
-
//
|
|
766
|
-
if (i.message && i.location) {
|
|
767
|
-
|
|
729
|
+
function transformToIssue(i: any): Issue {
|
|
730
|
+
// If already has message and location, return as is
|
|
731
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if<span class="missing-if-branch" title="if path not taken" >I</span> (i.message && i.location) {
|
|
732
|
+
<span class="cstat-no" title="statement not covered" > re<span class="cstat-no" title="statement not covered" >turn {</span></span>
|
|
768
733
|
type: getIssueType(i.type),
|
|
769
734
|
severity: i.severity as Severity,
|
|
770
735
|
message: i.message,
|
|
771
|
-
|
|
736
|
+
location: i.location,
|
|
772
737
|
suggestion: i.suggestion,
|
|
773
|
-
|
|
738
|
+
<span class="missing-if-branch" title="if path not taken" >I</span> };
|
|
774
739
|
}
|
|
775
|
-
|
|
776
|
-
//
|
|
740
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
741
|
+
// H<span class="cstat-no" title="statement not covered" >andle NamingIssue format (has file, line, column, identifier, suggestion)</span>
|
|
777
742
|
<span class="missing-if-branch" title="else path not taken" >E</span>if (i.identifier || i.type) {
|
|
778
|
-
|
|
743
|
+
const line = i.line || 1;
|
|
779
744
|
const column = i.column || 1;
|
|
780
|
-
|
|
745
|
+
return {
|
|
781
746
|
type: getIssueType(i.type),
|
|
782
|
-
|
|
747
|
+
<span class="missing-if-branch" title="else path not taken" >E</span> severity: i.severity as Severity,
|
|
783
748
|
message: i.suggestion
|
|
784
749
|
? `Naming issue: ${i.suggestion}`
|
|
785
750
|
: `Naming issue for '${i.identifier || 'unknown'}'`,
|
|
786
751
|
location: {
|
|
787
|
-
|
|
752
|
+
file: i.file || i.fileName || '',
|
|
788
753
|
line,
|
|
789
|
-
|
|
754
|
+
<span class="missing-if-branch" title="else path not taken" >E</span> column,
|
|
790
755
|
endLine: line,
|
|
791
756
|
endColumn: column + (i.identifier?.length || 10),
|
|
792
757
|
},
|
|
793
758
|
suggestion: i.suggestion,
|
|
794
|
-
|
|
795
|
-
}
|
|
796
|
-
|
|
759
|
+
};
|
|
760
|
+
}
|
|
761
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>
|
|
797
762
|
// Handle PatternIssue format (has description, files)
|
|
798
|
-
<span class="cstat-no" title="statement not covered" > if (i.description || i.files) {</span>
|
|
799
|
-
const fileName =
|
|
763
|
+
<span class="cstat-no" title="statement not covered" > if (i.description || <span class="branch-1 cbranch-no" title="branch not covered" >i.files) {</span></span>
|
|
764
|
+
const fileName = <span class="cstat-no" title="statement not covered" >Array.isArray(i.files) ? i.files[0] : i.file || '';</span>
|
|
800
765
|
<span class="cstat-no" title="statement not covered" > return {</span>
|
|
801
|
-
|
|
766
|
+
type: getIssueType(i.type),
|
|
802
767
|
severity: i.severity as Severity,
|
|
803
|
-
message: i.description ||
|
|
768
|
+
message: i.description || 'Pattern inconsistency found',
|
|
804
769
|
location: {
|
|
805
770
|
file: fileName,
|
|
806
771
|
line: 1,
|
|
@@ -821,31 +786,6 @@ func<span class="missing-if-branch" title="if path not taken" >I</span>tion tran
|
|
|
821
786
|
suggestion: i.suggestion,
|
|
822
787
|
};
|
|
823
788
|
}
|
|
824
|
-
|
|
825
|
-
function calculateConsistencyScore(issues: ConsistencyIssue[]): number {
|
|
826
|
-
let totalWeight = 0;
|
|
827
|
-
for (const issue of issues) {
|
|
828
|
-
const val = getSeverityLevel(issue.severity);
|
|
829
|
-
switch (val) {
|
|
830
|
-
<span class="branch-0 cbranch-no" title="branch not covered" > case 4:</span>
|
|
831
|
-
<span class="cstat-no" title="statement not covered" > totalWeight += 10;</span>
|
|
832
|
-
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
833
|
-
case 3:
|
|
834
|
-
totalWeight += 5;
|
|
835
|
-
break;
|
|
836
|
-
case 2:
|
|
837
|
-
totalWeight += 2;
|
|
838
|
-
break;
|
|
839
|
-
<span class="branch-3 cbranch-no" title="branch not covered" > case 1:</span>
|
|
840
|
-
<span class="cstat-no" title="statement not covered" > totalWeight += 1;</span>
|
|
841
|
-
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
842
|
-
<span class="branch-4 cbranch-no" title="branch not covered" > default:</span>
|
|
843
|
-
<span class="cstat-no" title="statement not covered" > totalWeight += 1;</span>
|
|
844
|
-
}
|
|
845
|
-
}
|
|
846
|
-
// Score from 0-1, where 1 is perfect
|
|
847
|
-
return Math.max(0, 1 - totalWeight / 100);
|
|
848
|
-
}
|
|
849
789
|
</pre></td></tr></table></pre>
|
|
850
790
|
|
|
851
791
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -853,7 +793,7 @@ function calculateConsistencyScore(issues: ConsistencyIssue[]): number {
|
|
|
853
793
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
854
794
|
Code coverage generated by
|
|
855
795
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
856
|
-
at 2026-03-
|
|
796
|
+
at 2026-03-24T11:21:03.934Z
|
|
857
797
|
</div>
|
|
858
798
|
<script src="../prettify.js"></script>
|
|
859
799
|
<script>
|