code-auditor-mcp 5.0.2 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +184 -3
  3. package/README.md +24 -2
  4. package/configs/hhra-compat.json +12 -118
  5. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -1
  6. package/dist/analyzers/cross-language/DependencyGraphBuilder.js +11 -1
  7. package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -1
  8. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts.map +1 -1
  9. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js +57 -52
  10. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js.map +1 -1
  11. package/dist/analyzers/provenance.d.ts +9 -4
  12. package/dist/analyzers/provenance.d.ts.map +1 -1
  13. package/dist/analyzers/provenance.js +8 -25
  14. package/dist/analyzers/provenance.js.map +1 -1
  15. package/dist/analyzers/reactAnalyzer.d.ts.map +1 -1
  16. package/dist/analyzers/reactAnalyzer.js +0 -5
  17. package/dist/analyzers/reactAnalyzer.js.map +1 -1
  18. package/dist/analyzers/ruleRegistry.js +4 -4
  19. package/dist/analyzers/ruleRegistry.js.map +1 -1
  20. package/dist/analyzers/ruleTiming.d.ts +1 -1
  21. package/dist/analyzers/ruleTiming.js +2 -2
  22. package/dist/analyzers/ruleTiming.js.map +1 -1
  23. package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts.map +1 -1
  24. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js +22 -26
  25. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js.map +1 -1
  26. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +32 -15
  27. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  28. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +189 -115
  29. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  30. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +0 -2
  31. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  32. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +0 -5
  33. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
  34. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts +2 -10
  35. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts.map +1 -1
  36. package/dist/analyzers/universal/UniversalStylesAnalyzer.js +7 -49
  37. package/dist/analyzers/universal/UniversalStylesAnalyzer.js.map +1 -1
  38. package/dist/analyzers/universal/schema/config.d.ts.map +1 -1
  39. package/dist/analyzers/universal/schema/config.js +0 -2
  40. package/dist/analyzers/universal/schema/config.js.map +1 -1
  41. package/dist/analyzers/universal/schema/types.d.ts +0 -2
  42. package/dist/analyzers/universal/schema/types.d.ts.map +1 -1
  43. package/dist/analyzers/vendorSurfaces.d.ts +126 -0
  44. package/dist/analyzers/vendorSurfaces.d.ts.map +1 -0
  45. package/dist/analyzers/vendorSurfaces.js +580 -0
  46. package/dist/analyzers/vendorSurfaces.js.map +1 -0
  47. package/dist/auditRunner.d.ts.map +1 -1
  48. package/dist/auditRunner.js +136 -142
  49. package/dist/auditRunner.js.map +1 -1
  50. package/dist/churn/churnExtractor.d.ts +0 -1
  51. package/dist/churn/churnExtractor.d.ts.map +1 -1
  52. package/dist/churn/churnExtractor.js +2 -4
  53. package/dist/churn/churnExtractor.js.map +1 -1
  54. package/dist/cli.d.ts +1 -1
  55. package/dist/cli.d.ts.map +1 -1
  56. package/dist/cli.js +195 -26
  57. package/dist/cli.js.map +1 -1
  58. package/dist/codeIndex/migrations.d.ts.map +1 -1
  59. package/dist/codeIndex/migrations.js +4 -3
  60. package/dist/codeIndex/migrations.js.map +1 -1
  61. package/dist/codeIndexDB.d.ts +11 -2
  62. package/dist/codeIndexDB.d.ts.map +1 -1
  63. package/dist/codeIndexDB.js +27 -2
  64. package/dist/codeIndexDB.js.map +1 -1
  65. package/dist/config/configLoader.d.ts +60 -7
  66. package/dist/config/configLoader.d.ts.map +1 -1
  67. package/dist/config/configLoader.js +252 -60
  68. package/dist/config/configLoader.js.map +1 -1
  69. package/dist/config/defaults.d.ts +77 -18
  70. package/dist/config/defaults.d.ts.map +1 -1
  71. package/dist/config/defaults.js +105 -43
  72. package/dist/config/defaults.js.map +1 -1
  73. package/dist/constants.d.ts +2 -1
  74. package/dist/constants.d.ts.map +1 -1
  75. package/dist/constants.js +4 -0
  76. package/dist/constants.js.map +1 -1
  77. package/dist/daemon/main.d.ts +0 -1
  78. package/dist/daemon/main.d.ts.map +1 -1
  79. package/dist/daemon/main.js +11 -4
  80. package/dist/daemon/main.js.map +1 -1
  81. package/dist/dataPaths.d.ts +17 -11
  82. package/dist/dataPaths.d.ts.map +1 -1
  83. package/dist/dataPaths.js +51 -16
  84. package/dist/dataPaths.js.map +1 -1
  85. package/dist/hookLog.d.ts +54 -0
  86. package/dist/hookLog.d.ts.map +1 -0
  87. package/dist/hookLog.js +105 -0
  88. package/dist/hookLog.js.map +1 -0
  89. package/dist/hookLogPath.generated.d.ts +3 -0
  90. package/dist/hookLogPath.generated.d.ts.map +1 -0
  91. package/dist/hookLogPath.generated.js +8 -0
  92. package/dist/hookLogPath.generated.js.map +1 -0
  93. package/dist/index.d.ts +0 -5
  94. package/dist/index.d.ts.map +1 -1
  95. package/dist/index.js +0 -7
  96. package/dist/index.js.map +1 -1
  97. package/dist/installConfig.d.ts +15 -2
  98. package/dist/installConfig.d.ts.map +1 -1
  99. package/dist/installConfig.js +17 -2
  100. package/dist/installConfig.js.map +1 -1
  101. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -1
  102. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +18 -3
  103. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -1
  104. package/dist/mcp-tools/workflowGuide.js +8 -8
  105. package/dist/mcp-tools/workflowGuide.js.map +1 -1
  106. package/dist/mcp-tools-shared.d.ts.map +1 -1
  107. package/dist/mcp-tools-shared.js +5 -2
  108. package/dist/mcp-tools-shared.js.map +1 -1
  109. package/dist/mcp-ui-simple.d.ts +5 -0
  110. package/dist/mcp-ui-simple.d.ts.map +1 -1
  111. package/dist/mcp-ui-simple.js +9 -2
  112. package/dist/mcp-ui-simple.js.map +1 -1
  113. package/dist/mcp.d.ts +0 -1
  114. package/dist/mcp.d.ts.map +1 -1
  115. package/dist/mcp.js +36 -33
  116. package/dist/mcp.js.map +1 -1
  117. package/dist/mcpAuditJobs.d.ts +10 -0
  118. package/dist/mcpAuditJobs.d.ts.map +1 -1
  119. package/dist/mcpAuditJobs.js +10 -1
  120. package/dist/mcpAuditJobs.js.map +1 -1
  121. package/dist/mcpAutoIndex.d.ts.map +1 -1
  122. package/dist/mcpAutoIndex.js +2 -1
  123. package/dist/mcpAutoIndex.js.map +1 -1
  124. package/dist/phase/colorMath.d.ts +18 -5
  125. package/dist/phase/colorMath.d.ts.map +1 -1
  126. package/dist/phase/colorMath.js +88 -5
  127. package/dist/phase/colorMath.js.map +1 -1
  128. package/dist/phase/dataAccessCallsCandidates.js +1 -1
  129. package/dist/phase/dataAccessCallsCandidates.js.map +1 -1
  130. package/dist/phase/goFunctionAnalysis.d.ts +2 -2
  131. package/dist/phase/goFunctionAnalysis.js +2 -2
  132. package/dist/phase/goFunctions.d.ts +2 -2
  133. package/dist/phase/goFunctions.js +2 -2
  134. package/dist/phase/goImports.d.ts +2 -2
  135. package/dist/phase/goImports.js +2 -2
  136. package/dist/phase/goSwitches.d.ts +2 -2
  137. package/dist/phase/goSwitches.js +2 -2
  138. package/dist/phase/loopQueryCandidates.js +1 -1
  139. package/dist/phase/loopQueryCandidates.js.map +1 -1
  140. package/dist/phase/phaseModel.d.ts +37 -8
  141. package/dist/phase/phaseModel.d.ts.map +1 -1
  142. package/dist/phase/phaseModel.js +33 -8
  143. package/dist/phase/phaseModel.js.map +1 -1
  144. package/dist/phase/producers.d.ts.map +1 -1
  145. package/dist/phase/producers.js +24 -17
  146. package/dist/phase/producers.js.map +1 -1
  147. package/dist/phase/reachability.d.ts +44 -1
  148. package/dist/phase/reachability.d.ts.map +1 -1
  149. package/dist/phase/reachability.js +79 -0
  150. package/dist/phase/reachability.js.map +1 -1
  151. package/dist/phase/rules/crossDomain.d.ts.map +1 -1
  152. package/dist/phase/rules/crossDomain.js +16 -6
  153. package/dist/phase/rules/crossDomain.js.map +1 -1
  154. package/dist/phase/rules/dry.d.ts.map +1 -1
  155. package/dist/phase/rules/dry.js +0 -1
  156. package/dist/phase/rules/dry.js.map +1 -1
  157. package/dist/phase/rules/goRules.d.ts +2 -2
  158. package/dist/phase/rules/goRules.js +2 -2
  159. package/dist/phase/rules/secrets.d.ts +22 -8
  160. package/dist/phase/rules/secrets.d.ts.map +1 -1
  161. package/dist/phase/rules/secrets.js +48 -67
  162. package/dist/phase/rules/secrets.js.map +1 -1
  163. package/dist/phase/rules/styles.d.ts +23 -9
  164. package/dist/phase/rules/styles.d.ts.map +1 -1
  165. package/dist/phase/rules/styles.js +47 -15
  166. package/dist/phase/rules/styles.js.map +1 -1
  167. package/dist/phase/rules/unreferencedModule.d.ts.map +1 -1
  168. package/dist/phase/rules/unreferencedModule.js +16 -5
  169. package/dist/phase/rules/unreferencedModule.js.map +1 -1
  170. package/dist/phase/runner.d.ts +16 -7
  171. package/dist/phase/runner.d.ts.map +1 -1
  172. package/dist/phase/runner.js +32 -20
  173. package/dist/phase/runner.js.map +1 -1
  174. package/dist/phase/stylesCss.d.ts.map +1 -1
  175. package/dist/phase/stylesCss.js +4 -0
  176. package/dist/phase/stylesCss.js.map +1 -1
  177. package/dist/phase/stylesMarkup.d.ts.map +1 -1
  178. package/dist/phase/stylesMarkup.js +4 -0
  179. package/dist/phase/stylesMarkup.js.map +1 -1
  180. package/dist/phase/stylesSource.d.ts.map +1 -1
  181. package/dist/phase/stylesSource.js +6 -0
  182. package/dist/phase/stylesSource.js.map +1 -1
  183. package/dist/phase/testProgram.d.ts +57 -0
  184. package/dist/phase/testProgram.d.ts.map +1 -0
  185. package/dist/phase/testProgram.js +244 -0
  186. package/dist/phase/testProgram.js.map +1 -0
  187. package/dist/phase/typeDeclarations.d.ts +2 -2
  188. package/dist/phase/typeDeclarations.js +2 -2
  189. package/dist/phase/types.d.ts +46 -0
  190. package/dist/phase/types.d.ts.map +1 -1
  191. package/dist/pipelineAdapters.d.ts +1 -171
  192. package/dist/pipelineAdapters.d.ts.map +1 -1
  193. package/dist/pipelineAdapters.js +47 -1281
  194. package/dist/pipelineAdapters.js.map +1 -1
  195. package/dist/reporting/csvReportGenerator.d.ts.map +1 -1
  196. package/dist/reporting/csvReportGenerator.js +0 -6
  197. package/dist/reporting/csvReportGenerator.js.map +1 -1
  198. package/dist/reporting/htmlReportGenerator.d.ts.map +1 -1
  199. package/dist/reporting/htmlReportGenerator.js +0 -4
  200. package/dist/reporting/htmlReportGenerator.js.map +1 -1
  201. package/dist/reporting/jsonReportGenerator.d.ts.map +1 -1
  202. package/dist/reporting/jsonReportGenerator.js +0 -1
  203. package/dist/reporting/jsonReportGenerator.js.map +1 -1
  204. package/dist/reporting/sarifReportGenerator.d.ts.map +1 -1
  205. package/dist/reporting/sarifReportGenerator.js +0 -7
  206. package/dist/reporting/sarifReportGenerator.js.map +1 -1
  207. package/dist/sqlite/driver.d.ts +17 -1
  208. package/dist/sqlite/driver.d.ts.map +1 -1
  209. package/dist/sqlite/driver.js +28 -5
  210. package/dist/sqlite/driver.js.map +1 -1
  211. package/dist/styles/cssInJsHarvest.d.ts +36 -0
  212. package/dist/styles/cssInJsHarvest.d.ts.map +1 -0
  213. package/dist/styles/cssInJsHarvest.js +78 -0
  214. package/dist/styles/cssInJsHarvest.js.map +1 -0
  215. package/dist/styles/definedClasses.d.ts +95 -0
  216. package/dist/styles/definedClasses.d.ts.map +1 -0
  217. package/dist/styles/definedClasses.js +129 -0
  218. package/dist/styles/definedClasses.js.map +1 -0
  219. package/dist/styles/markupStyleHarvest.d.ts +33 -0
  220. package/dist/styles/markupStyleHarvest.d.ts.map +1 -0
  221. package/dist/styles/markupStyleHarvest.js +73 -0
  222. package/dist/styles/markupStyleHarvest.js.map +1 -0
  223. package/dist/styles/styleExtractor.d.ts +37 -0
  224. package/dist/styles/styleExtractor.d.ts.map +1 -1
  225. package/dist/styles/styleExtractor.js +89 -33
  226. package/dist/styles/styleExtractor.js.map +1 -1
  227. package/dist/styles/styleIndexer.d.ts.map +1 -1
  228. package/dist/styles/styleIndexer.js +11 -10
  229. package/dist/styles/styleIndexer.js.map +1 -1
  230. package/dist/styles/tailwindExpander.d.ts.map +1 -1
  231. package/dist/styles/tailwindExpander.js +31 -10
  232. package/dist/styles/tailwindExpander.js.map +1 -1
  233. package/dist/telemetry.d.ts +67 -1
  234. package/dist/telemetry.d.ts.map +1 -1
  235. package/dist/telemetry.js +100 -20
  236. package/dist/telemetry.js.map +1 -1
  237. package/dist/types/crossLanguage.d.ts +1 -0
  238. package/dist/types/crossLanguage.d.ts.map +1 -1
  239. package/dist/types.d.ts +23 -56
  240. package/dist/types.d.ts.map +1 -1
  241. package/dist/types.js +4 -4
  242. package/dist/types.js.map +1 -1
  243. package/dist/version.generated.d.ts +1 -1
  244. package/dist/version.generated.js +1 -1
  245. package/examples/.auditrc.example.json +7 -22
  246. package/examples/.auditrc.json +12 -155
  247. package/examples/.code-auditor.json +8 -51
  248. package/examples/nextjs.auditrc.json +7 -34
  249. package/examples/node-api.auditrc.json +6 -46
  250. package/examples/react.auditrc.json +8 -25
  251. package/examples/tolerant-solid.auditrc.json +12 -44
  252. package/package.json +6 -5
  253. package/plugin/.claude-plugin/manifest.json +10 -9
  254. package/plugin/.claude-plugin/plugin.json +1 -1
  255. package/plugin/hooks/hooks.json +4 -4
  256. package/plugin/scripts/hook-audit.sh +9 -0
  257. package/plugin/scripts/hook-common.sh +8 -2
  258. package/plugin/scripts/hook-drift-check.sh +10 -1
  259. package/plugin/scripts/hook-log-path.sh +7 -0
  260. package/plugin/scripts/hook-self-audit.sh +9 -0
  261. package/plugin/scripts/hook-warm.sh +17 -11
  262. package/plugin/skills/code-auditor/SKILL.md +26 -3
  263. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts +0 -6
  264. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts.map +0 -1
  265. package/dist/__tests__/fixtures/spec-20/scripts/tool.js +0 -12
  266. package/dist/__tests__/fixtures/spec-20/scripts/tool.js.map +0 -1
  267. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts +0 -7
  268. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts.map +0 -1
  269. package/dist/__tests__/fixtures/spec-20/src/demo-module.js +0 -13
  270. package/dist/__tests__/fixtures/spec-20/src/demo-module.js.map +0 -1
  271. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.d.ts +0 -14
  272. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.d.ts.map +0 -1
  273. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.js +0 -16
  274. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.js.map +0 -1
  275. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.d.ts +0 -15
  276. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.d.ts.map +0 -1
  277. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.js +0 -17
  278. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.js.map +0 -1
  279. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.d.ts +0 -14
  280. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.d.ts.map +0 -1
  281. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.js +0 -19
  282. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.js.map +0 -1
  283. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.d.ts +0 -18
  284. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.d.ts.map +0 -1
  285. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.js +0 -19
  286. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.js.map +0 -1
  287. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.d.ts +0 -19
  288. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.d.ts.map +0 -1
  289. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.js +0 -19
  290. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.js.map +0 -1
  291. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.d.ts +0 -17
  292. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.d.ts.map +0 -1
  293. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.js +0 -19
  294. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.js.map +0 -1
  295. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.d.ts +0 -25
  296. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.d.ts.map +0 -1
  297. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.js +0 -21
  298. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.js.map +0 -1
  299. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.d.ts +0 -15
  300. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.d.ts.map +0 -1
  301. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.js +0 -19
  302. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.js.map +0 -1
  303. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.d.ts +0 -14
  304. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.d.ts.map +0 -1
  305. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.js +0 -14
  306. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.js.map +0 -1
  307. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.d.ts +0 -15
  308. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.d.ts.map +0 -1
  309. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.js +0 -16
  310. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.js.map +0 -1
  311. package/dist/languages/go/analyzer-darwin-amd64 +0 -0
  312. package/dist/languages/go/analyzer-darwin-arm64 +0 -0
  313. package/dist/languages/go/analyzer-linux-amd64 +0 -0
  314. package/dist/languages/go/analyzer-linux-arm64 +0 -0
  315. package/dist/languages/go/analyzer-src/analyzer.go +0 -643
  316. package/dist/languages/go/analyzer-src/dataaccess.go +0 -388
  317. package/dist/languages/go/analyzer-src/go.mod +0 -3
  318. package/dist/languages/go/analyzer-src/indexer.go +0 -268
  319. package/dist/languages/go/analyzer-src/parser.go +0 -461
  320. package/dist/languages/go/analyzer-src/solid.go +0 -311
  321. package/dist/languages/go/analyzer-src/testconventions.go +0 -25
  322. package/dist/languages/go/analyzer-src/types.go +0 -156
  323. package/dist/languages/go/analyzer-windows-amd64.exe +0 -0
  324. package/dist/languages/go/go.mod +0 -7
  325. package/dist/languages/go/main.go +0 -203
  326. package/dist/native/ast-grep-napi.darwin-arm64.node +0 -0
  327. package/dist/native/ast-grep-napi.darwin-x64.node +0 -0
  328. package/dist/native/ast-grep-napi.linux-arm64-gnu.node +0 -0
  329. package/dist/native/ast-grep-napi.linux-arm64-musl.node +0 -0
  330. package/dist/native/ast-grep-napi.linux-x64-gnu.node +0 -0
  331. package/dist/native/ast-grep-napi.linux-x64-musl.node +0 -0
  332. package/dist/native/ast-grep-napi.win32-x64-msvc.node +0 -0
  333. package/dist/native-bootstrap.d.ts +0 -15
  334. package/dist/native-bootstrap.d.ts.map +0 -1
  335. package/dist/native-bootstrap.js +0 -75
  336. package/dist/native-bootstrap.js.map +0 -1
@@ -33,6 +33,7 @@ import { loadTailwindConfig, tokensToStyleTokens } from '../styles/tailwindConfi
33
33
  import { findFiles, UNREAD_STYLE_EXTENSIONS, getSourceExtensions } from '../utils/fileDiscovery.js';
34
34
  import { classifyUnprovenQueryReceivers, classifyUnresolvedQuerySites, classifyUnparseableSql } from './receiverConsumers.js';
35
35
  import { computeAmbientInterfaceFields } from './receiverProvenance.js';
36
+ import { computeUnprovenModules } from './reachability.js';
36
37
  import { withRuleTiming, withRuleTimingAsync } from '../analyzers/ruleTiming.js';
37
38
  /**
38
39
  * Run the full phase model over the given absolute file paths and return the
@@ -41,15 +42,15 @@ import { withRuleTiming, withRuleTimingAsync } from '../analyzers/ruleTiming.js'
41
42
  *
42
43
  * @param filePaths - The absolute file paths to read and run through the model.
43
44
  * @param thresholdsByRule - The resolved per-rule threshold map.
44
- * @param infra - The optional corpus-level inputs (project root, index, workers).
45
+ * @param infra - The corpus-level inputs (project root, index, workers).
45
46
  * @returns The migrated rules' findings and the per-file fact completeness map.
46
47
  */
47
48
  export async function runPhaseModel(filePaths, thresholdsByRule, infra) {
48
49
  if (MIGRATED_RULES.length === 0)
49
- return { findings: [], incompleteFacts: new Map(), oracleShortfalls: [], unprovenQueryReceivers: [], unresolvedImports: [], unresolvedQuerySites: [], unparseableSql: [] };
50
+ return { findings: [], diagnostics: [], facts: new Map(), incompleteFacts: new Map(), oracleShortfalls: [], unprovenQueryReceivers: [], unresolvedImports: [], unresolvedQuerySites: [], unparseableSql: [], unprovenModules: [] };
50
51
  const active = activeRules(infra?.enabledRules);
51
52
  if (active.length === 0)
52
- return { findings: [], incompleteFacts: new Map(), oracleShortfalls: [], unprovenQueryReceivers: [], unresolvedImports: [], unresolvedQuerySites: [], unparseableSql: [] };
53
+ return { findings: [], diagnostics: [], facts: new Map(), incompleteFacts: new Map(), oracleShortfalls: [], unprovenQueryReceivers: [], unresolvedImports: [], unresolvedQuerySites: [], unparseableSql: [], unprovenModules: [] };
53
54
  const neededFormats = new Set();
54
55
  for (const rule of active) {
55
56
  for (const f of rule.needs.formats)
@@ -109,23 +110,26 @@ export async function runPhaseModel(filePaths, thresholdsByRule, infra) {
109
110
  *
110
111
  * @param files - The already-read input files to parse, process, and analyze.
111
112
  * @param thresholdsByRule - The resolved per-rule threshold map.
112
- * @param infra - The optional corpus-level inputs (project root, index, workers).
113
+ * @param infra - The corpus-level inputs (project root, index, workers).
113
114
  * @param unread - The traverse phase's walk-level unread-source reasons (dialect,
114
115
  * read-failure, unknown-extension), merged into the `unread-style-sources`
115
116
  * fact ahead of the corpus producer's table-derived content-level reasons.
116
117
  * @returns The migrated rules' findings and the per-file fact completeness map.
117
118
  */
118
119
  export async function runPhaseModelOverFiles(files, thresholdsByRule, infra, unread = []) {
119
- const { facts, incompleteFacts, oracleShortfalls, unprovenQueryReceivers, unresolvedImports, unresolvedQuerySites, unparseableSql } = await buildFacts(files, infra, unread);
120
- const findings = await analyzeAll(facts, thresholdsByRule, infra);
120
+ const { facts, incompleteFacts, oracleShortfalls, unprovenQueryReceivers, unresolvedImports, unresolvedQuerySites, unparseableSql, unprovenModules } = await buildFacts(files, infra, unread);
121
+ const { findings, diagnostics } = await analyzeAll(facts, thresholdsByRule, infra);
121
122
  return {
122
123
  findings,
124
+ diagnostics,
125
+ facts,
123
126
  incompleteFacts,
124
127
  oracleShortfalls,
125
128
  unprovenQueryReceivers,
126
129
  unresolvedImports,
127
130
  unresolvedQuerySites,
128
131
  unparseableSql,
132
+ unprovenModules,
129
133
  };
130
134
  }
131
135
  /** The migrated rules this run should serve: all, or the enabled subset. */
@@ -231,7 +235,7 @@ async function buildFacts(files, infra, unread = []) {
231
235
  const twTokens = tokensToStyleTokens(loadTailwindConfig(projectRoot), projectRoot);
232
236
  if (twTokens.length > 0) {
233
237
  const acc = facts.get('style-declarations') ?? [];
234
- acc.push({ declarations: [], tokens: twTokens, classUsage: [], unreadSources: [] });
238
+ acc.push({ declarations: [], tokens: twTokens, classUsage: [], definedClasses: [], unreadSources: [] });
235
239
  facts.set('style-declarations', acc);
236
240
  }
237
241
  }
@@ -293,6 +297,11 @@ async function buildFacts(files, infra, unread = []) {
293
297
  facts.set('unread-style-sources', [...unread, ...content]);
294
298
  }
295
299
  const coverage = deriveCoverageDiagnostics(facts, infra, handleVerdictCache, ambientInterfaceFields);
300
+ // Spec 68 §8 — the `unreferenced-module` unproven surface: modules with no
301
+ // resolved importer while the graph has a computed-specifier dynamic import.
302
+ // Derived from the same facts the rule reads, so it stays consistent with the
303
+ // rule's withhold-the-finding half. Absent facts degrade to `[]`.
304
+ const unprovenModules = computeUnprovenModules(facts.get('file-imports') ?? [], facts.get('reachability') ?? { importersOf: {}, packageEntryPoints: [] });
296
305
  return {
297
306
  facts,
298
307
  incompleteFacts,
@@ -301,6 +310,7 @@ async function buildFacts(files, infra, unread = []) {
301
310
  unresolvedImports: coverage.unresolvedImports,
302
311
  unresolvedQuerySites: coverage.unresolvedQuerySites,
303
312
  unparseableSql: coverage.unparseableSql,
313
+ unprovenModules,
304
314
  };
305
315
  }
306
316
  /**
@@ -424,6 +434,13 @@ async function processFile(input, fileKinds, projectRoot, infra) {
424
434
  if (parsed && infra?.sqlDialect) {
425
435
  parsed = { ...parsed, sqlDialect: infra.sqlDialect };
426
436
  }
437
+ // Item B (reissued) — attach the once-per-run resolved vendor surfaces to the
438
+ // parsed file so the loop-query / data-access producers read the installed
439
+ // vendor's own declarations. Absent (slice tests / no vendor installed) the
440
+ // producers run on the empty surface (unproven), never a fallback list.
441
+ if (parsed && infra?.vendorSurfaces) {
442
+ parsed = { ...parsed, vendorSurfaces: infra.vendorSurfaces };
443
+ }
427
444
  const fragments = new Map();
428
445
  const incomplete = [];
429
446
  const shortfalls = [];
@@ -473,12 +490,20 @@ async function processFile(input, fileKinds, projectRoot, infra) {
473
490
  async function analyzeAll(facts, thresholdsByRule, infra) {
474
491
  await infra?.beforeAnalyze?.();
475
492
  const findings = [];
493
+ const diagnostics = [];
476
494
  for (const rule of activeRules(infra?.enabledRules)) {
477
495
  const ruleFacts = Object.fromEntries(rule.needs.facts.map((f) => [f, facts.get(f)]));
478
496
  const ctx = {
479
497
  facts: ruleFacts,
480
498
  formats: rule.needs.formats,
481
499
  thresholds: thresholdsByRule.get(rule.id) ?? {},
500
+ projectRoot: infra.projectRoot,
501
+ // §15 — a rule that cannot run pushes its coverage diagnostic onto the
502
+ // run's single diagnostic channel; collected here and carried out on the
503
+ // result rather than left to each rule's private return shape.
504
+ emitDiagnostic: (diagnostic) => {
505
+ diagnostics.push(diagnostic);
506
+ },
482
507
  };
483
508
  // Spec 38 R2 — per-rule timing on the phase path (the legacy `withRuleTiming`
484
509
  // wrappers no longer run for migrated rules). Records the full async analyze
@@ -486,6 +511,6 @@ async function analyzeAll(facts, thresholdsByRule, infra) {
486
511
  // rule again, not `(no rules recorded)`.
487
512
  findings.push(...await withRuleTimingAsync(rule.id, () => rule.analyze(ctx)));
488
513
  }
489
- return findings;
514
+ return { findings, diagnostics };
490
515
  }
491
516
  //# sourceMappingURL=phaseModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"phaseModel.js","sourceRoot":"","sources":["../../src/phase/phaseModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phaseModel.js","sourceRoot":"","sources":["../../src/phase/phaseModel.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"producers.d.ts","sourceRoot":"","sources":["../../src/phase/producers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,gBAAgB,EAKhB,cAAc,EAId,gBAAgB,EAChB,eAAe,EACf,MAAM,EACN,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACd,MAAM,YAAY,CAAC;AAoFpB;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,CAAC,IAAI,YAAY,GAAG;QAAE,QAAQ,EAAE,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;KAAE;CAC3F,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,CAAC,IAAI,cAAc,GAAG,eAAe,CAAC,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;CACxE,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,SAAS,GAAG,MAAM,OAAO,gBAAgB,CAAC;AA+FtF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4OC,CAAC;AAUxB,eAAO,MAAM,gBAAgB;;;;;;;;;kEAKH,cAAc;;;;;;;;YAwGpB,gBAAgB;;;;;;;;;;YAyBhB,eAAe,EAAE;;;;;;;;YAWjB,oBAAoB,EAAE;;;;;;;;YActB,eAAe,EAAE;;;;;;;;iEA+BZ,gBAAgB;;;;;;;;iEAwBhB,aAAa;;;;;;kFAwCZ,WAAW,EAAE;;;;;;kFAoBb,YAAY;;;;;;kFA6BZ,oBAAoB;;;;;;;;YAmD1B,kBAAkB,EAAE;;;;;;;;YAmCpB,qBAAqB,EAAE;;;;;;;;;;;kEA4BjB,sBAAsB;;;;;;;;;;;iEAiCvB,aAAa,EAAE;;;;;;;;;;;iEA0Bf,eAAe,EAAE;;;;;;;;;;;iEA6BjB,aAAa,EAAE;;;;;;;;;;;iEAyBf,aAAa,EAAE;;CAcX,CAAC;AAE9B;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,YAAY,EACpD,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,MAAM,GACb,aAAa,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAGnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,IAAI,SAAS;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,CAQrF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDW,CAAC"}
1
+ {"version":3,"file":"producers.d.ts","sourceRoot":"","sources":["../../src/phase/producers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,aAAa,EACb,eAAe,EACf,gBAAgB,EAKhB,cAAc,EAId,gBAAgB,EAChB,eAAe,EACf,MAAM,EACN,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACd,MAAM,YAAY,CAAC;AAqFpB;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,CAAC,IAAI,YAAY,GAAG;QAAE,QAAQ,EAAE,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;KAAE;CAC3F,CAAC;AAEF,gFAAgF;AAChF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,CAAC,IAAI,cAAc,GAAG,eAAe,CAAC,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;CACxE,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,SAAS,GAAG,MAAM,OAAO,gBAAgB,CAAC;AA+FtF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4OC,CAAC;AAUxB,eAAO,MAAM,gBAAgB;;;;;;;;;kEAKH,cAAc;;;;;;;;YAwGpB,gBAAgB;;;;;;;;;;YAyBhB,eAAe,EAAE;;;;;;;;YAWjB,oBAAoB,EAAE;;;;;;;;YActB,eAAe,EAAE;;;;;;;;iEA+BZ,gBAAgB;;;;;;;;iEAwBhB,aAAa;;;;;;kFAwCZ,WAAW,EAAE;;;;;;kFAoBb,YAAY;;;;;;kFA6BZ,oBAAoB;;;;;;;;YAuD1B,kBAAkB,EAAE;;;;;;;;YAsCpB,qBAAqB,EAAE;;;;;;;;;;;kEA4BjB,sBAAsB;;;;;;;;;;;iEAiCvB,aAAa,EAAE;;;;;;;;;;;iEA0Bf,eAAe,EAAE;;;;;;;;;;;iEA6BjB,aAAa,EAAE;;;;;;;;;;;iEAyBf,aAAa,EAAE;;CAcX,CAAC;AAE9B;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,YAAY,EACpD,IAAI,EAAE,CAAC,EACP,MAAM,EAAE,MAAM,GACb,aAAa,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAGnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,IAAI,SAAS;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAAE,CAQrF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDW,CAAC"}
@@ -44,6 +44,7 @@ import { extractSecurityCandidates } from './securityCandidates.js';
44
44
  import { extractStylesCss } from './stylesCss.js';
45
45
  import { extractStylesSource } from './stylesSource.js';
46
46
  import { extractStylesMarkup } from './stylesMarkup.js';
47
+ import { harvestDefinedClasses } from '../styles/definedClasses.js';
47
48
  import { extractDataAccessCallCandidates } from './dataAccessCallsCandidates.js';
48
49
  import { extractLoopQueryRawCandidates } from './loopQueryCandidates.js';
49
50
  import { extractDynamicSql } from './dynamicSql.js';
@@ -733,12 +734,16 @@ export const CORPUS_PRODUCERS = {
733
734
  },
734
735
  // `defined-classes` (styles/undefined-class) — re-derived from the
735
736
  // `style-declarations` phase fact rather than the `style_defined_classes`
736
- // index table (Item 4 2b: style-declarations → defined-classes). Every writer
737
- // of `style_defined_classes` (source CSS-in-JS, compiled CSS, other extractable
738
- // files) derives the class name by the SAME regex `/\.([a-zA-Z0-9_-]+)/g` over
739
- // the declaration's selector `context`, so the phase fact reproduces the table
740
- // byte-for-byte: group by class name, keep MIN(file_path). `context`/`filePath`
741
- // are plain data already on `StylesDeclaration`.
737
+ // index table (Item 4 2b: style-declarations → defined-classes). The class name
738
+ // comes from one of three sources, chosen by file kind: CSS/SCSS read the
739
+ // parser's class-selector walk (`classUsage`); markup reads the CSS-parser
740
+ // harvest of its embedded `<style>` blocks (`definedClasses`, produced by
741
+ // `harvestMarkupStyleClasses`); TS/JS source reads the CSS-parser harvest of
742
+ // its CSS-in-JS template bodies (`definedClasses`, produced by
743
+ // `harvestCssInJsStyleClasses`). All three exclude keyframes structurally (the
744
+ // parser's class-selector walk) — no selector scrape survives on any path. The
745
+ // phase fact reproduces the table byte-for-byte: group by class name, keep
746
+ // MIN(file_path).
742
747
  //
743
748
  // Parity notes: (1) the index producer's MIN(file_path) used SQLite BINARY
744
749
  // collation (UTF-8 byte order); JS `<` is UTF-16 code-unit order — identical
@@ -753,17 +758,19 @@ export const CORPUS_PRODUCERS = {
753
758
  process(facts) {
754
759
  const byClass = new Map(); // className -> MIN(file_path)
755
760
  for (const f of facts['style-declarations']) {
756
- for (const d of f.declarations) {
757
- const ctx = d.context;
758
- if (!ctx)
759
- continue;
760
- for (const m of ctx.matchAll(/\.([a-zA-Z0-9_-]+)/g)) {
761
- const className = m[1];
762
- const fp = d.filePath;
763
- const prev = byClass.get(className);
764
- if (prev === undefined || fp < prev)
765
- byClass.set(className, fp);
766
- }
761
+ const anyPath = f.declarations[0]?.filePath ?? f.classUsage[0]?.filePath ?? f.definedClasses?.[0]?.filePath;
762
+ const isCss = anyPath ? /\.(css|scss)$/i.test(anyPath) : false;
763
+ // CSS/SCSS definitions come from the parser walk in `classUsage`. Markup
764
+ // and TS/JS source both carry their parser harvest in `definedClasses`
765
+ // (embedded `<style>` blocks and CSS-in-JS templates respectively) — never
766
+ // the regex selector scan over `declarations[].context`.
767
+ const refs = isCss
768
+ ? harvestDefinedClasses(f.declarations, f.classUsage, true)
769
+ : f.definedClasses;
770
+ for (const { className, filePath } of refs) {
771
+ const prev = byClass.get(className);
772
+ if (prev === undefined || filePath < prev)
773
+ byClass.set(className, filePath);
767
774
  }
768
775
  }
769
776
  return [...byClass.entries()]
@@ -1 +1 @@
1
- {"version":3,"file":"producers.js","sourceRoot":"","sources":["../../src/phase/producers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"producers.js","sourceRoot":"","sources":["../../src/phase/producers.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@
13
13
  * `classifyImportSpecifier` / `DEFAULT_VIRTUAL_MODULES` are imported (they
14
14
  * survive §15); the walk bodies and filename heuristics below are re-homed.
15
15
  */
16
- import type { FileImportsFact, ReachabilityFact } from './types.js';
16
+ import type { FileImportsFact, ReachabilityFact, UnprovenModule } from './types.js';
17
17
  /**
18
18
  * True when the file path matches a test-file convention (`.test.`/`.spec.`/
19
19
  * `__tests__`/`/test/`/`/tests/`/`_test.go`).
@@ -58,4 +58,47 @@ export interface ReachabilityOptions {
58
58
  * @returns The reverse import adjacency and the package entry-point set.
59
59
  */
60
60
  export declare function computeReachability(fileImports: readonly FileImportsFact[], options: ReachabilityOptions): ReachabilityFact;
61
+ /**
62
+ * Derive the per-file reachability ranking the audit runner uses to order
63
+ * findings within a severity tier. 1.0 for a framework/package entry point
64
+ * (`isEntryPointFile` route/page/worker/script/etc. or a package.json entry),
65
+ * 0.5 for a file imported by another, 0.0 for a file the graph references by
66
+ * nothing (dead code). Only corpus files are scored; a file absent from the
67
+ * corpus (a finding on something the graph never saw) is omitted so the caller
68
+ * can fall back to a neutral 0.5 and never demote on absent data.
69
+ *
70
+ * The filename heuristic is the same `isEntryPointFile` the `unreferenced-module`
71
+ * rule uses to withhold a dead-code finding: a `/scripts/` or `worker.ts` file
72
+ * that nothing imports is a framework entry point, not dead code, and must rank
73
+ * live (1.0) rather than dead (0.0).
74
+ *
75
+ * @param fileImports - The per-file import facts (the full corpus file set).
76
+ * @param reachability - The reverse import adjacency and package entry points.
77
+ * @returns A score per corpus file, keyed by its path.
78
+ */
79
+ export declare function computeReachabilityScores(fileImports: readonly FileImportsFact[], reachability: ReachabilityFact): Map<string, number>;
80
+ /**
81
+ * True when the corpus's import graph carries at least one computed-specifier
82
+ * dynamic import (`import(someVar)` / `require(filepath)`). Such an import cannot
83
+ * become a resolved edge, so its target is unknown — which makes the
84
+ * "imported by nothing" conclusion unsound for *every* module. `unreferenced-module`
85
+ * reads this flag to withhold a dead-code finding in that case.
86
+ */
87
+ export declare function hasUnresolvedDynamicImports(fileImports: readonly FileImportsFact[]): boolean;
88
+ /**
89
+ * The modules `unreferenced-module` reports `unproven` instead of dead: a module
90
+ * with no resolved importer (and not a test/entry point) while the graph carries
91
+ * an unresolved dynamic import. Empty when the graph has no computed-specifier
92
+ * import — then the ordinary dead-code findings are sound and this disposition is
93
+ * not needed. This is the coverage-diagnostic half of the split; the rule's
94
+ * `analyze` reads {@link hasUnresolvedDynamicImports} to suppress the finding half.
95
+ *
96
+ * @param fileImports - The corpus's per-file import facts (each carries the file
97
+ * path, whether it has exports, and its unresolved dynamic imports).
98
+ * @param reachability - The corpus import graph (package entry points plus the
99
+ * per-module resolved importer lists).
100
+ * @returns The modules that cannot be proven dead, each carrying a file-level
101
+ * `unproven` disposition and the shared reason.
102
+ */
103
+ export declare function computeUnprovenModules(fileImports: readonly FileImportsFact[], reachability: ReachabilityFact): UnprovenModule[];
61
104
  //# sourceMappingURL=reachability.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reachability.d.ts","sourceRoot":"","sources":["../../src/phase/reachability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEpE;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAK9C;AAWD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAUpD;AAED,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,+CAA+C;IAC/C,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8DAA8D;IAC9D,eAAe,CAAC,EAAE;QAChB,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACjC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;CACrB;AAeD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,SAAS,eAAe,EAAE,EACvC,OAAO,EAAE,mBAAmB,GAC3B,gBAAgB,CAoBlB"}
1
+ {"version":3,"file":"reachability.d.ts","sourceRoot":"","sources":["../../src/phase/reachability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEpF;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAK9C;AAWD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAUpD;AAED,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,+CAA+C;IAC/C,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,8DAA8D;IAC9D,eAAe,CAAC,EAAE;QAChB,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACjC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzC,6BAA6B;IAC7B,WAAW,EAAE,MAAM,CAAC;CACrB;AAeD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,SAAS,eAAe,EAAE,EACvC,OAAO,EAAE,mBAAmB,GAC3B,gBAAgB,CAoBlB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,SAAS,eAAe,EAAE,EACvC,YAAY,EAAE,gBAAgB,GAC7B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAYrB;AAMD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAE5F;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,SAAS,eAAe,EAAE,EACvC,YAAY,EAAE,gBAAgB,GAC7B,cAAc,EAAE,CAclB"}
@@ -101,4 +101,83 @@ export function computeReachability(fileImports, options) {
101
101
  }
102
102
  return { importersOf: plain, packageEntryPoints: [...packageEntries] };
103
103
  }
104
+ /**
105
+ * Derive the per-file reachability ranking the audit runner uses to order
106
+ * findings within a severity tier. 1.0 for a framework/package entry point
107
+ * (`isEntryPointFile` route/page/worker/script/etc. or a package.json entry),
108
+ * 0.5 for a file imported by another, 0.0 for a file the graph references by
109
+ * nothing (dead code). Only corpus files are scored; a file absent from the
110
+ * corpus (a finding on something the graph never saw) is omitted so the caller
111
+ * can fall back to a neutral 0.5 and never demote on absent data.
112
+ *
113
+ * The filename heuristic is the same `isEntryPointFile` the `unreferenced-module`
114
+ * rule uses to withhold a dead-code finding: a `/scripts/` or `worker.ts` file
115
+ * that nothing imports is a framework entry point, not dead code, and must rank
116
+ * live (1.0) rather than dead (0.0).
117
+ *
118
+ * @param fileImports - The per-file import facts (the full corpus file set).
119
+ * @param reachability - The reverse import adjacency and package entry points.
120
+ * @returns A score per corpus file, keyed by its path.
121
+ */
122
+ export function computeReachabilityScores(fileImports, reachability) {
123
+ const entrySet = new Set(reachability.packageEntryPoints);
124
+ const importersOf = reachability.importersOf;
125
+ const scores = new Map();
126
+ for (const info of fileImports) {
127
+ const file = info.file;
128
+ if (isEntryPointFile(file) || entrySet.has(file))
129
+ scores.set(file, 1);
130
+ else if ((importersOf[file]?.length ?? 0) > 0)
131
+ scores.set(file, 0.5);
132
+ else
133
+ scores.set(file, 0);
134
+ }
135
+ return scores;
136
+ }
137
+ /** The reason `unreferenced-module` reports a module as `unproven` rather than dead. */
138
+ const UNPROVEN_REASON = 'A computed specifier could not be resolved, so this module may be imported dynamically and is not provably dead code.';
139
+ /**
140
+ * True when the corpus's import graph carries at least one computed-specifier
141
+ * dynamic import (`import(someVar)` / `require(filepath)`). Such an import cannot
142
+ * become a resolved edge, so its target is unknown — which makes the
143
+ * "imported by nothing" conclusion unsound for *every* module. `unreferenced-module`
144
+ * reads this flag to withhold a dead-code finding in that case.
145
+ */
146
+ export function hasUnresolvedDynamicImports(fileImports) {
147
+ return fileImports.some((f) => f.unresolvedDynamicImports.length > 0);
148
+ }
149
+ /**
150
+ * The modules `unreferenced-module` reports `unproven` instead of dead: a module
151
+ * with no resolved importer (and not a test/entry point) while the graph carries
152
+ * an unresolved dynamic import. Empty when the graph has no computed-specifier
153
+ * import — then the ordinary dead-code findings are sound and this disposition is
154
+ * not needed. This is the coverage-diagnostic half of the split; the rule's
155
+ * `analyze` reads {@link hasUnresolvedDynamicImports} to suppress the finding half.
156
+ *
157
+ * @param fileImports - The corpus's per-file import facts (each carries the file
158
+ * path, whether it has exports, and its unresolved dynamic imports).
159
+ * @param reachability - The corpus import graph (package entry points plus the
160
+ * per-module resolved importer lists).
161
+ * @returns The modules that cannot be proven dead, each carrying a file-level
162
+ * `unproven` disposition and the shared reason.
163
+ */
164
+ export function computeUnprovenModules(fileImports, reachability) {
165
+ if (!hasUnresolvedDynamicImports(fileImports))
166
+ return [];
167
+ const entrySet = new Set(reachability.packageEntryPoints);
168
+ const importersOf = reachability.importersOf;
169
+ const out = [];
170
+ for (const info of fileImports) {
171
+ if (!info.hasExports)
172
+ continue;
173
+ if (isTestFile(info.file))
174
+ continue;
175
+ if (isEntryPointFile(info.file) || entrySet.has(info.file))
176
+ continue;
177
+ if ((importersOf[info.file]?.length ?? 0) > 0)
178
+ continue;
179
+ out.push({ file: info.file, line: 1, reason: UNPROVEN_REASON });
180
+ }
181
+ return out;
182
+ }
104
183
  //# sourceMappingURL=reachability.js.map