code-auditor-mcp 5.0.2 → 5.3.3

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 (419) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +326 -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 +35 -14
  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/UniversalDRYAnalyzer.d.ts +0 -2
  27. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -1
  28. package/dist/analyzers/universal/UniversalDRYAnalyzer.js +4 -5
  29. package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -1
  30. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +32 -15
  31. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  32. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +189 -115
  33. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  34. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +0 -2
  35. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  36. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +0 -5
  37. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
  38. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts +2 -10
  39. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts.map +1 -1
  40. package/dist/analyzers/universal/UniversalStylesAnalyzer.js +7 -49
  41. package/dist/analyzers/universal/UniversalStylesAnalyzer.js.map +1 -1
  42. package/dist/analyzers/universal/schema/codeAnalysis.d.ts.map +1 -1
  43. package/dist/analyzers/universal/schema/codeAnalysis.js +51 -3
  44. package/dist/analyzers/universal/schema/codeAnalysis.js.map +1 -1
  45. package/dist/analyzers/universal/schema/config.d.ts.map +1 -1
  46. package/dist/analyzers/universal/schema/config.js +0 -2
  47. package/dist/analyzers/universal/schema/config.js.map +1 -1
  48. package/dist/analyzers/universal/schema/types.d.ts +0 -2
  49. package/dist/analyzers/universal/schema/types.d.ts.map +1 -1
  50. package/dist/analyzers/vendorSurfaces.d.ts +126 -0
  51. package/dist/analyzers/vendorSurfaces.d.ts.map +1 -0
  52. package/dist/analyzers/vendorSurfaces.js +580 -0
  53. package/dist/analyzers/vendorSurfaces.js.map +1 -0
  54. package/dist/auditRunner.d.ts +9 -1
  55. package/dist/auditRunner.d.ts.map +1 -1
  56. package/dist/auditRunner.js +198 -146
  57. package/dist/auditRunner.js.map +1 -1
  58. package/dist/cacheGc.d.ts +88 -0
  59. package/dist/cacheGc.d.ts.map +1 -0
  60. package/dist/cacheGc.js +196 -0
  61. package/dist/cacheGc.js.map +1 -0
  62. package/dist/churn/churnExtractor.d.ts +0 -1
  63. package/dist/churn/churnExtractor.d.ts.map +1 -1
  64. package/dist/churn/churnExtractor.js +2 -4
  65. package/dist/churn/churnExtractor.js.map +1 -1
  66. package/dist/cli.d.ts +1 -1
  67. package/dist/cli.d.ts.map +1 -1
  68. package/dist/cli.js +260 -47
  69. package/dist/cli.js.map +1 -1
  70. package/dist/codeIndex/migrations.d.ts.map +1 -1
  71. package/dist/codeIndex/migrations.js +4 -3
  72. package/dist/codeIndex/migrations.js.map +1 -1
  73. package/dist/codeIndexDB.d.ts +11 -2
  74. package/dist/codeIndexDB.d.ts.map +1 -1
  75. package/dist/codeIndexDB.js +27 -2
  76. package/dist/codeIndexDB.js.map +1 -1
  77. package/dist/config/configLoader.d.ts +60 -7
  78. package/dist/config/configLoader.d.ts.map +1 -1
  79. package/dist/config/configLoader.js +252 -60
  80. package/dist/config/configLoader.js.map +1 -1
  81. package/dist/config/defaults.d.ts +137 -43
  82. package/dist/config/defaults.d.ts.map +1 -1
  83. package/dist/config/defaults.js +174 -101
  84. package/dist/config/defaults.js.map +1 -1
  85. package/dist/config/effectiveConfig.d.ts +1 -1
  86. package/dist/config/effectiveConfig.d.ts.map +1 -1
  87. package/dist/config/effectiveConfig.js +4 -6
  88. package/dist/config/effectiveConfig.js.map +1 -1
  89. package/dist/config/pathProfiles.d.ts +4 -3
  90. package/dist/config/pathProfiles.d.ts.map +1 -1
  91. package/dist/config/pathProfiles.js +3 -2
  92. package/dist/config/pathProfiles.js.map +1 -1
  93. package/dist/constants.d.ts +2 -1
  94. package/dist/constants.d.ts.map +1 -1
  95. package/dist/constants.js +4 -0
  96. package/dist/constants.js.map +1 -1
  97. package/dist/daemon/main.d.ts +0 -1
  98. package/dist/daemon/main.d.ts.map +1 -1
  99. package/dist/daemon/main.js +11 -4
  100. package/dist/daemon/main.js.map +1 -1
  101. package/dist/dataPaths.d.ts +32 -9
  102. package/dist/dataPaths.d.ts.map +1 -1
  103. package/dist/dataPaths.js +69 -16
  104. package/dist/dataPaths.js.map +1 -1
  105. package/dist/hookLog.d.ts +54 -0
  106. package/dist/hookLog.d.ts.map +1 -0
  107. package/dist/hookLog.js +105 -0
  108. package/dist/hookLog.js.map +1 -0
  109. package/dist/hookLogPath.generated.d.ts +3 -0
  110. package/dist/hookLogPath.generated.d.ts.map +1 -0
  111. package/dist/hookLogPath.generated.js +8 -0
  112. package/dist/hookLogPath.generated.js.map +1 -0
  113. package/dist/index.d.ts +0 -5
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +0 -7
  116. package/dist/index.js.map +1 -1
  117. package/dist/installConfig.d.ts +15 -2
  118. package/dist/installConfig.d.ts.map +1 -1
  119. package/dist/installConfig.js +17 -2
  120. package/dist/installConfig.js.map +1 -1
  121. package/dist/installer.d.ts.map +1 -1
  122. package/dist/installer.js +2 -1
  123. package/dist/installer.js.map +1 -1
  124. package/dist/languages/adapterBridge.d.ts +11 -0
  125. package/dist/languages/adapterBridge.d.ts.map +1 -1
  126. package/dist/languages/adapterBridge.js +11 -0
  127. package/dist/languages/adapterBridge.js.map +1 -1
  128. package/dist/languages/types.d.ts +8 -0
  129. package/dist/languages/types.d.ts.map +1 -1
  130. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts +13 -0
  131. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -1
  132. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +135 -18
  133. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -1
  134. package/dist/ledger.d.ts +7 -0
  135. package/dist/ledger.d.ts.map +1 -1
  136. package/dist/ledger.js +7 -0
  137. package/dist/ledger.js.map +1 -1
  138. package/dist/mcp-tools/workflowGuide.js +8 -8
  139. package/dist/mcp-tools/workflowGuide.js.map +1 -1
  140. package/dist/mcp-tools-shared.d.ts.map +1 -1
  141. package/dist/mcp-tools-shared.js +5 -2
  142. package/dist/mcp-tools-shared.js.map +1 -1
  143. package/dist/mcp-ui-simple.d.ts +5 -0
  144. package/dist/mcp-ui-simple.d.ts.map +1 -1
  145. package/dist/mcp-ui-simple.js +9 -2
  146. package/dist/mcp-ui-simple.js.map +1 -1
  147. package/dist/mcp.d.ts +0 -1
  148. package/dist/mcp.d.ts.map +1 -1
  149. package/dist/mcp.js +36 -33
  150. package/dist/mcp.js.map +1 -1
  151. package/dist/mcpAuditJobs.d.ts +10 -0
  152. package/dist/mcpAuditJobs.d.ts.map +1 -1
  153. package/dist/mcpAuditJobs.js +10 -1
  154. package/dist/mcpAuditJobs.js.map +1 -1
  155. package/dist/mcpAutoIndex.d.ts.map +1 -1
  156. package/dist/mcpAutoIndex.js +2 -1
  157. package/dist/mcpAutoIndex.js.map +1 -1
  158. package/dist/mcpDiagnostics.d.ts +2 -0
  159. package/dist/mcpDiagnostics.d.ts.map +1 -1
  160. package/dist/mcpDiagnostics.js +2 -0
  161. package/dist/mcpDiagnostics.js.map +1 -1
  162. package/dist/phase/candidates.d.ts +53 -0
  163. package/dist/phase/candidates.d.ts.map +1 -0
  164. package/dist/phase/candidates.js +67 -0
  165. package/dist/phase/candidates.js.map +1 -0
  166. package/dist/phase/colorMath.d.ts +18 -5
  167. package/dist/phase/colorMath.d.ts.map +1 -1
  168. package/dist/phase/colorMath.js +88 -5
  169. package/dist/phase/colorMath.js.map +1 -1
  170. package/dist/phase/dataAccessCallsCandidates.js +1 -1
  171. package/dist/phase/dataAccessCallsCandidates.js.map +1 -1
  172. package/dist/phase/goFunctionAnalysis.d.ts +2 -2
  173. package/dist/phase/goFunctionAnalysis.js +2 -2
  174. package/dist/phase/goFunctions.d.ts +2 -2
  175. package/dist/phase/goFunctions.js +2 -2
  176. package/dist/phase/goImports.d.ts +2 -2
  177. package/dist/phase/goImports.js +2 -2
  178. package/dist/phase/goSwitches.d.ts +2 -2
  179. package/dist/phase/goSwitches.js +2 -2
  180. package/dist/phase/imports.d.ts.map +1 -1
  181. package/dist/phase/imports.js +1 -0
  182. package/dist/phase/imports.js.map +1 -1
  183. package/dist/phase/loopQueryCandidates.js +1 -1
  184. package/dist/phase/loopQueryCandidates.js.map +1 -1
  185. package/dist/phase/oracles.d.ts +28 -0
  186. package/dist/phase/oracles.d.ts.map +1 -1
  187. package/dist/phase/oracles.js +28 -0
  188. package/dist/phase/oracles.js.map +1 -1
  189. package/dist/phase/phaseModel.d.ts +47 -8
  190. package/dist/phase/phaseModel.d.ts.map +1 -1
  191. package/dist/phase/phaseModel.js +44 -8
  192. package/dist/phase/phaseModel.js.map +1 -1
  193. package/dist/phase/producers.d.ts.map +1 -1
  194. package/dist/phase/producers.js +24 -17
  195. package/dist/phase/producers.js.map +1 -1
  196. package/dist/phase/reachability.d.ts +44 -1
  197. package/dist/phase/reachability.d.ts.map +1 -1
  198. package/dist/phase/reachability.js +79 -0
  199. package/dist/phase/reachability.js.map +1 -1
  200. package/dist/phase/rules/conventions.d.ts.map +1 -1
  201. package/dist/phase/rules/conventions.js +6 -2
  202. package/dist/phase/rules/conventions.js.map +1 -1
  203. package/dist/phase/rules/crossDomain.d.ts.map +1 -1
  204. package/dist/phase/rules/crossDomain.js +16 -6
  205. package/dist/phase/rules/crossDomain.js.map +1 -1
  206. package/dist/phase/rules/dataAccess.d.ts.map +1 -1
  207. package/dist/phase/rules/dataAccess.js +13 -0
  208. package/dist/phase/rules/dataAccess.js.map +1 -1
  209. package/dist/phase/rules/documentation.d.ts.map +1 -1
  210. package/dist/phase/rules/documentation.js +11 -1
  211. package/dist/phase/rules/documentation.js.map +1 -1
  212. package/dist/phase/rules/dry.d.ts +16 -7
  213. package/dist/phase/rules/dry.d.ts.map +1 -1
  214. package/dist/phase/rules/dry.js +51 -32
  215. package/dist/phase/rules/dry.js.map +1 -1
  216. package/dist/phase/rules/goRules.d.ts +2 -2
  217. package/dist/phase/rules/goRules.js +2 -2
  218. package/dist/phase/rules/secrets.d.ts +22 -8
  219. package/dist/phase/rules/secrets.d.ts.map +1 -1
  220. package/dist/phase/rules/secrets.js +75 -69
  221. package/dist/phase/rules/secrets.js.map +1 -1
  222. package/dist/phase/rules/styles.d.ts +23 -9
  223. package/dist/phase/rules/styles.d.ts.map +1 -1
  224. package/dist/phase/rules/styles.js +61 -15
  225. package/dist/phase/rules/styles.js.map +1 -1
  226. package/dist/phase/rules/unreferencedModule.d.ts.map +1 -1
  227. package/dist/phase/rules/unreferencedModule.js +32 -10
  228. package/dist/phase/rules/unreferencedModule.js.map +1 -1
  229. package/dist/phase/runner.d.ts +16 -7
  230. package/dist/phase/runner.d.ts.map +1 -1
  231. package/dist/phase/runner.js +32 -20
  232. package/dist/phase/runner.js.map +1 -1
  233. package/dist/phase/stringLiterals.d.ts.map +1 -1
  234. package/dist/phase/stringLiterals.js +16 -7
  235. package/dist/phase/stringLiterals.js.map +1 -1
  236. package/dist/phase/stylesCss.d.ts.map +1 -1
  237. package/dist/phase/stylesCss.js +4 -0
  238. package/dist/phase/stylesCss.js.map +1 -1
  239. package/dist/phase/stylesMarkup.d.ts.map +1 -1
  240. package/dist/phase/stylesMarkup.js +4 -0
  241. package/dist/phase/stylesMarkup.js.map +1 -1
  242. package/dist/phase/stylesSource.d.ts.map +1 -1
  243. package/dist/phase/stylesSource.js +6 -0
  244. package/dist/phase/stylesSource.js.map +1 -1
  245. package/dist/phase/testProgram.d.ts +57 -0
  246. package/dist/phase/testProgram.d.ts.map +1 -0
  247. package/dist/phase/testProgram.js +244 -0
  248. package/dist/phase/testProgram.js.map +1 -0
  249. package/dist/phase/typeDeclarations.d.ts +2 -2
  250. package/dist/phase/typeDeclarations.js +2 -2
  251. package/dist/phase/types.d.ts +104 -0
  252. package/dist/phase/types.d.ts.map +1 -1
  253. package/dist/pipeline.d.ts +4 -0
  254. package/dist/pipeline.d.ts.map +1 -1
  255. package/dist/pipeline.js +4 -0
  256. package/dist/pipeline.js.map +1 -1
  257. package/dist/pipelineAdapters.d.ts +1 -171
  258. package/dist/pipelineAdapters.d.ts.map +1 -1
  259. package/dist/pipelineAdapters.js +47 -1281
  260. package/dist/pipelineAdapters.js.map +1 -1
  261. package/dist/reporting/csvReportGenerator.d.ts.map +1 -1
  262. package/dist/reporting/csvReportGenerator.js +0 -6
  263. package/dist/reporting/csvReportGenerator.js.map +1 -1
  264. package/dist/reporting/htmlReportGenerator.d.ts.map +1 -1
  265. package/dist/reporting/htmlReportGenerator.js +0 -4
  266. package/dist/reporting/htmlReportGenerator.js.map +1 -1
  267. package/dist/reporting/jsonReportGenerator.d.ts.map +1 -1
  268. package/dist/reporting/jsonReportGenerator.js +0 -1
  269. package/dist/reporting/jsonReportGenerator.js.map +1 -1
  270. package/dist/reporting/sarifReportGenerator.d.ts.map +1 -1
  271. package/dist/reporting/sarifReportGenerator.js +0 -7
  272. package/dist/reporting/sarifReportGenerator.js.map +1 -1
  273. package/dist/services/auditJobService.d.ts +15 -0
  274. package/dist/services/auditJobService.d.ts.map +1 -1
  275. package/dist/services/auditJobService.js +15 -0
  276. package/dist/services/auditJobService.js.map +1 -1
  277. package/dist/services/projectTaskHelpers.d.ts +7 -0
  278. package/dist/services/projectTaskHelpers.d.ts.map +1 -1
  279. package/dist/services/projectTaskHelpers.js +7 -0
  280. package/dist/services/projectTaskHelpers.js.map +1 -1
  281. package/dist/services/whitelistService.d.ts +28 -0
  282. package/dist/services/whitelistService.d.ts.map +1 -1
  283. package/dist/services/whitelistService.js +28 -0
  284. package/dist/services/whitelistService.js.map +1 -1
  285. package/dist/sqlite/driver.d.ts +17 -1
  286. package/dist/sqlite/driver.d.ts.map +1 -1
  287. package/dist/sqlite/driver.js +28 -5
  288. package/dist/sqlite/driver.js.map +1 -1
  289. package/dist/styles/cssInJsHarvest.d.ts +36 -0
  290. package/dist/styles/cssInJsHarvest.d.ts.map +1 -0
  291. package/dist/styles/cssInJsHarvest.js +78 -0
  292. package/dist/styles/cssInJsHarvest.js.map +1 -0
  293. package/dist/styles/definedClasses.d.ts +95 -0
  294. package/dist/styles/definedClasses.d.ts.map +1 -0
  295. package/dist/styles/definedClasses.js +129 -0
  296. package/dist/styles/definedClasses.js.map +1 -0
  297. package/dist/styles/markupStyleHarvest.d.ts +33 -0
  298. package/dist/styles/markupStyleHarvest.d.ts.map +1 -0
  299. package/dist/styles/markupStyleHarvest.js +73 -0
  300. package/dist/styles/markupStyleHarvest.js.map +1 -0
  301. package/dist/styles/styleExtractor.d.ts +37 -0
  302. package/dist/styles/styleExtractor.d.ts.map +1 -1
  303. package/dist/styles/styleExtractor.js +89 -33
  304. package/dist/styles/styleExtractor.js.map +1 -1
  305. package/dist/styles/styleIndexer.d.ts.map +1 -1
  306. package/dist/styles/styleIndexer.js +11 -10
  307. package/dist/styles/styleIndexer.js.map +1 -1
  308. package/dist/styles/tailwindExpander.d.ts.map +1 -1
  309. package/dist/styles/tailwindExpander.js +31 -10
  310. package/dist/styles/tailwindExpander.js.map +1 -1
  311. package/dist/styles/tailwindUtilityExpander.d.ts +4 -0
  312. package/dist/styles/tailwindUtilityExpander.d.ts.map +1 -1
  313. package/dist/styles/tailwindUtilityExpander.js +4 -0
  314. package/dist/styles/tailwindUtilityExpander.js.map +1 -1
  315. package/dist/telemetry.d.ts +67 -1
  316. package/dist/telemetry.d.ts.map +1 -1
  317. package/dist/telemetry.js +100 -20
  318. package/dist/telemetry.js.map +1 -1
  319. package/dist/types/crossLanguage.d.ts +1 -0
  320. package/dist/types/crossLanguage.d.ts.map +1 -1
  321. package/dist/types.d.ts +73 -56
  322. package/dist/types.d.ts.map +1 -1
  323. package/dist/types.js +4 -4
  324. package/dist/types.js.map +1 -1
  325. package/dist/version.generated.d.ts +1 -1
  326. package/dist/version.generated.js +1 -1
  327. package/examples/.auditrc.example.json +7 -22
  328. package/examples/.auditrc.json +12 -155
  329. package/examples/.code-auditor.json +8 -51
  330. package/examples/nextjs.auditrc.json +7 -34
  331. package/examples/node-api.auditrc.json +6 -46
  332. package/examples/react.auditrc.json +8 -25
  333. package/examples/tolerant-solid.auditrc.json +12 -44
  334. package/package.json +8 -5
  335. package/plugin/.claude-plugin/manifest.json +10 -9
  336. package/plugin/.claude-plugin/plugin.json +1 -1
  337. package/plugin/hooks/hooks.json +4 -4
  338. package/plugin/scripts/hook-audit.sh +25 -10
  339. package/plugin/scripts/hook-common.sh +12 -7
  340. package/plugin/scripts/hook-drift-check.sh +10 -1
  341. package/plugin/scripts/hook-log-path.sh +7 -0
  342. package/plugin/scripts/hook-self-audit.sh +21 -6
  343. package/plugin/scripts/hook-warm.sh +17 -11
  344. package/plugin/skills/code-auditor/SKILL.md +26 -3
  345. package/server.json +2 -2
  346. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts +0 -6
  347. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts.map +0 -1
  348. package/dist/__tests__/fixtures/spec-20/scripts/tool.js +0 -12
  349. package/dist/__tests__/fixtures/spec-20/scripts/tool.js.map +0 -1
  350. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts +0 -7
  351. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts.map +0 -1
  352. package/dist/__tests__/fixtures/spec-20/src/demo-module.js +0 -13
  353. package/dist/__tests__/fixtures/spec-20/src/demo-module.js.map +0 -1
  354. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.d.ts +0 -14
  355. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.d.ts.map +0 -1
  356. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.js +0 -16
  357. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.js.map +0 -1
  358. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.d.ts +0 -15
  359. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.d.ts.map +0 -1
  360. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.js +0 -17
  361. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.js.map +0 -1
  362. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.d.ts +0 -14
  363. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.d.ts.map +0 -1
  364. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.js +0 -19
  365. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.js.map +0 -1
  366. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.d.ts +0 -18
  367. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.d.ts.map +0 -1
  368. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.js +0 -19
  369. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.js.map +0 -1
  370. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.d.ts +0 -19
  371. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.d.ts.map +0 -1
  372. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.js +0 -19
  373. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.js.map +0 -1
  374. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.d.ts +0 -17
  375. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.d.ts.map +0 -1
  376. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.js +0 -19
  377. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.js.map +0 -1
  378. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.d.ts +0 -25
  379. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.d.ts.map +0 -1
  380. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.js +0 -21
  381. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.js.map +0 -1
  382. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.d.ts +0 -15
  383. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.d.ts.map +0 -1
  384. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.js +0 -19
  385. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.js.map +0 -1
  386. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.d.ts +0 -14
  387. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.d.ts.map +0 -1
  388. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.js +0 -14
  389. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.js.map +0 -1
  390. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.d.ts +0 -15
  391. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.d.ts.map +0 -1
  392. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.js +0 -16
  393. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.js.map +0 -1
  394. package/dist/languages/go/analyzer-darwin-amd64 +0 -0
  395. package/dist/languages/go/analyzer-darwin-arm64 +0 -0
  396. package/dist/languages/go/analyzer-linux-amd64 +0 -0
  397. package/dist/languages/go/analyzer-linux-arm64 +0 -0
  398. package/dist/languages/go/analyzer-src/analyzer.go +0 -643
  399. package/dist/languages/go/analyzer-src/dataaccess.go +0 -388
  400. package/dist/languages/go/analyzer-src/go.mod +0 -3
  401. package/dist/languages/go/analyzer-src/indexer.go +0 -268
  402. package/dist/languages/go/analyzer-src/parser.go +0 -461
  403. package/dist/languages/go/analyzer-src/solid.go +0 -311
  404. package/dist/languages/go/analyzer-src/testconventions.go +0 -25
  405. package/dist/languages/go/analyzer-src/types.go +0 -156
  406. package/dist/languages/go/analyzer-windows-amd64.exe +0 -0
  407. package/dist/languages/go/go.mod +0 -7
  408. package/dist/languages/go/main.go +0 -203
  409. package/dist/native/ast-grep-napi.darwin-arm64.node +0 -0
  410. package/dist/native/ast-grep-napi.darwin-x64.node +0 -0
  411. package/dist/native/ast-grep-napi.linux-arm64-gnu.node +0 -0
  412. package/dist/native/ast-grep-napi.linux-arm64-musl.node +0 -0
  413. package/dist/native/ast-grep-napi.linux-x64-gnu.node +0 -0
  414. package/dist/native/ast-grep-napi.linux-x64-musl.node +0 -0
  415. package/dist/native/ast-grep-napi.win32-x64-msvc.node +0 -0
  416. package/dist/native-bootstrap.d.ts +0 -15
  417. package/dist/native-bootstrap.d.ts.map +0 -1
  418. package/dist/native-bootstrap.js +0 -75
  419. package/dist/native-bootstrap.js.map +0 -1
@@ -75,17 +75,20 @@ export function formatFor(path) {
75
75
  * @param projectRoot - The optional project root threaded into the parsed file.
76
76
  * @param sqlDialect - The corpus's named SQL dialect (null means cannot-fire for
77
77
  * the SQL-reading producers: `ddl-declarations` and `data-access-calls`).
78
+ * @param vendorSurfaces - The resolved vendor surfaces, threaded onto the parsed
79
+ * file so the data-access producers know which driver methods resolved.
78
80
  * @returns The parsed file, or `null` when no adapter resolves or the parse fails.
79
81
  */
80
- export async function parseOne(input, projectRoot, sqlDialect) {
82
+ export async function parseOne(input, projectRoot, sqlDialect, vendorSurfaces) {
81
83
  // `.sql` and markup (`.astro`/`.vue`/`.svelte`/`.html`) are the text-only
82
84
  // formats: no grammar, no adapter, no AST. Their sole producers
83
85
  // (ddl-declarations, style-declarations) read `.source`/`.file`, so return a
84
86
  // ParsedFile with neither `ast` nor `adapter`.
85
87
  const format = formatFor(input.path);
86
88
  const sqlDialectSpread = sqlDialect === undefined ? {} : { sqlDialect };
89
+ const vendorSpread = vendorSurfaces ? { vendorSurfaces } : {};
87
90
  if (format === 'sql' || format === 'markup') {
88
- return { file: input.path, format, source: input.content, ...(projectRoot ? { projectRoot } : {}), ...sqlDialectSpread };
91
+ return { file: input.path, format, source: input.content, ...(projectRoot ? { projectRoot } : {}), ...sqlDialectSpread, ...vendorSpread };
89
92
  }
90
93
  const adapter = LanguageRegistry.getInstance().getAdapterForFile(input.path);
91
94
  if (!adapter)
@@ -100,6 +103,7 @@ export async function parseOne(input, projectRoot, sqlDialect) {
100
103
  adapter,
101
104
  ...(projectRoot ? { projectRoot } : {}),
102
105
  ...sqlDialectSpread,
106
+ ...vendorSpread,
103
107
  };
104
108
  }
105
109
  catch {
@@ -118,10 +122,10 @@ export async function parseOne(input, projectRoot, sqlDialect) {
118
122
  * `undefined` for kinds whose producers do not read SQL; `parseOne` treats an
119
123
  * explicit `undefined` as "no dialect" (identical to omitting the argument).
120
124
  */
121
- async function buildFileFact(files, kind, sqlDialect) {
125
+ async function buildFileFact(files, kind, sqlDialect, vendorSurfaces) {
122
126
  const out = [];
123
127
  for (const input of files) {
124
- const parsed = await parseOne(input, undefined, sqlDialect);
128
+ const parsed = await parseOne(input, undefined, sqlDialect, vendorSurfaces);
125
129
  if (!parsed)
126
130
  continue;
127
131
  try {
@@ -155,12 +159,14 @@ export async function buildFileSymbols(files) {
155
159
  * @param facts - The assembled fact context (declared `needs`, union-shaped).
156
160
  * @param formats - The format union the rules may read.
157
161
  * @param thresholds - The resolved thresholds (defaults to `{}`).
162
+ * @param projectRoot - The optional project root threaded to rules that resolve
163
+ * project-local config (the secrets rules derive a file's test-program role).
158
164
  * @returns The rules' findings over the facts.
159
165
  */
160
- async function analyzeWithRules(rules, facts, formats, thresholds) {
166
+ async function analyzeWithRules(rules, facts, formats, thresholds, projectRoot) {
161
167
  const findings = [];
162
168
  for (const rule of rules) {
163
- findings.push(...(await rule.analyze({ facts, formats, thresholds })));
169
+ findings.push(...(await rule.analyze({ facts, formats, thresholds, projectRoot })));
164
170
  }
165
171
  return findings;
166
172
  }
@@ -226,9 +232,9 @@ export async function runDocumentationSlice(files, thresholds) {
226
232
  * the callers name the two kinds (the return type is `FactShapes[PK]`, resolved
227
233
  * by `producerKey`).
228
234
  */
229
- async function buildReceiverConsumer(files, candidateKind, producerKey, sqlDialect) {
235
+ async function buildReceiverConsumer(files, candidateKind, producerKey, sqlDialect, vendorSurfaces) {
230
236
  const [candidates, within, imports, exports, goBindings, activity] = await Promise.all([
231
- buildFileFact(files, candidateKind),
237
+ buildFileFact(files, candidateKind, sqlDialect, vendorSurfaces),
232
238
  buildFileFact(files, 'within-file-provenance'),
233
239
  buildFileFact(files, 'import-specifiers'),
234
240
  buildFileFact(files, 'export-symbols'),
@@ -255,10 +261,11 @@ async function buildReceiverConsumer(files, candidateKind, producerKey, sqlDiale
255
261
  *
256
262
  * @param files - The input files to parse and process.
257
263
  * @param sqlDialect - The corpus's named dialect for SQL parsing, or null/undefined.
264
+ * @param vendorSurfaces - The resolved vendor surfaces threaded into the producers.
258
265
  * @returns The assembled `data-access-calls` corpus fact.
259
266
  */
260
- export async function buildDataAccessCalls(files, sqlDialect) {
261
- return buildReceiverConsumer(files, 'data-access-calls-candidates', 'data-access-calls', sqlDialect ?? null);
267
+ export async function buildDataAccessCalls(files, sqlDialect, vendorSurfaces) {
268
+ return buildReceiverConsumer(files, 'data-access-calls-candidates', 'data-access-calls', sqlDialect ?? null, vendorSurfaces);
262
269
  }
263
270
  /** Analyze the assembled `data-access-calls` + `resolution` facts with the
264
271
  * data-access rules. `missing-org-filter` reads the resolution for Tier 3 (DDL)
@@ -279,11 +286,12 @@ export async function analyzeDataAccessCalls(calls, resolution, thresholds = {})
279
286
  * @param files - The input files to parse and process.
280
287
  * @param thresholds - The data-access rule thresholds (defaults to `{}`).
281
288
  * @param sqlDialect - The corpus's named dialect (null means cannot-fire).
289
+ * @param vendorSurfaces - The resolved vendor surfaces threaded into the producers.
282
290
  * @returns The data-access rules' findings over the assembled facts.
283
291
  */
284
- export async function runDataAccessSlice(files, thresholds, sqlDialect) {
292
+ export async function runDataAccessSlice(files, thresholds, sqlDialect, vendorSurfaces) {
285
293
  const [calls, resolution] = await Promise.all([
286
- buildDataAccessCalls(files, sqlDialect),
294
+ buildDataAccessCalls(files, sqlDialect, vendorSurfaces),
287
295
  buildResolution(files, sqlDialect),
288
296
  ]);
289
297
  return analyzeDataAccessCalls(calls, resolution, thresholds);
@@ -297,10 +305,11 @@ export async function runDataAccessSlice(files, thresholds, sqlDialect) {
297
305
  *
298
306
  * @param files - The input files to parse and process.
299
307
  * @param sqlDialect - The corpus's named dialect (null means cannot-fire).
308
+ * @param vendorSurfaces - The resolved vendor surfaces threaded into the producers.
300
309
  * @returns The assembled `loop-queries` corpus fact.
301
310
  */
302
- export async function buildLoopQueries(files, sqlDialect) {
303
- return buildReceiverConsumer(files, 'loop-query-candidates', 'loop-queries', sqlDialect ?? null);
311
+ export async function buildLoopQueries(files, sqlDialect, vendorSurfaces) {
312
+ return buildReceiverConsumer(files, 'loop-query-candidates', 'loop-queries', sqlDialect ?? null, vendorSurfaces);
304
313
  }
305
314
  /**
306
315
  * Analyze the assembled `loop-queries` fact with the loop-query rule.
@@ -318,10 +327,11 @@ export async function analyzeLoopQueries(facts, thresholds = {}) {
318
327
  * @param files - The input files to parse and process.
319
328
  * @param thresholds - The loop-query rule thresholds (defaults to `{}`).
320
329
  * @param sqlDialect - The corpus's named dialect (null means cannot-fire).
330
+ * @param vendorSurfaces - The resolved vendor surfaces threaded into the producers.
321
331
  * @returns The loop-query rule's findings over the assembled facts.
322
332
  */
323
- export async function runLoopQueriesSlice(files, thresholds, sqlDialect) {
324
- const facts = await buildLoopQueries(files, sqlDialect);
333
+ export async function runLoopQueriesSlice(files, thresholds, sqlDialect, vendorSurfaces) {
334
+ const facts = await buildLoopQueries(files, sqlDialect, vendorSurfaces);
325
335
  return analyzeLoopQueries(facts, thresholds);
326
336
  }
327
337
  // ── dynamic-sql slice (dynamic-sql → dynamic-sql-construction) ──────────────
@@ -872,15 +882,17 @@ export async function buildSecretCandidates(files) {
872
882
  *
873
883
  * @param candidates - The assembled `secret-candidates` fact to analyze.
874
884
  * @param thresholds - The hardcoded-secret rule thresholds (defaults to `{}`).
885
+ * @param projectRoot - The optional project root the rule reads to derive each
886
+ * candidate file's test-program role (skips test files).
875
887
  * @returns The hardcoded-secret rule's findings over the fact.
876
888
  */
877
- export async function analyzeSecrets(candidates, thresholds = {}) {
878
- return analyzeWithRules(secretsRules, { 'secret-candidates': candidates }, ['typescript', 'tsx', 'javascript'], thresholds);
889
+ export async function analyzeSecrets(candidates, thresholds = {}, projectRoot) {
890
+ return analyzeWithRules(secretsRules, { 'secret-candidates': candidates }, ['typescript', 'tsx', 'javascript'], thresholds, projectRoot);
879
891
  }
880
892
  /** The secret-candidates slice: parse → secret-candidates → hardcoded-secret → findings. */
881
- export async function runSecretsSlice(files, thresholds) {
893
+ export async function runSecretsSlice(files, thresholds, projectRoot) {
882
894
  const candidates = await buildSecretCandidates(files);
883
- return analyzeSecrets(candidates, thresholds);
895
+ return analyzeSecrets(candidates, thresholds, projectRoot);
884
896
  }
885
897
  // ── security-candidates slice (security-candidates → 3 defect rules) ────────
886
898
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/phase/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/phase/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stringLiterals.d.ts","sourceRoot":"","sources":["../../src/phase/stringLiterals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAM7D;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,EAAE,CAaxE"}
1
+ {"version":3,"file":"stringLiterals.d.ts","sourceRoot":"","sources":["../../src/phase/stringLiterals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAM7D;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,EAAE,CAsBxE"}
@@ -24,12 +24,21 @@ export function extractStringLiterals(file) {
24
24
  const nodes = file.adapter.findNodes(file.ast, {
25
25
  custom: (node) => node.type === 'string' || node.type === 'template_string',
26
26
  });
27
- return nodes.map((node) => ({
28
- file: file.file,
29
- value: file.adapter.getNodeText(node, file.source),
30
- line: node.location.start.line,
31
- column: node.location.start.column,
32
- enclosingFunction: functionIdentityLabel(findEnclosingFunctionIdentity(node, file.adapter, file.file)),
33
- }));
27
+ return nodes.map((node) => {
28
+ // A `string` node whose parent is a `jsx_attribute` is a markup attribute
29
+ // value (`fill="var(--fleece)"`), not a factorable code literal. `getParent`
30
+ // + `getNodeType` read the AST here, before it is gone. (A `template_string`
31
+ // can only appear in markup inside a `jsx_expression`, so it never qualifies.)
32
+ const parent = file.adapter.getParent(node);
33
+ const isMarkupAttribute = parent !== null && file.adapter.getNodeType(parent) === 'jsx_attribute';
34
+ return {
35
+ file: file.file,
36
+ value: file.adapter.getNodeText(node, file.source),
37
+ line: node.location.start.line,
38
+ column: node.location.start.column,
39
+ enclosingFunction: functionIdentityLabel(findEnclosingFunctionIdentity(node, file.adapter, file.file)),
40
+ isMarkupAttribute,
41
+ };
42
+ });
34
43
  }
35
44
  //# sourceMappingURL=stringLiterals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stringLiterals.js","sourceRoot":"","sources":["../../src/phase/stringLiterals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,+CAA+C,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAa;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;QAC7C,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB;KAC5E,CAAC,CAAC;IACH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAClD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI;QAC9B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM;QAClC,iBAAiB,EAAE,qBAAqB,CACtC,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAC7D;KACF,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"stringLiterals.js","sourceRoot":"","sources":["../../src/phase/stringLiterals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,+CAA+C,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAa;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;QAC7C,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB;KAC5E,CAAC,CAAC;IACH,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,0EAA0E;QAC1E,6EAA6E;QAC7E,6EAA6E;QAC7E,+EAA+E;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,iBAAiB,GAAG,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,eAAe,CAAC;QAClG,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YAClD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI;YAC9B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM;YAClC,iBAAiB,EAAE,qBAAqB,CACtC,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAC7D;YACD,iBAAiB;SAClB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"stylesCss.d.ts","sourceRoot":"","sources":["../../src/phase/stylesCss.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAOjE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,CASrE"}
1
+ {"version":3,"file":"stylesCss.d.ts","sourceRoot":"","sources":["../../src/phase/stylesCss.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAOjE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,CAarE"}
@@ -26,6 +26,10 @@ export function extractStylesCss(file) {
26
26
  declarations: extractDeclarationsFromCSSAst(file.ast, file.adapter, file.file, file.source),
27
27
  tokens: extractTokensFromCSSAst(file.ast, file.adapter, file.file, file.source),
28
28
  classUsage: extractClassUsageFromCSSAst(file.ast, file.adapter, file.file, file.source),
29
+ // CSS/SCSS carry their defined classes in `classUsage` (the parser walk), so
30
+ // the dedicated field is empty; the `defined-classes` producer reads
31
+ // `classUsage` for these.
32
+ definedClasses: [],
29
33
  // No content-level `<style lang>` reason exists in a CSS/SCSS file — that
30
34
  // reason is markup-only, produced by `extractStylesMarkup`.
31
35
  unreadSources: [],
@@ -1 +1 @@
1
- {"version":3,"file":"stylesCss.js","sourceRoot":"","sources":["../../src/phase/stylesCss.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EACL,6BAA6B,EAC7B,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,8BAA8B,CAAC;AAEtC;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC5C,OAAO;QACL,YAAY,EAAE,6BAA6B,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAC3F,MAAM,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAC/E,UAAU,EAAE,2BAA2B,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QACvF,0EAA0E;QAC1E,4DAA4D;QAC5D,aAAa,EAAE,EAAE;KAClB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"stylesCss.js","sourceRoot":"","sources":["../../src/phase/stylesCss.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EACL,6BAA6B,EAC7B,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,8BAA8B,CAAC;AAEtC;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC5C,OAAO;QACL,YAAY,EAAE,6BAA6B,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAC3F,MAAM,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAC/E,UAAU,EAAE,2BAA2B,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QACvF,6EAA6E;QAC7E,qEAAqE;QACrE,0BAA0B;QAC1B,cAAc,EAAE,EAAE;QAClB,0EAA0E;QAC1E,4DAA4D;QAC5D,aAAa,EAAE,EAAE;KAClB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"stylesMarkup.d.ts","sourceRoot":"","sources":["../../src/phase/stylesMarkup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAyB,MAAM,YAAY,CAAC;AAK3F;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB,EAAE,CAe7E"}
1
+ {"version":3,"file":"stylesMarkup.d.ts","sourceRoot":"","sources":["../../src/phase/stylesMarkup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAyB,MAAM,YAAY,CAAC;AAM3F;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB,EAAE,CAkB7E"}
@@ -22,6 +22,7 @@
22
22
  */
23
23
  import { extractDeclarations } from '../styles/styleExtractor.js';
24
24
  import { extractClassUsage } from '../styles/styleIndexer.js';
25
+ import { harvestMarkupStyleClasses } from '../styles/markupStyleHarvest.js';
25
26
  import { loadTailwindConfig } from '../styles/tailwindConfigLoader.js';
26
27
  /**
27
28
  * Extract the per-file styles fact from one markup component file (regex, no AST).
@@ -42,6 +43,9 @@ export function extractStylesMarkup(file) {
42
43
  declarations: extractDeclarations(file.file, null, file.source, undefined, tailwindTokens, unreadSources),
43
44
  tokens: [],
44
45
  classUsage: extractClassUsage(file.file, file.source),
46
+ // Defined classes come from the CSS parser (not the regex selector scan),
47
+ // so keyframe percentages and other non-class dots never enter the catalog.
48
+ definedClasses: harvestMarkupStyleClasses(file.file, file.source),
45
49
  unreadSources,
46
50
  }];
47
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stylesMarkup.js","sourceRoot":"","sources":["../../src/phase/stylesMarkup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW;QACrC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;QAC7C,CAAC,CAAC,SAAS,CAAC;IACd,+EAA+E;IAC/E,8EAA8E;IAC9E,+EAA+E;IAC/E,+DAA+D;IAC/D,MAAM,aAAa,GAA4B,EAAE,CAAC;IAClD,OAAO,CAAC;YACN,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAa,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,CAAC;YAClH,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YACrD,aAAa;SACd,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"stylesMarkup.js","sourceRoot":"","sources":["../../src/phase/stylesMarkup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW;QACrC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;QAC7C,CAAC,CAAC,SAAS,CAAC;IACd,+EAA+E;IAC/E,8EAA8E;IAC9E,+EAA+E;IAC/E,+DAA+D;IAC/D,MAAM,aAAa,GAA4B,EAAE,CAAC;IAClD,OAAO,CAAC;YACN,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAa,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,CAAC;YAClH,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YACrD,0EAA0E;YAC1E,4EAA4E;YAC5E,cAAc,EAAE,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YACjE,aAAa;SACd,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"stylesSource.d.ts","sourceRoot":"","sources":["../../src/phase/stylesSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAKjE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,EAAE,CAY1E"}
1
+ {"version":3,"file":"stylesSource.d.ts","sourceRoot":"","sources":["../../src/phase/stylesSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAMjE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,qBAAqB,EAAE,CAiB1E"}
@@ -27,6 +27,7 @@
27
27
  */
28
28
  import { extractDeclarations } from '../styles/styleExtractor.js';
29
29
  import { extractClassUsage } from '../styles/styleIndexer.js';
30
+ import { harvestCssInJsStyleClasses } from '../styles/cssInJsHarvest.js';
30
31
  import { loadTailwindConfig } from '../styles/tailwindConfigLoader.js';
31
32
  /**
32
33
  * Extract the per-file styles fact from one parsed TS/JS file.
@@ -42,6 +43,11 @@ export function extractStylesSource(file) {
42
43
  declarations: extractDeclarations(file.file, file.adapter, file.source, file.ast, tailwindTokens),
43
44
  tokens: [],
44
45
  classUsage: extractClassUsage(file.file, file.source),
46
+ // TS/JS source carries its defined classes in `definedClasses`, harvested by
47
+ // routing each CSS-in-JS template body through the CSS parser
48
+ // (`harvestCssInJsStyleClasses`) — the same parser path markup `<style>`
49
+ // blocks use, so keyframes are excluded structurally, not by a selector scan.
50
+ definedClasses: harvestCssInJsStyleClasses(file.file, file.source, file.ast),
45
51
  // No content-level `<style lang>` reason exists in TS/JS CSS-in-JS source —
46
52
  // that reason is markup-only, produced by `extractStylesMarkup`.
47
53
  unreadSources: [],
@@ -1 +1 @@
1
- {"version":3,"file":"stylesSource.js","sourceRoot":"","sources":["../../src/phase/stylesSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW;QACrC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;QAC7C,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,CAAC;YACN,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC;YACjG,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YACrD,4EAA4E;YAC5E,iEAAiE;YACjE,aAAa,EAAE,EAAE;SAClB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"stylesSource.js","sourceRoot":"","sources":["../../src/phase/stylesSource.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW;QACrC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;QAC7C,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,CAAC;YACN,YAAY,EAAE,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC;YACjG,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YACrD,6EAA6E;YAC7E,8DAA8D;YAC9D,yEAAyE;YACzE,8EAA8E;YAC9E,cAAc,EAAE,0BAA0B,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC;YAC5E,4EAA4E;YAC5E,iEAAiE;YACjE,aAAa,EAAE,EAAE;SAClB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Test-program resolution — derives "is this file a test file" from the tree's
3
+ * *declared* test runner, not a hardcoded path-substring list.
4
+ *
5
+ * The legacy `UniversalSecretsAnalyzer.isTestOrFixtureFile` answered the question
6
+ * with a path heuristic — `.test.`/`.spec.`/`__tests__`/`/test/`/`/fixtures/` —
7
+ * that described *shapes*, not *role*. A file named `latest.ts` in a `test/`
8
+ * directory and a file named `contest.test.ts` in `src/` were both swept by a
9
+ * string match, regardless of whether the project's test runner would ever
10
+ * execute them. The directive item 2 asks: can a file's test role be derived
11
+ * from the tree itself — the test runner declared in `package.json` `scripts`,
12
+ * the runner's include globs (vitest.config/jest.config/mocha `spec`), or
13
+ * test-program membership — rather than a path pattern?
14
+ *
15
+ * The answer, for every pinned corpus that carries a `hardcoded-secret` finding,
16
+ * is yes, through the runner's own documented discovery convention:
17
+ *
18
+ * - **deno** (`deno test`) — discovery is by *filename convention*: files
19
+ * named `{*_,*.,}test.{ts,tsx,js,jsx,mts,mjs}` and `__tests__/` directories.
20
+ * Deno has no per-file config list; its default is the source of truth.
21
+ * - **mocha** (`mocha --config <path>`) — the test program is the directory the
22
+ * config names (`<config>`'s parent, conventionally `test/`), plus the same
23
+ * home for its sibling runners (`tape`, `jake`) whose entry points live under
24
+ * the same directory.
25
+ * - **vitest / jest / node:test** — their *default* discovery conventions
26
+ * (`*.{test,spec}.*`, `__tests__/`, `*.test.*`). A config `include`/`testMatch`
27
+ * would override these; reading an arbitrary JS config module is not done
28
+ * here — the default is the source of truth, and a corpus whose runner
29
+ * overrides the default is reported as using the default, not silently.
30
+ *
31
+ * A monorepo's root `scripts.test` is often a task orchestrator (`turbo run test`,
32
+ * `nx test`, `pnpm -r test`) rather than a runner. When that is detected — or
33
+ * when the root declares no runner at all — the resolver reads the workspace
34
+ * `package.json` manifests (bounded depth, `node_modules`/build dirs skipped) and
35
+ * detects the runner each declares, exactly as the orchestrator would invoke it.
36
+ *
37
+ * When no runner is declared anywhere in the tree, the resolver falls back to
38
+ * the shared path heuristic {@link isTestOrSpecPath} and reports that as its
39
+ * source — the caller can then say "this corpus declares no test runner; the
40
+ * path shape is the value used instead".
41
+ */
42
+ /** A resolved test program: a predicate over a file path plus the named source. */
43
+ export interface TestProgram {
44
+ /** Human-readable source of truth for the decision, for reporting. */
45
+ readonly source: string;
46
+ /** True when `filePath` is a test file under the tree's declared runner. */
47
+ isTestFile(filePath: string): boolean;
48
+ }
49
+ /** Resolve the tree's declared test program for `projectRoot`, caching the
50
+ * result per root. A missing root yields the path-heuristic fallback
51
+ * (slice/unit-test shorthand).
52
+ *
53
+ * @param projectRoot - The project root whose `package.json` scripts declare
54
+ * the test runner; `undefined` in slice/unit-test shorthand.
55
+ * @returns The test program (its `source` plus an `isTestFile` predicate). */
56
+ export declare function resolveTestProgram(projectRoot: string | undefined): TestProgram;
57
+ //# sourceMappingURL=testProgram.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testProgram.d.ts","sourceRoot":"","sources":["../../src/phase/testProgram.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAMH,mFAAmF;AACnF,MAAM,WAAW,WAAW;IAC1B,sEAAsE;IACtE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CACvC;AA6LD;;;;;;+EAM+E;AAC/E,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,CAO/E"}