@aiready/context-analyzer 0.21.26 → 0.21.27

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.
Files changed (78) hide show
  1. package/.turbo/turbo-build.log +32 -25
  2. package/.turbo/turbo-test.log +51 -87
  3. package/coverage/clover.xml +392 -1878
  4. package/coverage/coverage-final.json +15 -19
  5. package/coverage/index.html +48 -63
  6. package/coverage/src/analyzers/index.html +21 -21
  7. package/coverage/src/analyzers/python-context.ts.html +96 -96
  8. package/coverage/src/ast-utils.ts.html +34 -109
  9. package/coverage/src/classifier.ts.html +104 -104
  10. package/coverage/src/classify/classification-patterns.ts.html +1 -1
  11. package/coverage/src/classify/file-classifiers.ts.html +1 -1
  12. package/coverage/src/classify/index.html +1 -1
  13. package/coverage/src/cluster-detector.ts.html +72 -72
  14. package/coverage/src/defaults.ts.html +1 -1
  15. package/coverage/src/graph-builder.ts.html +131 -131
  16. package/coverage/src/index.html +101 -116
  17. package/coverage/src/index.ts.html +2 -2
  18. package/coverage/src/issue-analyzer.ts.html +32 -83
  19. package/coverage/src/mapper.ts.html +20 -2
  20. package/coverage/src/metrics.ts.html +127 -130
  21. package/coverage/src/orchestrator.ts.html +13 -13
  22. package/coverage/src/provider.ts.html +19 -19
  23. package/coverage/src/remediation.ts.html +59 -59
  24. package/coverage/src/report/console-report.ts.html +2 -2
  25. package/coverage/src/report/html-report.ts.html +60 -84
  26. package/coverage/src/report/index.html +7 -7
  27. package/coverage/src/report/interactive-setup.ts.html +1 -1
  28. package/coverage/src/scoring.ts.html +62 -62
  29. package/coverage/src/semantic/co-usage.ts.html +1 -1
  30. package/coverage/src/semantic/consolidation.ts.html +1 -1
  31. package/coverage/src/semantic/domain-inference.ts.html +1 -1
  32. package/coverage/src/semantic/index.html +1 -1
  33. package/coverage/src/semantic/type-graph.ts.html +1 -1
  34. package/coverage/src/summary.ts.html +67 -67
  35. package/coverage/src/types.ts.html +1 -1
  36. package/coverage/src/utils/dependency-graph-utils.ts.html +41 -41
  37. package/coverage/src/utils/index.html +21 -21
  38. package/coverage/src/utils/string-utils.ts.html +1 -1
  39. package/dist/chunk-22ZO4EKZ.mjs +1297 -0
  40. package/dist/chunk-4U4LDWGF.mjs +360 -0
  41. package/dist/chunk-BA7QGUHN.mjs +1722 -0
  42. package/dist/chunk-BCEZGRXI.mjs +1297 -0
  43. package/dist/chunk-BQCISA2F.mjs +91 -0
  44. package/dist/chunk-EMYD7NS6.mjs +137 -0
  45. package/dist/chunk-EWFR366Y.mjs +1740 -0
  46. package/dist/chunk-FO6YT6RG.mjs +1751 -0
  47. package/dist/chunk-J3SZQZNU.mjs +221 -0
  48. package/dist/chunk-OZE3FVZT.mjs +1089 -0
  49. package/dist/chunk-WHB7QI7N.mjs +91 -0
  50. package/dist/cli-action-CXIHOVAC.mjs +95 -0
  51. package/dist/cli-action-SA7SCYNV.mjs +95 -0
  52. package/dist/cli-action-YAJOJCXJ.mjs +95 -0
  53. package/dist/cli.js +688 -566
  54. package/dist/cli.mjs +4 -88
  55. package/dist/index.js +889 -773
  56. package/dist/index.mjs +21 -14
  57. package/dist/orchestrator-3L3NAZYP.mjs +10 -0
  58. package/dist/orchestrator-MONOZHVW.mjs +10 -0
  59. package/dist/orchestrator-ZR7JSKWI.mjs +10 -0
  60. package/dist/summary-7PZVW72O.mjs +7 -0
  61. package/dist/summary-LKUCJAIS.mjs +7 -0
  62. package/package.json +2 -2
  63. package/src/__tests__/analyzer.test.ts +1 -1
  64. package/src/__tests__/enhanced-cohesion.test.ts +4 -1
  65. package/src/__tests__/orchestrator.test.ts +19 -4
  66. package/src/__tests__/python-context.test.ts +6 -0
  67. package/src/__tests__/report/html-report.test.ts +8 -2
  68. package/src/ast-utils.ts +1 -26
  69. package/src/cli-definition.ts +4 -2
  70. package/src/issue-analyzer.ts +4 -19
  71. package/src/metrics.ts +1 -2
  72. package/src/provider.ts +4 -4
  73. package/src/report/html-report.ts +43 -59
  74. package/coverage/dist/chunk-64U3PNO3.mjs.html +0 -367
  75. package/coverage/dist/chunk-J3MUOWHC.mjs.html +0 -5326
  76. package/coverage/dist/index.html +0 -146
  77. package/coverage/dist/index.mjs.html +0 -1396
  78. package/coverage/src/analyzer.ts.html +0 -88
@@ -23,9 +23,9 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">65.9% </span>
26
+ <span class="strong">64.28% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>58/88</span>
28
+ <span class='fraction'>54/84</span>
29
29
  </div>
30
30
 
31
31
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">65.11% </span>
47
+ <span class="strong">64.28% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>56/86</span>
49
+ <span class='fraction'>54/84</span>
50
50
  </div>
51
51
 
52
52
 
@@ -99,13 +99,13 @@
99
99
  <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
100
100
  </td>
101
101
  <td data-value="100" class="pct high">100%</td>
102
- <td data-value="17" class="abs high">17/17</td>
102
+ <td data-value="13" class="abs high">13/13</td>
103
103
  <td data-value="100" class="pct high">100%</td>
104
104
  <td data-value="8" class="abs high">8/8</td>
105
105
  <td data-value="100" class="pct high">100%</td>
106
106
  <td data-value="3" class="abs high">3/3</td>
107
107
  <td data-value="100" class="pct high">100%</td>
108
- <td data-value="15" class="abs high">15/15</td>
108
+ <td data-value="13" class="abs high">13/13</td>
109
109
  </tr>
110
110
 
111
111
  <tr>
@@ -131,7 +131,7 @@
131
131
  <div class='footer quiet pad2 space-top1 center small'>
132
132
  Code coverage generated by
133
133
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
134
- at 2026-03-21T12:52:37.698Z
134
+ at 2026-03-24T11:20:59.666Z
135
135
  </div>
136
136
  <script src="../../prettify.js"></script>
137
137
  <script>
@@ -358,7 +358,7 @@ export async function <span class="fstat-no" title="function not covered" >runIn
358
358
  <div class='footer quiet pad2 space-top1 center small'>
359
359
  Code coverage generated by
360
360
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
361
- at 2026-03-21T12:52:37.698Z
361
+ at 2026-03-24T11:20:59.666Z
362
362
  </div>
363
363
  <script src="../../prettify.js"></script>
364
364
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">98.13% </span>
26
+ <span class="strong">98.3% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>105/107</span>
28
+ <span class='fraction'>58/59</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">95.28% </span>
33
+ <span class="strong">91.83% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>101/106</span>
35
+ <span class='fraction'>45/49</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">75% </span>
40
+ <span class="strong">50% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>3/4</span>
42
+ <span class='fraction'>1/2</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">97.93% </span>
47
+ <span class="strong">98.3% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>95/97</span>
49
+ <span class='fraction'>58/59</span>
50
50
  </div>
51
51
 
52
52
 
@@ -359,44 +359,43 @@
359
359
  <span class="cline-any cline-yes">12x</span>
360
360
  <span class="cline-any cline-yes">12x</span>
361
361
  <span class="cline-any cline-yes">12x</span>
362
- <span class="cline-any cline-yes">16x</span>
363
362
  <span class="cline-any cline-yes">12x</span>
364
363
  <span class="cline-any cline-yes">12x</span>
365
364
  <span class="cline-any cline-yes">12x</span>
366
- <span class="cline-any cline-yes">16x</span>
367
- <span class="cline-any cline-yes">28x</span>
365
+ <span class="cline-any cline-yes">12x</span>
366
+ <span class="cline-any cline-neutral">&nbsp;</span>
367
+ <span class="cline-any cline-yes">12x</span>
368
368
  <span class="cline-any cline-yes">12x</span>
369
369
  <span class="cline-any cline-yes">12x</span>
370
370
  <span class="cline-any cline-neutral">&nbsp;</span>
371
- <span class="cline-any cline-yes">16x</span>
372
371
  <span class="cline-any cline-neutral">&nbsp;</span>
373
372
  <span class="cline-any cline-neutral">&nbsp;</span>
374
- <span class="cline-any cline-yes">16x</span>
375
373
  <span class="cline-any cline-neutral">&nbsp;</span>
376
374
  <span class="cline-any cline-neutral">&nbsp;</span>
377
375
  <span class="cline-any cline-neutral">&nbsp;</span>
378
376
  <span class="cline-any cline-neutral">&nbsp;</span>
379
- <span class="cline-any cline-yes">16x</span>
380
- <span class="cline-any cline-yes">16x</span>
381
377
  <span class="cline-any cline-neutral">&nbsp;</span>
382
378
  <span class="cline-any cline-neutral">&nbsp;</span>
383
- <span class="cline-any cline-yes">16x</span>
384
379
  <span class="cline-any cline-neutral">&nbsp;</span>
385
380
  <span class="cline-any cline-neutral">&nbsp;</span>
386
381
  <span class="cline-any cline-neutral">&nbsp;</span>
387
382
  <span class="cline-any cline-neutral">&nbsp;</span>
388
- <span class="cline-any cline-yes">16x</span>
389
- <span class="cline-any cline-yes">16x</span>
390
- <span class="cline-any cline-yes">2x</span>
391
383
  <span class="cline-any cline-neutral">&nbsp;</span>
392
384
  <span class="cline-any cline-neutral">&nbsp;</span>
393
385
  <span class="cline-any cline-neutral">&nbsp;</span>
394
- <span class="cline-any cline-yes">16x</span>
395
- <span class="cline-any cline-yes">16x</span>
396
- <span class="cline-any cline-yes">16x</span>
386
+ <span class="cline-any cline-neutral">&nbsp;</span>
387
+ <span class="cline-any cline-neutral">&nbsp;</span>
388
+ <span class="cline-any cline-neutral">&nbsp;</span>
389
+ <span class="cline-any cline-neutral">&nbsp;</span>
390
+ <span class="cline-any cline-neutral">&nbsp;</span>
391
+ <span class="cline-any cline-neutral">&nbsp;</span>
392
+ <span class="cline-any cline-neutral">&nbsp;</span>
393
+ <span class="cline-any cline-neutral">&nbsp;</span>
397
394
  <span class="cline-any cline-neutral">&nbsp;</span>
398
395
  <span class="cline-any cline-yes">16x</span>
399
- <span class="cline-any cline-yes">16x</span>
396
+ <span class="cline-any cline-neutral">&nbsp;</span>
397
+ <span class="cline-any cline-neutral">&nbsp;</span>
398
+ <span class="cline-any cline-neutral">&nbsp;</span>
400
399
  <span class="cline-any cline-yes">16x</span>
401
400
  <span class="cline-any cline-neutral">&nbsp;</span>
402
401
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -406,7 +405,8 @@
406
405
  <span class="cline-any cline-neutral">&nbsp;</span>
407
406
  <span class="cline-any cline-neutral">&nbsp;</span>
408
407
  <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-yes">32x</span>
408
+ <span class="cline-any cline-neutral">&nbsp;</span>
409
+ <span class="cline-any cline-yes">16x</span>
410
410
  <span class="cline-any cline-neutral">&nbsp;</span>
411
411
  <span class="cline-any cline-neutral">&nbsp;</span>
412
412
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -416,107 +416,107 @@
416
416
  <span class="cline-any cline-neutral">&nbsp;</span>
417
417
  <span class="cline-any cline-neutral">&nbsp;</span>
418
418
  <span class="cline-any cline-yes">16x</span>
419
- <span class="cline-any cline-yes">18x</span>
420
419
  <span class="cline-any cline-neutral">&nbsp;</span>
421
420
  <span class="cline-any cline-neutral">&nbsp;</span>
422
421
  <span class="cline-any cline-neutral">&nbsp;</span>
423
422
  <span class="cline-any cline-neutral">&nbsp;</span>
424
423
  <span class="cline-any cline-neutral">&nbsp;</span>
425
424
  <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-yes">16x</span>
427
- <span class="cline-any cline-yes">6x</span>
428
- <span class="cline-any cline-yes">22x</span>
429
425
  <span class="cline-any cline-neutral">&nbsp;</span>
430
426
  <span class="cline-any cline-neutral">&nbsp;</span>
431
427
  <span class="cline-any cline-neutral">&nbsp;</span>
432
428
  <span class="cline-any cline-yes">16x</span>
433
429
  <span class="cline-any cline-neutral">&nbsp;</span>
434
- <span class="cline-any cline-yes">16x</span>
435
- <span class="cline-any cline-yes">3x</span>
436
430
  <span class="cline-any cline-neutral">&nbsp;</span>
437
431
  <span class="cline-any cline-neutral">&nbsp;</span>
438
432
  <span class="cline-any cline-yes">16x</span>
439
433
  <span class="cline-any cline-neutral">&nbsp;</span>
440
434
  <span class="cline-any cline-neutral">&nbsp;</span>
441
435
  <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-neutral">&nbsp;</span>
437
+ <span class="cline-any cline-neutral">&nbsp;</span>
442
438
  <span class="cline-any cline-yes">16x</span>
443
- <span class="cline-any cline-yes">5x</span>
444
439
  <span class="cline-any cline-neutral">&nbsp;</span>
445
440
  <span class="cline-any cline-neutral">&nbsp;</span>
446
- <span class="cline-any cline-yes">21x</span>
441
+ <span class="cline-any cline-neutral">&nbsp;</span>
442
+ <span class="cline-any cline-neutral">&nbsp;</span>
443
+ <span class="cline-any cline-neutral">&nbsp;</span>
444
+ <span class="cline-any cline-neutral">&nbsp;</span>
445
+ <span class="cline-any cline-neutral">&nbsp;</span>
446
+ <span class="cline-any cline-yes">16x</span>
447
447
  <span class="cline-any cline-yes">16x</span>
448
448
  <span class="cline-any cline-neutral">&nbsp;</span>
449
449
  <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-yes">32x</span>
451
450
  <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-yes">18x</span>
453
- <span class="cline-any cline-yes">1x</span>
451
+ <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-yes">2x</span>
454
453
  <span class="cline-any cline-neutral">&nbsp;</span>
455
454
  <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-yes">32x</span>
457
- <span class="cline-any cline-yes">1x</span>
455
+ <span class="cline-any cline-neutral">&nbsp;</span>
456
+ <span class="cline-any cline-yes">16x</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
458
  <span class="cline-any cline-neutral">&nbsp;</span>
459
459
  <span class="cline-any cline-neutral">&nbsp;</span>
460
460
  <span class="cline-any cline-neutral">&nbsp;</span>
461
461
  <span class="cline-any cline-yes">16x</span>
462
462
  <span class="cline-any cline-neutral">&nbsp;</span>
463
463
  <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-neutral">&nbsp;</span>
464
465
  <span class="cline-any cline-yes">16x</span>
465
- <span class="cline-any cline-yes">32x</span>
466
466
  <span class="cline-any cline-neutral">&nbsp;</span>
467
467
  <span class="cline-any cline-yes">16x</span>
468
468
  <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-yes">17x</span>
470
469
  <span class="cline-any cline-neutral">&nbsp;</span>
471
470
  <span class="cline-any cline-neutral">&nbsp;</span>
472
471
  <span class="cline-any cline-neutral">&nbsp;</span>
473
472
  <span class="cline-any cline-neutral">&nbsp;</span>
474
473
  <span class="cline-any cline-neutral">&nbsp;</span>
475
474
  <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-yes">16x</span>
477
- <span class="cline-any cline-yes">19x</span>
478
475
  <span class="cline-any cline-neutral">&nbsp;</span>
479
476
  <span class="cline-any cline-neutral">&nbsp;</span>
480
477
  <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-yes">19x</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
482
  <span class="cline-any cline-neutral">&nbsp;</span>
483
483
  <span class="cline-any cline-neutral">&nbsp;</span>
484
484
  <span class="cline-any cline-neutral">&nbsp;</span>
485
485
  <span class="cline-any cline-neutral">&nbsp;</span>
486
486
  <span class="cline-any cline-neutral">&nbsp;</span>
487
487
  <span class="cline-any cline-yes">16x</span>
488
- <span class="cline-any cline-yes">18x</span>
489
- <span class="cline-any cline-yes">18x</span>
488
+ <span class="cline-any cline-yes">2x</span>
489
+ <span class="cline-any cline-neutral">&nbsp;</span>
490
490
  <span class="cline-any cline-neutral">&nbsp;</span>
491
491
  <span class="cline-any cline-neutral">&nbsp;</span>
492
492
  <span class="cline-any cline-neutral">&nbsp;</span>
493
493
  <span class="cline-any cline-neutral">&nbsp;</span>
494
494
  <span class="cline-any cline-neutral">&nbsp;</span>
495
495
  <span class="cline-any cline-yes">16x</span>
496
- <span class="cline-any cline-yes">22x</span>
497
- <span class="cline-any cline-yes">22x</span>
496
+ <span class="cline-any cline-yes">6x</span>
497
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
499
  <span class="cline-any cline-neutral">&nbsp;</span>
499
500
  <span class="cline-any cline-neutral">&nbsp;</span>
500
501
  <span class="cline-any cline-neutral">&nbsp;</span>
501
502
  <span class="cline-any cline-neutral">&nbsp;</span>
502
- <span class="cline-any cline-yes">16x</span>
503
503
  <span class="cline-any cline-yes">16x</span>
504
504
  <span class="cline-any cline-yes">3x</span>
505
505
  <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-yes">19x</span>
507
506
  <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-yes">16x</span>
509
507
  <span class="cline-any cline-neutral">&nbsp;</span>
510
508
  <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-yes">32x</span>
512
- <span class="cline-any cline-yes">21x</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-yes">16x</span>
512
+ <span class="cline-any cline-yes">5x</span>
513
513
  <span class="cline-any cline-neutral">&nbsp;</span>
514
514
  <span class="cline-any cline-neutral">&nbsp;</span>
515
515
  <span class="cline-any cline-neutral">&nbsp;</span>
516
516
  <span class="cline-any cline-neutral">&nbsp;</span>
517
517
  <span class="cline-any cline-neutral">&nbsp;</span>
518
518
  <span class="cline-any cline-neutral">&nbsp;</span>
519
- <span class="cline-any cline-yes">32x</span>
519
+ <span class="cline-any cline-yes">16x</span>
520
520
  <span class="cline-any cline-neutral">&nbsp;</span>
521
521
  <span class="cline-any cline-yes">16x</span>
522
522
  <span class="cline-any cline-yes">1x</span>
@@ -525,11 +525,11 @@
525
525
  <span class="cline-any cline-neutral">&nbsp;</span>
526
526
  <span class="cline-any cline-yes">1x</span>
527
527
  <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-yes">1x</span>
529
- <span class="cline-any cline-yes">1x</span>
530
- <span class="cline-any cline-yes">1x</span>
531
- <span class="cline-any cline-yes">16x</span>
532
- <span class="cline-any cline-no">&nbsp;</span>
528
+ <span class="cline-any cline-neutral">&nbsp;</span>
529
+ <span class="cline-any cline-neutral">&nbsp;</span>
530
+ <span class="cline-any cline-neutral">&nbsp;</span>
531
+ <span class="cline-any cline-neutral">&nbsp;</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
533
  <span class="cline-any cline-yes">16x</span>
534
534
  <span class="cline-any cline-yes">1x</span>
535
535
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -697,7 +697,7 @@ export function calculateContextScore(
697
697
  // Cap penalties to prevent score going to 0
698
698
  const criticalPenalty = Math.min(
699
699
  MAX_CRITICAL_PENALTY,
700
- criticalIssues * CRITICAL_ISSUE_WEIGHT<span class="branch-1 cbranch-no" title="branch not covered" ></span>
700
+ criticalIssues * CRITICAL_ISSUE_WEIGHT
701
701
  );
702
702
  const majorPenalty = Math.min(
703
703
  MAX_MAJOR_PENALTY,
@@ -739,7 +739,7 @@ export function calculateContextScore(
739
739
  name: 'Context Budget',
740
740
  impact: Math.round(budgetScore * WEIGHT_BUDGET - WEIGHT_BUDGET * 100),
741
741
  description: `Avg ${Math.round(avgContextBudget)} tokens per file ${avgContextBudget &lt; BUDGET_EXCELLENT_THRESHOLD ? '(excellent)' : avgContextBudget &lt; 12000 ? '(acceptable)' : '(high)'}`,
742
- },<span class="branch-0 cbranch-no" title="branch not covered" ></span>
742
+ },
743
743
  {
744
744
  name: 'Import Depth',
745
745
  impact: Math.round(depthScore * WEIGHT_DEPTH - WEIGHT_DEPTH * 100),
@@ -750,7 +750,7 @@ export function calculateContextScore(
750
750
  impact: Math.round(
751
751
  fragmentationScore * WEIGHT_FRAGMENTATION - WEIGHT_FRAGMENTATION * 100
752
752
  ),
753
- description: `${(avgFragmentation * 100).toFixed(0)}% fragmentation ${avgFragmentation &lt; 0.3 ? '(well-organized)' : avgFragmentation &lt; 0.5 ? '(moderate)' : '(high)'}`,
753
+ description: `${(avgFragmentation * 100).toFixed(0)}% fragmentation ${avgFragmentation &lt; 0.3 ? '(well-organized)' : avgFragmentation &lt; 0.5 ? <span class="branch-0 cbranch-no" title="branch not covered" >'(moderate)' : '</span>(high)'}`,
754
754
  },
755
755
  ];
756
756
  &nbsp;
@@ -799,7 +799,7 @@ export function calculateContextScore(
799
799
  priority: 'high',
800
800
  });
801
801
  }
802
- <span class="cstat-no" title="statement not covered" ></span>
802
+ &nbsp;
803
803
  if (avgImportDepth &gt; 10) {
804
804
  const estimatedImpact = Math.min(
805
805
  10,
@@ -880,7 +880,7 @@ export function <span class="fstat-no" title="function not covered" >mapScoreToR
880
880
  <div class='footer quiet pad2 space-top1 center small'>
881
881
  Code coverage generated by
882
882
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
883
- at 2026-03-21T12:52:37.698Z
883
+ at 2026-03-24T11:20:59.666Z
884
884
  </div>
885
885
  <script src="../prettify.js"></script>
886
886
  <script>
@@ -325,7 +325,7 @@ export function <span class="fstat-no" title="function not covered" >getCoUsageD
325
325
  <div class='footer quiet pad2 space-top1 center small'>
326
326
  Code coverage generated by
327
327
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
328
- at 2026-03-21T12:52:37.698Z
328
+ at 2026-03-24T11:20:59.666Z
329
329
  </div>
330
330
  <script src="../../prettify.js"></script>
331
331
  <script>
@@ -208,7 +208,7 @@ export function findConsolidationCandidates(
208
208
  <div class='footer quiet pad2 space-top1 center small'>
209
209
  Code coverage generated by
210
210
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
211
- at 2026-03-21T12:52:37.698Z
211
+ at 2026-03-24T11:20:59.666Z
212
212
  </div>
213
213
  <script src="../../prettify.js"></script>
214
214
  <script>
@@ -844,7 +844,7 @@ export function inferDomain(
844
844
  <div class='footer quiet pad2 space-top1 center small'>
845
845
  Code coverage generated by
846
846
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
847
- at 2026-03-21T12:52:37.698Z
847
+ at 2026-03-24T11:20:59.666Z
848
848
  </div>
849
849
  <script src="../../prettify.js"></script>
850
850
  <script>
@@ -146,7 +146,7 @@
146
146
  <div class='footer quiet pad2 space-top1 center small'>
147
147
  Code coverage generated by
148
148
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
149
- at 2026-03-21T12:52:37.698Z
149
+ at 2026-03-24T11:20:59.666Z
150
150
  </div>
151
151
  <script src="../../prettify.js"></script>
152
152
  <script>
@@ -148,7 +148,7 @@ export function buildTypeGraph(
148
148
  <div class='footer quiet pad2 space-top1 center small'>
149
149
  Code coverage generated by
150
150
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
151
- at 2026-03-21T12:52:37.698Z
151
+ at 2026-03-24T11:20:59.666Z
152
152
  </div>
153
153
  <script src="../../prettify.js"></script>
154
154
  <script>