@vyuhlabs/dxkit 2.4.6 → 2.4.8

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 (357) hide show
  1. package/CHANGELOG.md +1076 -0
  2. package/README.md +132 -27
  3. package/dist/analysis-result.d.ts +112 -0
  4. package/dist/analysis-result.d.ts.map +1 -0
  5. package/dist/analysis-result.js +52 -0
  6. package/dist/analysis-result.js.map +1 -0
  7. package/dist/analyzers/bom/detailed.d.ts.map +1 -1
  8. package/dist/analyzers/bom/detailed.js +19 -0
  9. package/dist/analyzers/bom/detailed.js.map +1 -1
  10. package/dist/analyzers/bom/gather.d.ts +27 -26
  11. package/dist/analyzers/bom/gather.d.ts.map +1 -1
  12. package/dist/analyzers/bom/gather.js +26 -87
  13. package/dist/analyzers/bom/gather.js.map +1 -1
  14. package/dist/analyzers/bom/index.d.ts +0 -7
  15. package/dist/analyzers/bom/index.d.ts.map +1 -1
  16. package/dist/analyzers/bom/index.js +98 -48
  17. package/dist/analyzers/bom/index.js.map +1 -1
  18. package/dist/analyzers/bom/types.d.ts +11 -13
  19. package/dist/analyzers/bom/types.d.ts.map +1 -1
  20. package/dist/analyzers/cache.d.ts +95 -0
  21. package/dist/analyzers/cache.d.ts.map +1 -0
  22. package/dist/analyzers/cache.js +309 -0
  23. package/dist/analyzers/cache.js.map +1 -0
  24. package/dist/analyzers/coverage-runner.d.ts +56 -0
  25. package/dist/analyzers/coverage-runner.d.ts.map +1 -0
  26. package/dist/analyzers/coverage-runner.js +72 -0
  27. package/dist/analyzers/coverage-runner.js.map +1 -0
  28. package/dist/analyzers/dashboard/index.d.ts +24 -0
  29. package/dist/analyzers/dashboard/index.d.ts.map +1 -0
  30. package/dist/analyzers/dashboard/index.js +667 -0
  31. package/dist/analyzers/dashboard/index.js.map +1 -0
  32. package/dist/analyzers/developer/gather.d.ts.map +1 -1
  33. package/dist/analyzers/developer/gather.js +205 -37
  34. package/dist/analyzers/developer/gather.js.map +1 -1
  35. package/dist/analyzers/developer/index.d.ts +1 -1
  36. package/dist/analyzers/developer/index.d.ts.map +1 -1
  37. package/dist/analyzers/developer/index.js +21 -9
  38. package/dist/analyzers/developer/index.js.map +1 -1
  39. package/dist/analyzers/dispatcher.d.ts +52 -0
  40. package/dist/analyzers/dispatcher.d.ts.map +1 -1
  41. package/dist/analyzers/dispatcher.js +92 -9
  42. package/dist/analyzers/dispatcher.js.map +1 -1
  43. package/dist/analyzers/docs/shallow.d.ts +17 -5
  44. package/dist/analyzers/docs/shallow.d.ts.map +1 -1
  45. package/dist/analyzers/docs/shallow.js +65 -2
  46. package/dist/analyzers/docs/shallow.js.map +1 -1
  47. package/dist/analyzers/dx/shallow.d.ts +17 -5
  48. package/dist/analyzers/dx/shallow.d.ts.map +1 -1
  49. package/dist/analyzers/dx/shallow.js +66 -2
  50. package/dist/analyzers/dx/shallow.js.map +1 -1
  51. package/dist/analyzers/health/actions.d.ts +1 -1
  52. package/dist/analyzers/health/actions.d.ts.map +1 -1
  53. package/dist/analyzers/health/actions.js +27 -9
  54. package/dist/analyzers/health/actions.js.map +1 -1
  55. package/dist/analyzers/health/detailed.d.ts +2 -1
  56. package/dist/analyzers/health/detailed.d.ts.map +1 -1
  57. package/dist/analyzers/health/detailed.js +11 -7
  58. package/dist/analyzers/health/detailed.js.map +1 -1
  59. package/dist/analyzers/health.d.ts +27 -0
  60. package/dist/analyzers/health.d.ts.map +1 -1
  61. package/dist/analyzers/health.js +282 -34
  62. package/dist/analyzers/health.js.map +1 -1
  63. package/dist/analyzers/licenses/gather.d.ts +35 -8
  64. package/dist/analyzers/licenses/gather.d.ts.map +1 -1
  65. package/dist/analyzers/licenses/gather.js +86 -13
  66. package/dist/analyzers/licenses/gather.js.map +1 -1
  67. package/dist/analyzers/licenses/index.d.ts +1 -1
  68. package/dist/analyzers/licenses/index.d.ts.map +1 -1
  69. package/dist/analyzers/licenses/index.js +52 -11
  70. package/dist/analyzers/licenses/index.js.map +1 -1
  71. package/dist/analyzers/licenses/types.d.ts +15 -0
  72. package/dist/analyzers/licenses/types.d.ts.map +1 -1
  73. package/dist/analyzers/maintainability/shallow.d.ts +17 -5
  74. package/dist/analyzers/maintainability/shallow.d.ts.map +1 -1
  75. package/dist/analyzers/maintainability/shallow.js +80 -2
  76. package/dist/analyzers/maintainability/shallow.js.map +1 -1
  77. package/dist/analyzers/quality/detailed.d.ts.map +1 -1
  78. package/dist/analyzers/quality/detailed.js +4 -6
  79. package/dist/analyzers/quality/detailed.js.map +1 -1
  80. package/dist/analyzers/quality/gather.d.ts +1 -14
  81. package/dist/analyzers/quality/gather.d.ts.map +1 -1
  82. package/dist/analyzers/quality/gather.js +48 -137
  83. package/dist/analyzers/quality/gather.js.map +1 -1
  84. package/dist/analyzers/quality/index.d.ts +9 -2
  85. package/dist/analyzers/quality/index.d.ts.map +1 -1
  86. package/dist/analyzers/quality/index.js +197 -117
  87. package/dist/analyzers/quality/index.js.map +1 -1
  88. package/dist/analyzers/quality/shallow.d.ts +50 -5
  89. package/dist/analyzers/quality/shallow.d.ts.map +1 -1
  90. package/dist/analyzers/quality/shallow.js +155 -2
  91. package/dist/analyzers/quality/shallow.js.map +1 -1
  92. package/dist/analyzers/quality/types.d.ts +14 -0
  93. package/dist/analyzers/quality/types.d.ts.map +1 -1
  94. package/dist/analyzers/security/actions.d.ts +11 -4
  95. package/dist/analyzers/security/actions.d.ts.map +1 -1
  96. package/dist/analyzers/security/actions.js +87 -37
  97. package/dist/analyzers/security/actions.js.map +1 -1
  98. package/dist/analyzers/security/aggregator.d.ts +236 -0
  99. package/dist/analyzers/security/aggregator.d.ts.map +1 -0
  100. package/dist/analyzers/security/aggregator.js +349 -0
  101. package/dist/analyzers/security/aggregator.js.map +1 -0
  102. package/dist/analyzers/security/detailed.d.ts +2 -2
  103. package/dist/analyzers/security/detailed.d.ts.map +1 -1
  104. package/dist/analyzers/security/detailed.js +10 -9
  105. package/dist/analyzers/security/detailed.js.map +1 -1
  106. package/dist/analyzers/security/gather.d.ts +104 -1
  107. package/dist/analyzers/security/gather.d.ts.map +1 -1
  108. package/dist/analyzers/security/gather.js +299 -9
  109. package/dist/analyzers/security/gather.js.map +1 -1
  110. package/dist/analyzers/security/index.d.ts +15 -0
  111. package/dist/analyzers/security/index.d.ts.map +1 -1
  112. package/dist/analyzers/security/index.js +463 -50
  113. package/dist/analyzers/security/index.js.map +1 -1
  114. package/dist/analyzers/security/shallow.d.ts +50 -6
  115. package/dist/analyzers/security/shallow.d.ts.map +1 -1
  116. package/dist/analyzers/security/shallow.js +154 -2
  117. package/dist/analyzers/security/shallow.js.map +1 -1
  118. package/dist/analyzers/security/types.d.ts +51 -0
  119. package/dist/analyzers/security/types.d.ts.map +1 -1
  120. package/dist/analyzers/tests/detailed.d.ts.map +1 -1
  121. package/dist/analyzers/tests/detailed.js +2 -3
  122. package/dist/analyzers/tests/detailed.js.map +1 -1
  123. package/dist/analyzers/tests/gather.d.ts +2 -1
  124. package/dist/analyzers/tests/gather.d.ts.map +1 -1
  125. package/dist/analyzers/tests/gather.js +98 -69
  126. package/dist/analyzers/tests/gather.js.map +1 -1
  127. package/dist/analyzers/tests/index.d.ts +11 -2
  128. package/dist/analyzers/tests/index.d.ts.map +1 -1
  129. package/dist/analyzers/tests/index.js +83 -18
  130. package/dist/analyzers/tests/index.js.map +1 -1
  131. package/dist/analyzers/tests/shallow.d.ts +19 -5
  132. package/dist/analyzers/tests/shallow.d.ts.map +1 -1
  133. package/dist/analyzers/tests/shallow.js +89 -2
  134. package/dist/analyzers/tests/shallow.js.map +1 -1
  135. package/dist/analyzers/tests/types.d.ts +41 -1
  136. package/dist/analyzers/tests/types.d.ts.map +1 -1
  137. package/dist/analyzers/tools/autogen-header.d.ts +8 -0
  138. package/dist/analyzers/tools/autogen-header.d.ts.map +1 -0
  139. package/dist/analyzers/tools/autogen-header.js +107 -0
  140. package/dist/analyzers/tools/autogen-header.js.map +1 -0
  141. package/dist/analyzers/tools/cloc.d.ts.map +1 -1
  142. package/dist/analyzers/tools/cloc.js +36 -5
  143. package/dist/analyzers/tools/cloc.js.map +1 -1
  144. package/dist/analyzers/tools/deadline.d.ts +67 -0
  145. package/dist/analyzers/tools/deadline.d.ts.map +1 -0
  146. package/dist/analyzers/tools/deadline.js +81 -0
  147. package/dist/analyzers/tools/deadline.js.map +1 -0
  148. package/dist/analyzers/tools/debug-statements.d.ts +17 -0
  149. package/dist/analyzers/tools/debug-statements.d.ts.map +1 -0
  150. package/dist/analyzers/tools/debug-statements.js +58 -0
  151. package/dist/analyzers/tools/debug-statements.js.map +1 -0
  152. package/dist/analyzers/tools/default-exclusions.gitignore +28 -0
  153. package/dist/analyzers/tools/exclusions.d.ts +33 -6
  154. package/dist/analyzers/tools/exclusions.d.ts.map +1 -1
  155. package/dist/analyzers/tools/exclusions.js +95 -26
  156. package/dist/analyzers/tools/exclusions.js.map +1 -1
  157. package/dist/analyzers/tools/generic.d.ts +17 -2
  158. package/dist/analyzers/tools/generic.d.ts.map +1 -1
  159. package/dist/analyzers/tools/generic.js +206 -109
  160. package/dist/analyzers/tools/generic.js.map +1 -1
  161. package/dist/analyzers/tools/gitleaks.d.ts.map +1 -1
  162. package/dist/analyzers/tools/gitleaks.js +48 -1
  163. package/dist/analyzers/tools/gitleaks.js.map +1 -1
  164. package/dist/analyzers/tools/graphify.d.ts +30 -2
  165. package/dist/analyzers/tools/graphify.d.ts.map +1 -1
  166. package/dist/analyzers/tools/graphify.js +131 -15
  167. package/dist/analyzers/tools/graphify.js.map +1 -1
  168. package/dist/analyzers/tools/jscpd.d.ts +12 -2
  169. package/dist/analyzers/tools/jscpd.d.ts.map +1 -1
  170. package/dist/analyzers/tools/jscpd.js +129 -6
  171. package/dist/analyzers/tools/jscpd.js.map +1 -1
  172. package/dist/analyzers/tools/lint-label.d.ts +29 -0
  173. package/dist/analyzers/tools/lint-label.d.ts.map +1 -0
  174. package/dist/analyzers/tools/lint-label.js +23 -0
  175. package/dist/analyzers/tools/lint-label.js.map +1 -0
  176. package/dist/analyzers/tools/minified-detection.d.ts +9 -0
  177. package/dist/analyzers/tools/minified-detection.d.ts.map +1 -0
  178. package/dist/analyzers/tools/minified-detection.js +147 -0
  179. package/dist/analyzers/tools/minified-detection.js.map +1 -0
  180. package/dist/analyzers/tools/nuget-package-reference.d.ts +133 -0
  181. package/dist/analyzers/tools/nuget-package-reference.d.ts.map +1 -0
  182. package/dist/analyzers/tools/nuget-package-reference.js +177 -0
  183. package/dist/analyzers/tools/nuget-package-reference.js.map +1 -0
  184. package/dist/analyzers/tools/osv-scanner-deps.d.ts +3 -2
  185. package/dist/analyzers/tools/osv-scanner-deps.d.ts.map +1 -1
  186. package/dist/analyzers/tools/osv-scanner-deps.js +32 -14
  187. package/dist/analyzers/tools/osv-scanner-deps.js.map +1 -1
  188. package/dist/analyzers/tools/osv.d.ts +36 -0
  189. package/dist/analyzers/tools/osv.d.ts.map +1 -1
  190. package/dist/analyzers/tools/osv.js +26 -0
  191. package/dist/analyzers/tools/osv.js.map +1 -1
  192. package/dist/analyzers/tools/parallel.d.ts +1 -1
  193. package/dist/analyzers/tools/parallel.d.ts.map +1 -1
  194. package/dist/analyzers/tools/parallel.js +2 -2
  195. package/dist/analyzers/tools/parallel.js.map +1 -1
  196. package/dist/analyzers/tools/report-date.d.ts +17 -0
  197. package/dist/analyzers/tools/report-date.d.ts.map +1 -0
  198. package/dist/analyzers/tools/report-date.js +26 -0
  199. package/dist/analyzers/tools/report-date.js.map +1 -0
  200. package/dist/analyzers/tools/risk-score.d.ts +7 -0
  201. package/dist/analyzers/tools/risk-score.d.ts.map +1 -1
  202. package/dist/analyzers/tools/risk-score.js +9 -2
  203. package/dist/analyzers/tools/risk-score.js.map +1 -1
  204. package/dist/analyzers/tools/run-tests-helper.d.ts +43 -0
  205. package/dist/analyzers/tools/run-tests-helper.d.ts.map +1 -0
  206. package/dist/analyzers/tools/run-tests-helper.js +156 -0
  207. package/dist/analyzers/tools/run-tests-helper.js.map +1 -0
  208. package/dist/analyzers/tools/runner.d.ts.map +1 -1
  209. package/dist/analyzers/tools/runner.js +75 -12
  210. package/dist/analyzers/tools/runner.js.map +1 -1
  211. package/dist/analyzers/tools/semgrep.d.ts +39 -2
  212. package/dist/analyzers/tools/semgrep.d.ts.map +1 -1
  213. package/dist/analyzers/tools/semgrep.js +131 -9
  214. package/dist/analyzers/tools/semgrep.js.map +1 -1
  215. package/dist/analyzers/tools/timing.d.ts +17 -3
  216. package/dist/analyzers/tools/timing.d.ts.map +1 -1
  217. package/dist/analyzers/tools/timing.js +36 -14
  218. package/dist/analyzers/tools/timing.js.map +1 -1
  219. package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
  220. package/dist/analyzers/tools/tool-registry.js +11 -1
  221. package/dist/analyzers/tools/tool-registry.js.map +1 -1
  222. package/dist/analyzers/tools/tools-unavailable-prose.d.ts +18 -0
  223. package/dist/analyzers/tools/tools-unavailable-prose.d.ts.map +1 -0
  224. package/dist/analyzers/tools/tools-unavailable-prose.js +69 -0
  225. package/dist/analyzers/tools/tools-unavailable-prose.js.map +1 -0
  226. package/dist/analyzers/tools/upgrade-plan-resolver.d.ts.map +1 -1
  227. package/dist/analyzers/tools/upgrade-plan-resolver.js +7 -0
  228. package/dist/analyzers/tools/upgrade-plan-resolver.js.map +1 -1
  229. package/dist/analyzers/tools/vendored-advisor.d.ts +43 -0
  230. package/dist/analyzers/tools/vendored-advisor.d.ts.map +1 -0
  231. package/dist/analyzers/tools/vendored-advisor.js +107 -0
  232. package/dist/analyzers/tools/vendored-advisor.js.map +1 -0
  233. package/dist/analyzers/tools/walk-paths.d.ts +78 -0
  234. package/dist/analyzers/tools/walk-paths.d.ts.map +1 -0
  235. package/dist/analyzers/tools/walk-paths.js +150 -0
  236. package/dist/analyzers/tools/walk-paths.js.map +1 -0
  237. package/dist/analyzers/tools/walk-source-files.d.ts +70 -0
  238. package/dist/analyzers/tools/walk-source-files.d.ts.map +1 -0
  239. package/dist/analyzers/tools/walk-source-files.js +369 -0
  240. package/dist/analyzers/tools/walk-source-files.js.map +1 -0
  241. package/dist/analyzers/types.d.ts +204 -4
  242. package/dist/analyzers/types.d.ts.map +1 -1
  243. package/dist/analyzers/xlsx/bom.d.ts.map +1 -1
  244. package/dist/analyzers/xlsx/bom.js +8 -1
  245. package/dist/analyzers/xlsx/bom.js.map +1 -1
  246. package/dist/cli.d.ts.map +1 -1
  247. package/dist/cli.js +581 -189
  248. package/dist/cli.js.map +1 -1
  249. package/dist/detect.d.ts.map +1 -1
  250. package/dist/detect.js +24 -7
  251. package/dist/detect.js.map +1 -1
  252. package/dist/doctor.d.ts.map +1 -1
  253. package/dist/doctor.js +103 -53
  254. package/dist/doctor.js.map +1 -1
  255. package/dist/languages/capabilities/provider.d.ts +130 -1
  256. package/dist/languages/capabilities/provider.d.ts.map +1 -1
  257. package/dist/languages/capabilities/types.d.ts +68 -7
  258. package/dist/languages/capabilities/types.d.ts.map +1 -1
  259. package/dist/languages/csharp.d.ts +15 -1
  260. package/dist/languages/csharp.d.ts.map +1 -1
  261. package/dist/languages/csharp.js +624 -146
  262. package/dist/languages/csharp.js.map +1 -1
  263. package/dist/languages/go.d.ts.map +1 -1
  264. package/dist/languages/go.js +89 -11
  265. package/dist/languages/go.js.map +1 -1
  266. package/dist/languages/index.d.ts +132 -2
  267. package/dist/languages/index.d.ts.map +1 -1
  268. package/dist/languages/index.js +207 -0
  269. package/dist/languages/index.js.map +1 -1
  270. package/dist/languages/java.d.ts.map +1 -1
  271. package/dist/languages/java.js +113 -26
  272. package/dist/languages/java.js.map +1 -1
  273. package/dist/languages/kotlin.d.ts.map +1 -1
  274. package/dist/languages/kotlin.js +132 -26
  275. package/dist/languages/kotlin.js.map +1 -1
  276. package/dist/languages/python.d.ts.map +1 -1
  277. package/dist/languages/python.js +149 -44
  278. package/dist/languages/python.js.map +1 -1
  279. package/dist/languages/ruby.d.ts +39 -1
  280. package/dist/languages/ruby.d.ts.map +1 -1
  281. package/dist/languages/ruby.js +178 -44
  282. package/dist/languages/ruby.js.map +1 -1
  283. package/dist/languages/rust.d.ts.map +1 -1
  284. package/dist/languages/rust.js +103 -16
  285. package/dist/languages/rust.js.map +1 -1
  286. package/dist/languages/types.d.ts +228 -5
  287. package/dist/languages/types.d.ts.map +1 -1
  288. package/dist/languages/typescript.d.ts.map +1 -1
  289. package/dist/languages/typescript.js +201 -14
  290. package/dist/languages/typescript.js.map +1 -1
  291. package/dist/scoring/dimensions/documentation.d.ts +53 -0
  292. package/dist/scoring/dimensions/documentation.d.ts.map +1 -0
  293. package/dist/scoring/dimensions/documentation.js +106 -0
  294. package/dist/scoring/dimensions/documentation.js.map +1 -0
  295. package/dist/scoring/dimensions/dx.d.ts +53 -0
  296. package/dist/scoring/dimensions/dx.d.ts.map +1 -0
  297. package/dist/scoring/dimensions/dx.js +105 -0
  298. package/dist/scoring/dimensions/dx.js.map +1 -0
  299. package/dist/scoring/dimensions/maintainability.d.ts +53 -0
  300. package/dist/scoring/dimensions/maintainability.d.ts.map +1 -0
  301. package/dist/scoring/dimensions/maintainability.js +101 -0
  302. package/dist/scoring/dimensions/maintainability.js.map +1 -0
  303. package/dist/scoring/dimensions/quality.d.ts +108 -0
  304. package/dist/scoring/dimensions/quality.d.ts.map +1 -0
  305. package/dist/scoring/dimensions/quality.js +174 -0
  306. package/dist/scoring/dimensions/quality.js.map +1 -0
  307. package/dist/scoring/dimensions/security.d.ts +84 -0
  308. package/dist/scoring/dimensions/security.d.ts.map +1 -0
  309. package/dist/scoring/dimensions/security.js +135 -0
  310. package/dist/scoring/dimensions/security.js.map +1 -0
  311. package/dist/scoring/dimensions/testing.d.ts +56 -0
  312. package/dist/scoring/dimensions/testing.d.ts.map +1 -0
  313. package/dist/scoring/dimensions/testing.js +98 -0
  314. package/dist/scoring/dimensions/testing.js.map +1 -0
  315. package/dist/scoring/evaluator.d.ts +27 -0
  316. package/dist/scoring/evaluator.d.ts.map +1 -0
  317. package/dist/scoring/evaluator.js +124 -0
  318. package/dist/scoring/evaluator.js.map +1 -0
  319. package/dist/scoring/format.d.ts +34 -0
  320. package/dist/scoring/format.d.ts.map +1 -0
  321. package/dist/scoring/format.js +63 -0
  322. package/dist/scoring/format.js.map +1 -0
  323. package/dist/scoring/index.d.ts +37 -0
  324. package/dist/scoring/index.d.ts.map +1 -0
  325. package/dist/scoring/index.js +57 -0
  326. package/dist/scoring/index.js.map +1 -0
  327. package/dist/scoring/overall.d.ts +54 -0
  328. package/dist/scoring/overall.d.ts.map +1 -0
  329. package/dist/scoring/overall.js +76 -0
  330. package/dist/scoring/overall.js.map +1 -0
  331. package/dist/scoring/result.d.ts +111 -0
  332. package/dist/scoring/result.d.ts.map +1 -0
  333. package/dist/scoring/result.js +14 -0
  334. package/dist/scoring/result.js.map +1 -0
  335. package/dist/scoring/spec.d.ts +76 -0
  336. package/dist/scoring/spec.d.ts.map +1 -0
  337. package/dist/scoring/spec.js +22 -0
  338. package/dist/scoring/spec.js.map +1 -0
  339. package/dist/scoring/thresholds.d.ts +56 -0
  340. package/dist/scoring/thresholds.d.ts.map +1 -0
  341. package/dist/scoring/thresholds.js +75 -0
  342. package/dist/scoring/thresholds.js.map +1 -0
  343. package/dist/tools-cli.d.ts.map +1 -1
  344. package/dist/tools-cli.js +21 -2
  345. package/dist/tools-cli.js.map +1 -1
  346. package/dist/types.d.ts +16 -0
  347. package/dist/types.d.ts.map +1 -1
  348. package/package.json +1 -1
  349. package/templates/.claude/commands/dashboard.md +17 -9
  350. package/dist/analyzers/scoring.d.ts +0 -49
  351. package/dist/analyzers/scoring.d.ts.map +0 -1
  352. package/dist/analyzers/scoring.js +0 -422
  353. package/dist/analyzers/scoring.js.map +0 -1
  354. package/dist/analyzers/security/scoring.d.ts +0 -29
  355. package/dist/analyzers/security/scoring.d.ts.map +0 -1
  356. package/dist/analyzers/security/scoring.js +0 -40
  357. package/dist/analyzers/security/scoring.js.map +0 -1
@@ -18,6 +18,7 @@
18
18
  */
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  exports.defaultDispatcher = exports.CapabilityDispatcher = void 0;
21
+ const deadline_1 = require("./tools/deadline");
21
22
  class CapabilityDispatcher {
22
23
  cache = new Map();
23
24
  opts;
@@ -25,6 +26,16 @@ class CapabilityDispatcher {
25
26
  this.opts = opts;
26
27
  }
27
28
  async gather(cwd, cap, providers) {
29
+ return (await this.gatherWithProvenance(cwd, cap, providers)).envelope;
30
+ }
31
+ /**
32
+ * Same gather + cache semantics as `gather()`, plus per-provider
33
+ * provenance (which sources we attempted, which returned null).
34
+ * D080 (2.4.7): consumed by quality/health report renderers so the
35
+ * "Tool" label honestly reflects which providers were attempted even
36
+ * when one returned null silently.
37
+ */
38
+ async gatherWithProvenance(cwd, cap, providers) {
28
39
  const cacheKey = `${cwd}::${cap.id}`;
29
40
  const cached = this.cache.get(cacheKey);
30
41
  if (cached)
@@ -38,25 +49,97 @@ class CapabilityDispatcher {
38
49
  this.cache.clear();
39
50
  }
40
51
  async run(cwd, cap, providers) {
41
- if (providers.length === 0)
42
- return null;
43
- const settled = await Promise.allSettled(providers.map((p) => p.gather(cwd)));
52
+ if (providers.length === 0) {
53
+ return {
54
+ envelope: null,
55
+ attempted: [],
56
+ succeeded: [],
57
+ skipped: [],
58
+ skipReasons: {},
59
+ };
60
+ }
61
+ const attempted = providers.map((p) => p.source);
62
+ // Each provider's gather pathway: prefer the discriminant-returning
63
+ // `gatherOutcome` (Lint / DepVulns / Licenses providers) when it
64
+ // exists, since it carries the "unavailable reason" the user-
65
+ // facing report wants. Fall back to plain `gather()` for legacy
66
+ // providers — the only loss is per-pack reason text; success/skip
67
+ // attribution still works.
68
+ //
69
+ // Every provider's promise is wrapped in a deadline so a single
70
+ // never-settling Promise can't keep `Promise.allSettled` pending
71
+ // forever (the silent-failure shape observed when the capabilities
72
+ // gather hung and the parent exited rc=0 with no work done). A
73
+ // stall is materialised as `{ value: null, reason: "stalled at
74
+ // >Ns (deadline)" }` so the existing skip/skipReason channels
75
+ // carry it through to `toolsUnavailable` without any consumer
76
+ // change.
77
+ const deadlineMs = this.opts.providerDeadlineMs ?? deadline_1.DEFAULT_PROVIDER_DEADLINE_MS;
78
+ const settled = await Promise.allSettled(providers.map((p) => {
79
+ const candidate = p;
80
+ const inner = typeof candidate.gatherOutcome === 'function'
81
+ ? candidate.gatherOutcome(cwd).then((o) => {
82
+ if (o.kind === 'success') {
83
+ return { value: o.envelope, reason: null };
84
+ }
85
+ return {
86
+ value: null,
87
+ reason: o.reason ?? null,
88
+ };
89
+ })
90
+ : p.gather(cwd).then((v) => ({ value: v, reason: null }));
91
+ return (0, deadline_1.withDeadline)(inner, deadlineMs).then((outcome) => {
92
+ if (outcome.stalled) {
93
+ const stalledSeconds = Math.round(outcome.stalledMs / 1000);
94
+ const onStall = this.opts.onProviderStall ?? defaultOnProviderStall;
95
+ onStall(cap.id, p.source, outcome.stalledMs);
96
+ return {
97
+ value: null,
98
+ reason: `stalled at >${stalledSeconds}s (deadline)`,
99
+ };
100
+ }
101
+ return outcome.value;
102
+ });
103
+ }));
104
+ const succeeded = [];
105
+ const skipped = [];
106
+ const skipReasons = {};
44
107
  const successful = [];
45
108
  for (let i = 0; i < settled.length; i++) {
46
109
  const r = settled[i];
110
+ const source = providers[i].source;
47
111
  if (r.status === 'rejected') {
48
- this.opts.onProviderError?.(cap.id, providers[i].source, r.reason);
112
+ this.opts.onProviderError?.(cap.id, source, r.reason);
113
+ skipped.push(source);
49
114
  continue;
50
115
  }
51
- if (r.value !== null)
52
- successful.push(r.value);
116
+ const { value, reason } = r.value;
117
+ if (value !== null) {
118
+ successful.push(value);
119
+ succeeded.push(source);
120
+ }
121
+ else {
122
+ skipped.push(source);
123
+ if (reason !== null)
124
+ skipReasons[source] = reason;
125
+ }
53
126
  }
54
- if (successful.length === 0)
55
- return null;
56
- return cap.aggregate(successful);
127
+ const envelope = successful.length === 0 ? null : cap.aggregate(successful);
128
+ return { envelope, attempted, succeeded, skipped, skipReasons };
57
129
  }
58
130
  }
59
131
  exports.CapabilityDispatcher = CapabilityDispatcher;
132
+ /**
133
+ * Default stall notifier — emits a single stderr line so a stalled
134
+ * provider is visible in `vyuh-dxkit report --verbose` and CI logs.
135
+ * Tests pass `onProviderStall` to suppress the write.
136
+ */
137
+ function defaultOnProviderStall(capId, source, stalledMs) {
138
+ const seconds = Math.round(stalledMs / 1000);
139
+ // Stderr keeps the stall visible in --verbose + CI logs without
140
+ // polluting subprocess stdout (the orchestrator parses stdout).
141
+ process.stderr.write(`[dxkit] capability "${capId}" provider "${source}" stalled after >${seconds}s (deadline) — treating as skipped\n`);
142
+ }
60
143
  /** Process-wide singleton. Tests should construct their own instance. */
61
144
  exports.defaultDispatcher = new CapabilityDispatcher();
62
145
  //# sourceMappingURL=dispatcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/analyzers/dispatcher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAWH,MAAa,oBAAoB;IACd,KAAK,GAAG,IAAI,GAAG,EAA8C,CAAC;IAC9D,IAAI,CAAoB;IAEzC,YAAY,OAA0B,EAAE;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CACV,GAAW,EACX,GAA4B,EAC5B,SAA+C;QAE/C,MAAM,QAAQ,GAAG,GAAG,GAAG,KAAK,GAAG,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,MAAM;YAAE,OAAO,MAA2B,CAAC;QAE/C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,OAA6C,CAAC,CAAC;QACxE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yDAAyD;IACzD,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,GAAG,CACf,GAAW,EACX,GAA4B,EAC5B,SAA+C;QAE/C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAExC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9E,MAAM,UAAU,GAAQ,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;gBACnE,SAAS;YACX,CAAC;YACD,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI;gBAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;CACF;AA/CD,oDA+CC;AAED,yEAAyE;AAC5D,QAAA,iBAAiB,GAAG,IAAI,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/analyzers/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,22 @@
1
1
  /**
2
- * Documentation dimension — shallow score for health aggregation.
2
+ * Documentation dimension — health-side adapter over the declarative
3
+ * documentation scoring spec.
3
4
  *
4
- * Phase 3: delegates to scoring.ts (identical behavior).
5
- * Future: may expand to include docstring coverage via graphify AST.
5
+ * Builds `DocumentationScoreInput` from the health-side `ScoreInput`
6
+ * (HealthMetrics) and dispatches through `evaluateSpec`. The
7
+ * resulting `DimensionScore` carries the score, rating, provenance
8
+ * (deductions, capsApplied, topActions), and the dimension-specific
9
+ * metrics + details surfaced in the health audit's markdown.
6
10
  */
7
- import { DimensionScore } from '../types';
8
- import { ScoreInput } from '../scoring';
11
+ import { type DocumentationScoreInput } from '../../scoring';
12
+ import { DimensionScore, ScoreInput } from '../types';
13
+ export declare function toDocumentationScoreInput(input: ScoreInput): DocumentationScoreInput;
14
+ /**
15
+ * Score-only adapter for the health remediation planner. Mirrors the
16
+ * other dimensions' `score*FromScoreInput` shims.
17
+ */
18
+ export declare function scoreDocsFromScoreInput(input: ScoreInput): {
19
+ score: number;
20
+ };
9
21
  export declare function scoreDocsDimension(input: ScoreInput): DimensionScore;
10
22
  //# sourceMappingURL=shallow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAsB,MAAM,YAAY,CAAC;AAE5D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAEpE"}
1
+ {"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAEL,KAAK,uBAAuB,EAG7B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,UAAU,GAAG,uBAAuB,CAYpF;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAE5E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAmCpE"}
@@ -1,8 +1,71 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toDocumentationScoreInput = toDocumentationScoreInput;
4
+ exports.scoreDocsFromScoreInput = scoreDocsFromScoreInput;
3
5
  exports.scoreDocsDimension = scoreDocsDimension;
4
- const scoring_1 = require("../scoring");
6
+ /**
7
+ * Documentation dimension — health-side adapter over the declarative
8
+ * documentation scoring spec.
9
+ *
10
+ * Builds `DocumentationScoreInput` from the health-side `ScoreInput`
11
+ * (HealthMetrics) and dispatches through `evaluateSpec`. The
12
+ * resulting `DimensionScore` carries the score, rating, provenance
13
+ * (deductions, capsApplied, topActions), and the dimension-specific
14
+ * metrics + details surfaced in the health audit's markdown.
15
+ */
16
+ const scoring_1 = require("../../scoring");
17
+ function toDocumentationScoreInput(input) {
18
+ const m = input.metrics;
19
+ return {
20
+ sourceFiles: m.sourceFiles,
21
+ readmeExists: m.readmeExists,
22
+ readmeLines: m.readmeLines,
23
+ docCommentFiles: m.docCommentFiles,
24
+ apiDocsExist: m.apiDocsExist,
25
+ architectureDocsExist: m.architectureDocsExist,
26
+ contributingExists: m.contributingExists,
27
+ changelogExists: m.changelogExists,
28
+ };
29
+ }
30
+ /**
31
+ * Score-only adapter for the health remediation planner. Mirrors the
32
+ * other dimensions' `score*FromScoreInput` shims.
33
+ */
34
+ function scoreDocsFromScoreInput(input) {
35
+ return (0, scoring_1.evaluateSpec)(scoring_1.DOCUMENTATION_SCORING_SPEC, toDocumentationScoreInput(input));
36
+ }
5
37
  function scoreDocsDimension(input) {
6
- return (0, scoring_1.scoreDocumentation)(input);
38
+ const m = input.metrics;
39
+ const scoreInput = toDocumentationScoreInput(input);
40
+ const result = (0, scoring_1.evaluateSpec)(scoring_1.DOCUMENTATION_SCORING_SPEC, scoreInput);
41
+ const score = result.score;
42
+ const docRatio = m.docCommentFiles / Math.max(m.sourceFiles, 1);
43
+ return {
44
+ score,
45
+ maxScore: 100,
46
+ rating: (0, scoring_1.ratingFromScore)(score),
47
+ rawScore: result.rawScore,
48
+ rawPenalty: result.rawPenalty,
49
+ methodology: result.methodology,
50
+ deductions: result.deductions,
51
+ capsApplied: result.capsApplied,
52
+ topActions: result.topActions,
53
+ metrics: {
54
+ readmeExists: m.readmeExists,
55
+ readmeLines: m.readmeLines,
56
+ docCommentFiles: m.docCommentFiles,
57
+ docRatio: Math.round(docRatio * 100) / 100,
58
+ apiDocsExist: m.apiDocsExist,
59
+ architectureDocsExist: m.architectureDocsExist,
60
+ contributingExists: m.contributingExists,
61
+ changelogExists: m.changelogExists,
62
+ },
63
+ details: `README: ${m.readmeExists ? `${m.readmeLines} lines` : 'missing'}` +
64
+ `. ${m.docCommentFiles}/${m.sourceFiles} files have doc comments (${(docRatio * 100).toFixed(1)}%)` +
65
+ `. API docs: ${m.apiDocsExist ? 'yes' : 'no'}` +
66
+ `. Architecture docs: ${m.architectureDocsExist ? 'yes' : 'no'}` +
67
+ `. Contributing: ${m.contributingExists ? 'yes' : 'no'}` +
68
+ '.',
69
+ };
7
70
  }
8
71
  //# sourceMappingURL=shallow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":";;AASA,gDAEC;AAJD,wCAA4D;AAE5D,SAAgB,kBAAkB,CAAC,KAAiB;IAClD,OAAO,IAAA,4BAAkB,EAAC,KAAK,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":";;AAkBA,8DAYC;AAMD,0DAEC;AAED,gDAmCC;AA3ED;;;;;;;;;GASG;AACH,2CAKuB;AAGvB,SAAgB,yBAAyB,CAAC,KAAiB;IACzD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,OAAO;QACL,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,eAAe,EAAE,CAAC,CAAC,eAAe;QAClC,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;QAC9C,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;QACxC,eAAe,EAAE,CAAC,CAAC,eAAe;KACnC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,KAAiB;IACvD,OAAO,IAAA,sBAAY,EAAC,oCAA0B,EAAE,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAiB;IAClD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,MAAM,UAAU,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,oCAA0B,EAAE,UAAU,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,QAAQ,GAAG,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAEhE,OAAO;QACL,KAAK;QACL,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,IAAA,yBAAe,EAAC,KAAK,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,OAAO,EAAE;YACP,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,eAAe,EAAE,CAAC,CAAC,eAAe;YAClC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,GAAG;YAC1C,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;YAC9C,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;YACxC,eAAe,EAAE,CAAC,CAAC,eAAe;SACnC;QACD,OAAO,EACL,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE;YAClE,KAAK,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,WAAW,6BAA6B,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YACnG,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAC9C,wBAAwB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAChE,mBAAmB,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACxD,GAAG;KACN,CAAC;AACJ,CAAC"}
@@ -1,10 +1,22 @@
1
1
  /**
2
- * Developer Experience dimension — shallow score for health aggregation.
2
+ * Developer Experience dimension — health-side adapter over the
3
+ * declarative DX scoring spec.
3
4
  *
4
- * Phase 3: delegates to scoring.ts (identical behavior).
5
- * Future: may expand with more DX indicators (devcontainer, IDE config, etc).
5
+ * Builds `DxScoreInput` from the health-side `ScoreInput`
6
+ * (HealthMetrics) and dispatches through `evaluateSpec`. The
7
+ * resulting `DimensionScore` carries the score, rating, provenance,
8
+ * and the dimension-specific metrics + details surfaced in the
9
+ * health audit's markdown.
6
10
  */
7
- import { DimensionScore } from '../types';
8
- import { ScoreInput } from '../scoring';
11
+ import { type DxScoreInput } from '../../scoring';
12
+ import { DimensionScore, ScoreInput } from '../types';
13
+ export declare function toDxScoreInput(input: ScoreInput): DxScoreInput;
14
+ /**
15
+ * Score-only adapter for the health remediation planner. Mirrors the
16
+ * other dimensions' `score*FromScoreInput` shims.
17
+ */
18
+ export declare function scoreDxFromScoreInput(input: ScoreInput): {
19
+ score: number;
20
+ };
9
21
  export declare function scoreDxDimension(input: ScoreInput): DimensionScore;
10
22
  //# sourceMappingURL=shallow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,UAAU,EAA4B,MAAM,YAAY,CAAC;AAElE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAElE"}
1
+ {"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAmB,KAAK,YAAY,EAAiC,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtD,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAa9D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAE1E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAmClE"}
@@ -1,8 +1,72 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toDxScoreInput = toDxScoreInput;
4
+ exports.scoreDxFromScoreInput = scoreDxFromScoreInput;
3
5
  exports.scoreDxDimension = scoreDxDimension;
4
- const scoring_1 = require("../scoring");
6
+ /**
7
+ * Developer Experience dimension — health-side adapter over the
8
+ * declarative DX scoring spec.
9
+ *
10
+ * Builds `DxScoreInput` from the health-side `ScoreInput`
11
+ * (HealthMetrics) and dispatches through `evaluateSpec`. The
12
+ * resulting `DimensionScore` carries the score, rating, provenance,
13
+ * and the dimension-specific metrics + details surfaced in the
14
+ * health audit's markdown.
15
+ */
16
+ const scoring_1 = require("../../scoring");
17
+ function toDxScoreInput(input) {
18
+ const m = input.metrics;
19
+ return {
20
+ ciConfigCount: m.ciConfigCount,
21
+ dockerConfigCount: m.dockerConfigCount,
22
+ precommitConfigCount: m.precommitConfigCount,
23
+ makefileExists: m.makefileExists,
24
+ envExampleExists: m.envExampleExists,
25
+ npmScriptsCount: m.npmScriptsCount,
26
+ contributingExists: m.contributingExists,
27
+ readmeLines: m.readmeLines,
28
+ changelogExists: m.changelogExists,
29
+ };
30
+ }
31
+ /**
32
+ * Score-only adapter for the health remediation planner. Mirrors the
33
+ * other dimensions' `score*FromScoreInput` shims.
34
+ */
35
+ function scoreDxFromScoreInput(input) {
36
+ return (0, scoring_1.evaluateSpec)(scoring_1.DX_SCORING_SPEC, toDxScoreInput(input));
37
+ }
5
38
  function scoreDxDimension(input) {
6
- return (0, scoring_1.scoreDeveloperExperience)(input);
39
+ const m = input.metrics;
40
+ const scoreInput = toDxScoreInput(input);
41
+ const result = (0, scoring_1.evaluateSpec)(scoring_1.DX_SCORING_SPEC, scoreInput);
42
+ const score = result.score;
43
+ return {
44
+ score,
45
+ maxScore: 100,
46
+ rating: (0, scoring_1.ratingFromScore)(score),
47
+ rawScore: result.rawScore,
48
+ rawPenalty: result.rawPenalty,
49
+ methodology: result.methodology,
50
+ deductions: result.deductions,
51
+ capsApplied: result.capsApplied,
52
+ topActions: result.topActions,
53
+ metrics: {
54
+ ciConfigCount: m.ciConfigCount,
55
+ dockerConfigCount: m.dockerConfigCount,
56
+ precommitConfigCount: m.precommitConfigCount,
57
+ makefileExists: m.makefileExists,
58
+ envExampleExists: m.envExampleExists,
59
+ npmScriptsCount: m.npmScriptsCount,
60
+ contributingExists: m.contributingExists,
61
+ changelogExists: m.changelogExists,
62
+ },
63
+ details: `CI configs: ${m.ciConfigCount}` +
64
+ `. Docker: ${m.dockerConfigCount > 0 ? 'yes' : 'no'}` +
65
+ `. Pre-commit hooks: ${m.precommitConfigCount > 0 ? 'yes' : 'no'}` +
66
+ `. Makefile: ${m.makefileExists ? 'yes' : 'no'}` +
67
+ `. .env.example: ${m.envExampleExists ? 'yes' : 'no'}` +
68
+ `. npm scripts: ${m.npmScriptsCount}` +
69
+ '.',
70
+ };
7
71
  }
8
72
  //# sourceMappingURL=shallow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":";;AASA,4CAEC;AAJD,wCAAkE;AAElE,SAAgB,gBAAgB,CAAC,KAAiB;IAChD,OAAO,IAAA,kCAAwB,EAAC,KAAK,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":";;AAaA,wCAaC;AAMD,sDAEC;AAED,4CAmCC;AAvED;;;;;;;;;GASG;AACH,2CAAkG;AAGlG,SAAgB,cAAc,CAAC,KAAiB;IAC9C,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,aAAa;QAC9B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;QACtC,oBAAoB,EAAE,CAAC,CAAC,oBAAoB;QAC5C,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;QACpC,eAAe,EAAE,CAAC,CAAC,eAAe;QAClC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;QACxC,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,eAAe,EAAE,CAAC,CAAC,eAAe;KACnC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,KAAiB;IACrD,OAAO,IAAA,sBAAY,EAAC,yBAAe,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,SAAgB,gBAAgB,CAAC,KAAiB;IAChD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,yBAAe,EAAE,UAAU,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAE3B,OAAO;QACL,KAAK;QACL,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,IAAA,yBAAe,EAAC,KAAK,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,OAAO,EAAE;YACP,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;YACtC,oBAAoB,EAAE,CAAC,CAAC,oBAAoB;YAC5C,cAAc,EAAE,CAAC,CAAC,cAAc;YAChC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;YACpC,eAAe,EAAE,CAAC,CAAC,eAAe;YAClC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;YACxC,eAAe,EAAE,CAAC,CAAC,eAAe;SACnC;QACD,OAAO,EACL,eAAe,CAAC,CAAC,aAAa,EAAE;YAChC,aAAa,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACrD,uBAAuB,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAClE,eAAe,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAChD,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACtD,kBAAkB,CAAC,CAAC,eAAe,EAAE;YACrC,GAAG;KACN,CAAC;AACJ,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { RankedAction } from '../remediation';
2
- import { ScoreInput } from '../scoring';
2
+ import { ScoreInput } from '../types';
3
3
  export interface DimensionPlan {
4
4
  dimension: string;
5
5
  baseline: number;
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AAavE,OAAO,EACL,UAAU,EAOX,MAAM,YAAY,CAAC;AA+VpB,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;CACrC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,EAAE,CA0BnE"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AAiBvE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AA0WtC,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;CACrC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,EAAE,CA8BnE"}
@@ -2,7 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildHealthPlans = buildHealthPlans;
4
4
  const remediation_1 = require("../remediation");
5
- const scoring_1 = require("../scoring");
5
+ const shallow_1 = require("../tests/shallow");
6
+ const shallow_2 = require("../docs/shallow");
7
+ const shallow_3 = require("../maintainability/shallow");
8
+ const shallow_4 = require("../dx/shallow");
9
+ // Security + Quality scorers live with their analyzers post-
10
+ // canonical-formula unification.
11
+ const shallow_5 = require("../security/shallow");
12
+ const shallow_6 = require("../quality/shallow");
6
13
  /** Shallow-clone the metrics slice with `patch` merged on top. */
7
14
  function withMetrics(cur, patch) {
8
15
  return { ...cur, metrics: { ...cur.metrics, ...patch } };
@@ -165,11 +172,18 @@ function docsActions(input) {
165
172
  patch: (cur) => withMetrics(cur, { architectureDocsExist: true }),
166
173
  });
167
174
  }
168
- if (!m.apiDocsExist && (m.controllers > 0 || m.sourceFiles > 100)) {
175
+ // Only recommend API docs when there's an actual HTTP route surface
176
+ // to document. The gate is `routeHandlerFiles` — the count of files
177
+ // matching any active pack's `architecturalShape.routePaths` (the
178
+ // narrower HTTP-handler subset). A desktop app or pure-frontend
179
+ // project has zero route handlers even when its primary-component
180
+ // count is large (Forms, components, screens), so this action
181
+ // stays correctly silenced for non-API codebases.
182
+ if (!m.apiDocsExist && m.routeHandlerFiles > 0) {
169
183
  actions.push({
170
184
  id: 'health.docs.add-api-docs',
171
185
  title: 'Add API documentation',
172
- rationale: 'With controllers/routes present, API surface should be documented.',
186
+ rationale: 'With HTTP route handlers present, API surface should be documented.',
173
187
  evidence: [],
174
188
  patch: (cur) => withMetrics(cur, { apiDocsExist: true }),
175
189
  });
@@ -306,12 +320,16 @@ function dxActions(input) {
306
320
  }
307
321
  function buildHealthPlans(input) {
308
322
  const dims = [
309
- { name: 'Testing', scorer: scoring_1.scoreTest, build: testingActions },
310
- { name: 'Quality', scorer: scoring_1.scoreQuality, build: qualityActions },
311
- { name: 'Documentation', scorer: scoring_1.scoreDocumentation, build: docsActions },
312
- { name: 'Security', scorer: scoring_1.scoreSecurity, build: securityActions },
313
- { name: 'Maintainability', scorer: scoring_1.scoreMaintainability, build: maintainabilityActions },
314
- { name: 'Developer Experience', scorer: scoring_1.scoreDeveloperExperience, build: dxActions },
323
+ { name: 'Testing', scorer: shallow_1.scoreTestFromScoreInput, build: testingActions },
324
+ { name: 'Quality', scorer: shallow_6.scoreQualityFromScoreInput, build: qualityActions },
325
+ { name: 'Documentation', scorer: shallow_2.scoreDocsFromScoreInput, build: docsActions },
326
+ { name: 'Security', scorer: shallow_5.scoreSecurityFromScoreInput, build: securityActions },
327
+ {
328
+ name: 'Maintainability',
329
+ scorer: shallow_3.scoreMaintainabilityFromScoreInput,
330
+ build: maintainabilityActions,
331
+ },
332
+ { name: 'Developer Experience', scorer: shallow_4.scoreDxFromScoreInput, build: dxActions },
315
333
  ];
316
334
  return dims.map((d) => {
317
335
  const baseline = d.scorer(input).score;
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,13 @@
7
7
  */
8
8
  import { HealthReport, HealthMetrics } from '../types';
9
9
  import { DimensionPlan } from './actions';
10
+ import { type Rating } from '../../scoring';
10
11
  export interface HealthDetailedReport extends HealthReport {
11
12
  schemaVersion: string;
12
13
  plans: DimensionPlan[];
13
14
  /** Projected overall if every ranked action is applied. */
14
15
  projectedOverallScore: number;
15
- projectedGrade: 'A' | 'B' | 'C' | 'D' | 'F';
16
+ projectedGrade: Rating;
16
17
  /** Relative paths to the dimension-specific detailed reports, if generated. */
17
18
  crossRefs: {
18
19
  vulnerabilities: string;
@@ -1 +1 @@
1
- {"version":3,"file":"detailed.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAoB,aAAa,EAAE,MAAM,WAAW,CAAC;AAG5D,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,2DAA2D;IAC3D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC5C,+EAA+E;IAC/E,SAAS,EAAE;QACT,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAWD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,aAAa,GACrB,oBAAoB,CAwCtB;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,MAAM,GACd,MAAM,CA4GR"}
1
+ {"version":3,"file":"detailed.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAoB,aAAa,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAkB,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5D,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,2DAA2D;IAC3D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,SAAS,EAAE;QACT,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAWD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,aAAa,GACrB,oBAAoB,CA6CtB;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,MAAM,GACd,MAAM,CA0GR"}
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildHealthDetailed = buildHealthDetailed;
4
4
  exports.formatHealthDetailedMarkdown = formatHealthDetailedMarkdown;
5
5
  const actions_1 = require("./actions");
6
- const scoring_1 = require("../scoring");
6
+ const scoring_1 = require("../../scoring");
7
+ const tools_unavailable_prose_1 = require("../tools/tools-unavailable-prose");
7
8
  const DIM_TO_KEY = {
8
9
  Testing: 'testing',
9
10
  Quality: 'quality',
@@ -33,7 +34,7 @@ function buildHealthDetailed(report, metrics) {
33
34
  if (k)
34
35
  projectedDims[k].score = p.ideal;
35
36
  }
36
- const { overallScore: projected, grade: projectedGrade } = (0, scoring_1.computeOverall)(projectedDims);
37
+ const { overallScore: projected, rating: projectedGrade } = (0, scoring_1.computeOverall)(projectedDims);
37
38
  // Date prefix used for cross-refs so they match the sibling detailed filenames.
38
39
  const date = report.analyzedAt.slice(0, 10);
39
40
  const crossRefs = {
@@ -44,7 +45,12 @@ function buildHealthDetailed(report, metrics) {
44
45
  };
45
46
  return {
46
47
  ...report,
47
- schemaVersion: '11',
48
+ // 2.4.7: bumped 11 → 12 for the actionable-scoring fields surfaced
49
+ // per dimension (rawScore, rawPenalty, methodology, deductions,
50
+ // capsApplied, topActions) plus the summary.grade → summary.rating
51
+ // rename + F→E letter unification. See docs/MIGRATING-TO-2.4.7-
52
+ // SCORING.md for the downstream-consumer migration guide.
53
+ schemaVersion: '12',
48
54
  plans,
49
55
  projectedOverallScore: projected,
50
56
  projectedGrade,
@@ -61,7 +67,7 @@ function formatHealthDetailedMarkdown(detailed, elapsed) {
61
67
  L.push(`**Commit:** ${detailed.commitSha}`);
62
68
  L.push(`**Schema version:** ${detailed.schemaVersion}`);
63
69
  L.push('');
64
- L.push(`## Overall Health: ${detailed.summary.overallScore}/100 (Grade ${detailed.summary.grade}) → projected ${detailed.projectedOverallScore}/100 (Grade ${detailed.projectedGrade}) if every action is taken`);
70
+ L.push(`## Overall Health: ${detailed.summary.overallScore}/100 (${detailed.summary.rating}) → projected ${detailed.projectedOverallScore}/100 (${detailed.projectedGrade}) if every action is taken`);
65
71
  L.push('');
66
72
  L.push('---');
67
73
  L.push('');
@@ -140,9 +146,7 @@ function formatHealthDetailedMarkdown(detailed, elapsed) {
140
146
  L.push('');
141
147
  }
142
148
  L.push(`**Tools used:** ${detailed.toolsUsed.join(', ')}`);
143
- if (detailed.toolsUnavailable.length > 0) {
144
- L.push(`**Tools unavailable:** ${detailed.toolsUnavailable.join(', ')}`);
145
- }
149
+ L.push(...(0, tools_unavailable_prose_1.renderToolsUnavailableLines)(detailed.toolsUnavailable));
146
150
  L.push(`**Analysis time:** ${elapsed}s`);
147
151
  L.push('');
148
152
  L.push('*Generated by [VyuhLabs DXKit](https://www.npmjs.com/package/@vyuhlabs/dxkit) — detailed mode*');
@@ -1 +1 @@
1
- {"version":3,"file":"detailed.js","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detailed.js","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"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"}