code-auditor-mcp 5.0.1 → 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 (360) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +227 -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/handleIdentification.d.ts.map +1 -1
  12. package/dist/analyzers/handleIdentification.js +4 -1
  13. package/dist/analyzers/handleIdentification.js.map +1 -1
  14. package/dist/analyzers/provenance.d.ts +9 -4
  15. package/dist/analyzers/provenance.d.ts.map +1 -1
  16. package/dist/analyzers/provenance.js +8 -25
  17. package/dist/analyzers/provenance.js.map +1 -1
  18. package/dist/analyzers/reactAnalyzer.d.ts.map +1 -1
  19. package/dist/analyzers/reactAnalyzer.js +0 -5
  20. package/dist/analyzers/reactAnalyzer.js.map +1 -1
  21. package/dist/analyzers/receiverRoot.d.ts +20 -0
  22. package/dist/analyzers/receiverRoot.d.ts.map +1 -1
  23. package/dist/analyzers/receiverRoot.js +42 -0
  24. package/dist/analyzers/receiverRoot.js.map +1 -1
  25. package/dist/analyzers/ruleRegistry.js +4 -4
  26. package/dist/analyzers/ruleRegistry.js.map +1 -1
  27. package/dist/analyzers/ruleTiming.d.ts +1 -1
  28. package/dist/analyzers/ruleTiming.js +2 -2
  29. package/dist/analyzers/ruleTiming.js.map +1 -1
  30. package/dist/analyzers/tsEcosystem.d.ts.map +1 -1
  31. package/dist/analyzers/tsEcosystem.js +10 -0
  32. package/dist/analyzers/tsEcosystem.js.map +1 -1
  33. package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts.map +1 -1
  34. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js +22 -26
  35. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js.map +1 -1
  36. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +32 -15
  37. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  38. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +189 -115
  39. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  40. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +0 -2
  41. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  42. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +0 -5
  43. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
  44. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts +2 -10
  45. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts.map +1 -1
  46. package/dist/analyzers/universal/UniversalStylesAnalyzer.js +7 -49
  47. package/dist/analyzers/universal/UniversalStylesAnalyzer.js.map +1 -1
  48. package/dist/analyzers/universal/schema/config.d.ts.map +1 -1
  49. package/dist/analyzers/universal/schema/config.js +0 -2
  50. package/dist/analyzers/universal/schema/config.js.map +1 -1
  51. package/dist/analyzers/universal/schema/types.d.ts +0 -2
  52. package/dist/analyzers/universal/schema/types.d.ts.map +1 -1
  53. package/dist/analyzers/vendorSurfaces.d.ts +126 -0
  54. package/dist/analyzers/vendorSurfaces.d.ts.map +1 -0
  55. package/dist/analyzers/vendorSurfaces.js +580 -0
  56. package/dist/analyzers/vendorSurfaces.js.map +1 -0
  57. package/dist/auditRunner.d.ts +2 -0
  58. package/dist/auditRunner.d.ts.map +1 -1
  59. package/dist/auditRunner.js +159 -160
  60. package/dist/auditRunner.js.map +1 -1
  61. package/dist/churn/churnExtractor.d.ts +0 -1
  62. package/dist/churn/churnExtractor.d.ts.map +1 -1
  63. package/dist/churn/churnExtractor.js +2 -4
  64. package/dist/churn/churnExtractor.js.map +1 -1
  65. package/dist/cli.d.ts +1 -1
  66. package/dist/cli.d.ts.map +1 -1
  67. package/dist/cli.js +212 -29
  68. package/dist/cli.js.map +1 -1
  69. package/dist/codeIndex/migrations.d.ts.map +1 -1
  70. package/dist/codeIndex/migrations.js +4 -3
  71. package/dist/codeIndex/migrations.js.map +1 -1
  72. package/dist/codeIndexDB.d.ts +11 -2
  73. package/dist/codeIndexDB.d.ts.map +1 -1
  74. package/dist/codeIndexDB.js +27 -2
  75. package/dist/codeIndexDB.js.map +1 -1
  76. package/dist/config/configLoader.d.ts +60 -7
  77. package/dist/config/configLoader.d.ts.map +1 -1
  78. package/dist/config/configLoader.js +252 -60
  79. package/dist/config/configLoader.js.map +1 -1
  80. package/dist/config/defaults.d.ts +77 -18
  81. package/dist/config/defaults.d.ts.map +1 -1
  82. package/dist/config/defaults.js +105 -43
  83. package/dist/config/defaults.js.map +1 -1
  84. package/dist/constants.d.ts +2 -1
  85. package/dist/constants.d.ts.map +1 -1
  86. package/dist/constants.js +4 -0
  87. package/dist/constants.js.map +1 -1
  88. package/dist/daemon/main.d.ts +0 -1
  89. package/dist/daemon/main.d.ts.map +1 -1
  90. package/dist/daemon/main.js +31 -8
  91. package/dist/daemon/main.js.map +1 -1
  92. package/dist/dataPaths.d.ts +17 -11
  93. package/dist/dataPaths.d.ts.map +1 -1
  94. package/dist/dataPaths.js +51 -16
  95. package/dist/dataPaths.js.map +1 -1
  96. package/dist/graph/resolutionEnvironment.d.ts +61 -0
  97. package/dist/graph/resolutionEnvironment.d.ts.map +1 -0
  98. package/dist/graph/resolutionEnvironment.js +57 -0
  99. package/dist/graph/resolutionEnvironment.js.map +1 -0
  100. package/dist/hookLog.d.ts +54 -0
  101. package/dist/hookLog.d.ts.map +1 -0
  102. package/dist/hookLog.js +105 -0
  103. package/dist/hookLog.js.map +1 -0
  104. package/dist/hookLogPath.generated.d.ts +3 -0
  105. package/dist/hookLogPath.generated.d.ts.map +1 -0
  106. package/dist/hookLogPath.generated.js +8 -0
  107. package/dist/hookLogPath.generated.js.map +1 -0
  108. package/dist/index.d.ts +0 -5
  109. package/dist/index.d.ts.map +1 -1
  110. package/dist/index.js +0 -7
  111. package/dist/index.js.map +1 -1
  112. package/dist/installConfig.d.ts +15 -2
  113. package/dist/installConfig.d.ts.map +1 -1
  114. package/dist/installConfig.js +17 -2
  115. package/dist/installConfig.js.map +1 -1
  116. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -1
  117. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +18 -3
  118. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -1
  119. package/dist/mcp-tools/workflowGuide.js +8 -8
  120. package/dist/mcp-tools/workflowGuide.js.map +1 -1
  121. package/dist/mcp-tools-shared.d.ts.map +1 -1
  122. package/dist/mcp-tools-shared.js +5 -2
  123. package/dist/mcp-tools-shared.js.map +1 -1
  124. package/dist/mcp-ui-simple.d.ts +5 -0
  125. package/dist/mcp-ui-simple.d.ts.map +1 -1
  126. package/dist/mcp-ui-simple.js +9 -2
  127. package/dist/mcp-ui-simple.js.map +1 -1
  128. package/dist/mcp.d.ts +0 -1
  129. package/dist/mcp.d.ts.map +1 -1
  130. package/dist/mcp.js +36 -33
  131. package/dist/mcp.js.map +1 -1
  132. package/dist/mcpAuditJobs.d.ts +10 -0
  133. package/dist/mcpAuditJobs.d.ts.map +1 -1
  134. package/dist/mcpAuditJobs.js +10 -1
  135. package/dist/mcpAuditJobs.js.map +1 -1
  136. package/dist/mcpAutoIndex.d.ts.map +1 -1
  137. package/dist/mcpAutoIndex.js +2 -1
  138. package/dist/mcpAutoIndex.js.map +1 -1
  139. package/dist/phase/colorMath.d.ts +18 -5
  140. package/dist/phase/colorMath.d.ts.map +1 -1
  141. package/dist/phase/colorMath.js +88 -5
  142. package/dist/phase/colorMath.js.map +1 -1
  143. package/dist/phase/dataAccessCallsCandidates.js +1 -1
  144. package/dist/phase/dataAccessCallsCandidates.js.map +1 -1
  145. package/dist/phase/goFunctionAnalysis.d.ts +2 -2
  146. package/dist/phase/goFunctionAnalysis.js +2 -2
  147. package/dist/phase/goFunctions.d.ts +2 -2
  148. package/dist/phase/goFunctions.js +2 -2
  149. package/dist/phase/goImports.d.ts +2 -2
  150. package/dist/phase/goImports.js +2 -2
  151. package/dist/phase/goSwitches.d.ts +2 -2
  152. package/dist/phase/goSwitches.js +2 -2
  153. package/dist/phase/loopQueryCandidates.js +1 -1
  154. package/dist/phase/loopQueryCandidates.js.map +1 -1
  155. package/dist/phase/phaseModel.d.ts +37 -8
  156. package/dist/phase/phaseModel.d.ts.map +1 -1
  157. package/dist/phase/phaseModel.js +94 -46
  158. package/dist/phase/phaseModel.js.map +1 -1
  159. package/dist/phase/producers.d.ts.map +1 -1
  160. package/dist/phase/producers.js +27 -17
  161. package/dist/phase/producers.js.map +1 -1
  162. package/dist/phase/reachability.d.ts +44 -1
  163. package/dist/phase/reachability.d.ts.map +1 -1
  164. package/dist/phase/reachability.js +79 -0
  165. package/dist/phase/reachability.js.map +1 -1
  166. package/dist/phase/receiverConsumers.d.ts +8 -1
  167. package/dist/phase/receiverConsumers.d.ts.map +1 -1
  168. package/dist/phase/receiverConsumers.js +59 -21
  169. package/dist/phase/receiverConsumers.js.map +1 -1
  170. package/dist/phase/receiverProvenance.d.ts +23 -0
  171. package/dist/phase/receiverProvenance.d.ts.map +1 -1
  172. package/dist/phase/receiverProvenance.js +40 -0
  173. package/dist/phase/receiverProvenance.js.map +1 -1
  174. package/dist/phase/rules/crossDomain.d.ts.map +1 -1
  175. package/dist/phase/rules/crossDomain.js +16 -6
  176. package/dist/phase/rules/crossDomain.js.map +1 -1
  177. package/dist/phase/rules/dry.d.ts.map +1 -1
  178. package/dist/phase/rules/dry.js +0 -1
  179. package/dist/phase/rules/dry.js.map +1 -1
  180. package/dist/phase/rules/goRules.d.ts +2 -2
  181. package/dist/phase/rules/goRules.js +2 -2
  182. package/dist/phase/rules/secrets.d.ts +22 -8
  183. package/dist/phase/rules/secrets.d.ts.map +1 -1
  184. package/dist/phase/rules/secrets.js +48 -67
  185. package/dist/phase/rules/secrets.js.map +1 -1
  186. package/dist/phase/rules/styles.d.ts +23 -9
  187. package/dist/phase/rules/styles.d.ts.map +1 -1
  188. package/dist/phase/rules/styles.js +47 -15
  189. package/dist/phase/rules/styles.js.map +1 -1
  190. package/dist/phase/rules/unreferencedModule.d.ts.map +1 -1
  191. package/dist/phase/rules/unreferencedModule.js +16 -5
  192. package/dist/phase/rules/unreferencedModule.js.map +1 -1
  193. package/dist/phase/runner.d.ts +16 -7
  194. package/dist/phase/runner.d.ts.map +1 -1
  195. package/dist/phase/runner.js +32 -20
  196. package/dist/phase/runner.js.map +1 -1
  197. package/dist/phase/stylesCss.d.ts.map +1 -1
  198. package/dist/phase/stylesCss.js +4 -0
  199. package/dist/phase/stylesCss.js.map +1 -1
  200. package/dist/phase/stylesMarkup.d.ts.map +1 -1
  201. package/dist/phase/stylesMarkup.js +4 -0
  202. package/dist/phase/stylesMarkup.js.map +1 -1
  203. package/dist/phase/stylesSource.d.ts.map +1 -1
  204. package/dist/phase/stylesSource.js +6 -0
  205. package/dist/phase/stylesSource.js.map +1 -1
  206. package/dist/phase/testProgram.d.ts +57 -0
  207. package/dist/phase/testProgram.d.ts.map +1 -0
  208. package/dist/phase/testProgram.js +244 -0
  209. package/dist/phase/testProgram.js.map +1 -0
  210. package/dist/phase/typeDeclarations.d.ts +2 -2
  211. package/dist/phase/typeDeclarations.js +2 -2
  212. package/dist/phase/types.d.ts +54 -0
  213. package/dist/phase/types.d.ts.map +1 -1
  214. package/dist/pipelineAdapters.d.ts +1 -171
  215. package/dist/pipelineAdapters.d.ts.map +1 -1
  216. package/dist/pipelineAdapters.js +47 -1281
  217. package/dist/pipelineAdapters.js.map +1 -1
  218. package/dist/reporting/csvReportGenerator.d.ts.map +1 -1
  219. package/dist/reporting/csvReportGenerator.js +0 -6
  220. package/dist/reporting/csvReportGenerator.js.map +1 -1
  221. package/dist/reporting/htmlReportGenerator.d.ts.map +1 -1
  222. package/dist/reporting/htmlReportGenerator.js +0 -4
  223. package/dist/reporting/htmlReportGenerator.js.map +1 -1
  224. package/dist/reporting/jsonReportGenerator.d.ts.map +1 -1
  225. package/dist/reporting/jsonReportGenerator.js +0 -1
  226. package/dist/reporting/jsonReportGenerator.js.map +1 -1
  227. package/dist/reporting/sarifReportGenerator.d.ts.map +1 -1
  228. package/dist/reporting/sarifReportGenerator.js +0 -7
  229. package/dist/reporting/sarifReportGenerator.js.map +1 -1
  230. package/dist/sqlite/driver.d.ts +17 -1
  231. package/dist/sqlite/driver.d.ts.map +1 -1
  232. package/dist/sqlite/driver.js +28 -5
  233. package/dist/sqlite/driver.js.map +1 -1
  234. package/dist/styles/cssInJsHarvest.d.ts +36 -0
  235. package/dist/styles/cssInJsHarvest.d.ts.map +1 -0
  236. package/dist/styles/cssInJsHarvest.js +78 -0
  237. package/dist/styles/cssInJsHarvest.js.map +1 -0
  238. package/dist/styles/definedClasses.d.ts +95 -0
  239. package/dist/styles/definedClasses.d.ts.map +1 -0
  240. package/dist/styles/definedClasses.js +129 -0
  241. package/dist/styles/definedClasses.js.map +1 -0
  242. package/dist/styles/markupStyleHarvest.d.ts +33 -0
  243. package/dist/styles/markupStyleHarvest.d.ts.map +1 -0
  244. package/dist/styles/markupStyleHarvest.js +73 -0
  245. package/dist/styles/markupStyleHarvest.js.map +1 -0
  246. package/dist/styles/styleExtractor.d.ts +37 -0
  247. package/dist/styles/styleExtractor.d.ts.map +1 -1
  248. package/dist/styles/styleExtractor.js +89 -33
  249. package/dist/styles/styleExtractor.js.map +1 -1
  250. package/dist/styles/styleIndexer.d.ts.map +1 -1
  251. package/dist/styles/styleIndexer.js +11 -10
  252. package/dist/styles/styleIndexer.js.map +1 -1
  253. package/dist/styles/tailwindExpander.d.ts.map +1 -1
  254. package/dist/styles/tailwindExpander.js +31 -10
  255. package/dist/styles/tailwindExpander.js.map +1 -1
  256. package/dist/telemetry.d.ts +67 -1
  257. package/dist/telemetry.d.ts.map +1 -1
  258. package/dist/telemetry.js +100 -20
  259. package/dist/telemetry.js.map +1 -1
  260. package/dist/types/crossLanguage.d.ts +1 -0
  261. package/dist/types/crossLanguage.d.ts.map +1 -1
  262. package/dist/types.d.ts +36 -56
  263. package/dist/types.d.ts.map +1 -1
  264. package/dist/types.js +4 -4
  265. package/dist/types.js.map +1 -1
  266. package/dist/version.generated.d.ts +1 -1
  267. package/dist/version.generated.js +1 -1
  268. package/examples/.auditrc.example.json +7 -22
  269. package/examples/.auditrc.json +12 -155
  270. package/examples/.code-auditor.json +8 -51
  271. package/examples/nextjs.auditrc.json +7 -34
  272. package/examples/node-api.auditrc.json +6 -46
  273. package/examples/react.auditrc.json +8 -25
  274. package/examples/tolerant-solid.auditrc.json +12 -44
  275. package/package.json +13 -9
  276. package/plugin/.claude-plugin/manifest.json +10 -9
  277. package/plugin/.claude-plugin/plugin.json +1 -1
  278. package/plugin/hooks/hooks.json +4 -4
  279. package/plugin/scripts/hook-audit.sh +14 -2
  280. package/plugin/scripts/hook-common.sh +41 -11
  281. package/plugin/scripts/hook-drift-check.sh +19 -6
  282. package/plugin/scripts/hook-log-path.sh +7 -0
  283. package/plugin/scripts/hook-self-audit.sh +14 -2
  284. package/plugin/scripts/hook-warm.sh +22 -17
  285. package/plugin/skills/code-auditor/SKILL.md +26 -3
  286. package/server.json +10 -4
  287. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts +0 -6
  288. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts.map +0 -1
  289. package/dist/__tests__/fixtures/spec-20/scripts/tool.js +0 -12
  290. package/dist/__tests__/fixtures/spec-20/scripts/tool.js.map +0 -1
  291. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts +0 -7
  292. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts.map +0 -1
  293. package/dist/__tests__/fixtures/spec-20/src/demo-module.js +0 -13
  294. package/dist/__tests__/fixtures/spec-20/src/demo-module.js.map +0 -1
  295. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.d.ts +0 -14
  296. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.d.ts.map +0 -1
  297. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.js +0 -16
  298. package/dist/__tests__/fixtures/spec-52/item-01-prepare-in-loop.js.map +0 -1
  299. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.d.ts +0 -15
  300. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.d.ts.map +0 -1
  301. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.js +0 -17
  302. package/dist/__tests__/fixtures/spec-52/item-02-prepare-bind-accumulate-batch.js.map +0 -1
  303. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.d.ts +0 -14
  304. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.d.ts.map +0 -1
  305. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.js +0 -19
  306. package/dist/__tests__/fixtures/spec-52/item-03-exec-in-loop.js.map +0 -1
  307. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.d.ts +0 -18
  308. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.d.ts.map +0 -1
  309. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.js +0 -19
  310. package/dist/__tests__/fixtures/spec-52/item-04-storage-sql-exec-in-loop.js.map +0 -1
  311. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.d.ts +0 -19
  312. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.d.ts.map +0 -1
  313. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.js +0 -19
  314. package/dist/__tests__/fixtures/spec-52/item-05-upsert-forms.js.map +0 -1
  315. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.d.ts +0 -17
  316. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.d.ts.map +0 -1
  317. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.js +0 -19
  318. package/dist/__tests__/fixtures/spec-52/item-06-chained-prepare-run-in-loop.js.map +0 -1
  319. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.d.ts +0 -25
  320. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.d.ts.map +0 -1
  321. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.js +0 -21
  322. package/dist/__tests__/fixtures/spec-52/item-07-chained-prepare-bind-first-in-loop.js.map +0 -1
  323. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.d.ts +0 -15
  324. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.d.ts.map +0 -1
  325. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.js +0 -19
  326. package/dist/__tests__/fixtures/spec-52/item-08-promise-all-of-statements-in-loop.js.map +0 -1
  327. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.d.ts +0 -14
  328. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.d.ts.map +0 -1
  329. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.js +0 -14
  330. package/dist/__tests__/fixtures/spec-52/item-09-promise-all-map-of-statements-in-loop.js.map +0 -1
  331. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.d.ts +0 -15
  332. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.d.ts.map +0 -1
  333. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.js +0 -16
  334. package/dist/__tests__/fixtures/spec-52/item-10-promise-all-map-of-eager-all-in-loop.js.map +0 -1
  335. package/dist/languages/go/analyzer-darwin-amd64 +0 -0
  336. package/dist/languages/go/analyzer-darwin-arm64 +0 -0
  337. package/dist/languages/go/analyzer-linux-amd64 +0 -0
  338. package/dist/languages/go/analyzer-linux-arm64 +0 -0
  339. package/dist/languages/go/analyzer-src/analyzer.go +0 -643
  340. package/dist/languages/go/analyzer-src/dataaccess.go +0 -388
  341. package/dist/languages/go/analyzer-src/go.mod +0 -3
  342. package/dist/languages/go/analyzer-src/indexer.go +0 -268
  343. package/dist/languages/go/analyzer-src/parser.go +0 -461
  344. package/dist/languages/go/analyzer-src/solid.go +0 -311
  345. package/dist/languages/go/analyzer-src/testconventions.go +0 -25
  346. package/dist/languages/go/analyzer-src/types.go +0 -156
  347. package/dist/languages/go/analyzer-windows-amd64.exe +0 -0
  348. package/dist/languages/go/go.mod +0 -7
  349. package/dist/languages/go/main.go +0 -203
  350. package/dist/native/ast-grep-napi.darwin-arm64.node +0 -0
  351. package/dist/native/ast-grep-napi.darwin-x64.node +0 -0
  352. package/dist/native/ast-grep-napi.linux-arm64-gnu.node +0 -0
  353. package/dist/native/ast-grep-napi.linux-arm64-musl.node +0 -0
  354. package/dist/native/ast-grep-napi.linux-x64-gnu.node +0 -0
  355. package/dist/native/ast-grep-napi.linux-x64-musl.node +0 -0
  356. package/dist/native/ast-grep-napi.win32-x64-msvc.node +0 -0
  357. package/dist/native-bootstrap.d.ts +0 -15
  358. package/dist/native-bootstrap.d.ts.map +0 -1
  359. package/dist/native-bootstrap.js +0 -75
  360. package/dist/native-bootstrap.js.map +0 -1
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"reachability.js","sourceRoot":"","sources":["../../src/phase/reachability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reachability.js","sourceRoot":"","sources":["../../src/phase/reachability.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@
16
16
  */
17
17
  import type { DataAccessCallCandidate, LoopQueryFact, LoopQueryRawCandidate, QuerySiteCandidatesFact, QuerySiteFact, ReceiverActivityFact, ReceiverProvenanceFact, ResolvedQuery, SchemaUsageCandidatesFact, SchemaUsageFact, UnresolvedQuerySite, WithinFileProvenanceFact } from './types.js';
18
18
  import type { ProvenanceEvidence, R3Site } from '../analyzers/provenance.js';
19
- import type { Binding } from '../analyzers/receiverRoot.js';
19
+ import { type Binding } from '../analyzers/receiverRoot.js';
20
20
  import type { TsWithinFileProvenanceExtract } from '../analyzers/tsExpressionDescriptor.js';
21
21
  import type { Dialect } from '../mcp-tools/discoveryQueries.js';
22
22
  import { type HandleVerdict, type GoWithinFileProvenanceExtract } from '../analyzers/handleIdentification.js';
@@ -43,6 +43,13 @@ interface ReceiverResolution {
43
43
  * `schema-code` visitor's `config.sqlDialectReason` → `parseSqlTables`. */
44
44
  sqlDialectReason?: string | null;
45
45
  declaredTypePackages?: ReadonlySet<string>;
46
+ /** Spec 70 criterion 9 (Item 4) — the corpus-wide ambient interface-field map:
47
+ * global-script `interface` declarations (e.g. `worker-configuration.d.ts`
48
+ * generated by `wrangler types`) gathered once and merged under each file's
49
+ * local `interfaceFields`. Without it, a handler typed `env: Env` where `Env`
50
+ * is declared in a sibling global script can never resolve its `env.DB` member
51
+ * to `handle`, because `interfaceFields` is per-file only. */
52
+ ambientInterfaceFields?: ReadonlyMap<string, ReadonlyMap<string, string>>;
46
53
  projectRoot?: string;
47
54
  tsconfig?: TsconfigPathMap;
48
55
  verdictCache?: Map<string, HandleVerdict | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"receiverConsumers.d.ts","sourceRoot":"","sources":["../../src/phase/receiverConsumers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receiverConsumers.d.ts","sourceRoot":"","sources":["../../src/phase/receiverConsumers.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@
15
15
  * `classifyBuildProvenance` folds R3 over.
16
16
  */
17
17
  import picomatch from 'picomatch';
18
+ import { barePackageName } from '../analyzers/receiverRoot.js';
18
19
  import { classifyBuildProvenance, evidenceFromFact, rehydrateWithinFileProvenance, bindingFromFact } from './receiverProvenance.js';
19
20
  import { DEFAULT_SCHEMA_CONFIG } from '../analyzers/universal/schema/config.js';
20
21
  import { identifyHandle } from '../analyzers/handleIdentification.js';
@@ -24,14 +25,32 @@ import { dialectForPackage } from '../languages/sql/dialectDetection.js';
24
25
  import { parseSql, DEFAULT_SQL_DIALECT, extractTableNames, whereFacts, isWriteStatement, isMassWriteStatement, isUpsertStatement, whereColumnRefs, isDdlStatementKind, } from '../languages/sql/sqlAst.js';
25
26
  import { rawInsertColumnsFromAst } from '../analyzers/universal/UniversalDataAccessAnalyzer.js';
26
27
  import { describeUnprovenReceiver, resolveSpecifier, makeHeritageResolver } from '../analyzers/receiverResolution.js';
28
+ /** Merge a file's local `interfaceFields` with the corpus-wide ambient map:
29
+ * local declarations win, and ambient (global-script) declarations fill in only
30
+ * the names the file does not itself declare. Ordering is name-level, not
31
+ * field-level — a name the file declares is used whole, so an `interface Env`
32
+ * declared in-file shadows the global-script `Env` rather than being merged
33
+ * field-by-field (that is how TypeScript's own declaration merging resolves a
34
+ * local declaration against an ambient one in practice). */
35
+ function mergeInterfaceFields(local, ambient) {
36
+ if (!local)
37
+ return ambient;
38
+ if (!ambient || ambient.size === 0)
39
+ return local;
40
+ const merged = new Map(ambient);
41
+ for (const [name, fields] of local)
42
+ merged.set(name, fields);
43
+ return merged;
44
+ }
27
45
  /** Assemble a `FileReceiverEnv` from the per-file fold and the resolution tail.
28
46
  * Single constructor — the five consumers previously each built a near-identical
29
47
  * nine-field literal, which `dry/similar-expression` flagged as the same object
30
48
  * built five times. */
31
49
  function fileReceiverEnv(fold, tail) {
32
50
  const { dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields } = fold;
33
- const { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField } = tail;
34
- return { dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields, sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField };
51
+ const { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField } = tail;
52
+ const mergedFields = mergeInterfaceFields(interfaceFields, ambientInterfaceFields);
53
+ return { dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields: mergedFields, sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField };
35
54
  }
36
55
  /**
37
56
  * Build the single specifier-resolution seam the consumers thread into
@@ -397,7 +416,7 @@ function admitDbCall(call, env) {
397
416
  * @returns the classified schema-usage facts (strategies 1/2/4/5/6, in order)
398
417
  */
399
418
  export function classifySchemaUsage(candidates, resolution) {
400
- const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, projectRoot, tsconfig } = resolution;
419
+ const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, ambientInterfaceFields, projectRoot, tsconfig } = resolution;
401
420
  const extracts = rehydrateWithinTsExtracts(withinFacts);
402
421
  const seeds = rehydrateReceiverProvenance(provenance);
403
422
  const activityByFile = new Map(activityFacts.map((f) => [f.file, f]));
@@ -415,7 +434,7 @@ export function classifySchemaUsage(candidates, resolution) {
415
434
  }
416
435
  const sourceCode = cand.sourceCode;
417
436
  const resolveImport = resolver ? (source) => resolver(source, cand.file) : undefined;
418
- const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField: heritageResolver });
437
+ const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField: heritageResolver });
419
438
  // (1) Tagged-template SQL — re-admit by the tag's package dialect, parse.
420
439
  for (const t of cand.tagged) {
421
440
  const siteDialect = dialectForEvidence(dbProvenanced.get(t.tagName));
@@ -459,7 +478,7 @@ export function classifySchemaUsage(candidates, resolution) {
459
478
  * @returns the unresolved-query site records re-admitted via `identifyHandle`
460
479
  */
461
480
  export function classifyUnresolvedQuerySites(candidates, resolution) {
462
- const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, projectRoot, tsconfig } = resolution;
481
+ const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, ambientInterfaceFields, projectRoot, tsconfig } = resolution;
463
482
  const extracts = rehydrateWithinTsExtracts(withinFacts);
464
483
  const seeds = rehydrateReceiverProvenance(provenance);
465
484
  const activityByFile = new Map(activityFacts.map((f) => [f.file, f]));
@@ -476,7 +495,7 @@ export function classifyUnresolvedQuerySites(candidates, resolution) {
476
495
  continue;
477
496
  }
478
497
  const resolveImport = resolver ? (source) => resolver(source, cand.file) : undefined;
479
- const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField: heritageResolver });
498
+ const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField: heritageResolver });
480
499
  for (const call of cand.dbCalls) {
481
500
  if (call.unresolved === null)
482
501
  continue;
@@ -510,7 +529,7 @@ export function classifyUnresolvedQuerySites(candidates, resolution) {
510
529
  * per-file, so the caller must be able to re-group by file)
511
530
  */
512
531
  export function classifyUnparseableSql(candidates, resolution) {
513
- const { withinFacts, provenance, activityFacts, sqlDialect, sqlDialectReason, declaredTypePackages, projectRoot, tsconfig } = resolution;
532
+ const { withinFacts, provenance, activityFacts, sqlDialect, sqlDialectReason, declaredTypePackages, ambientInterfaceFields, projectRoot, tsconfig } = resolution;
514
533
  const extracts = rehydrateWithinTsExtracts(withinFacts);
515
534
  const seeds = rehydrateReceiverProvenance(provenance);
516
535
  const activityByFile = new Map(activityFacts.map((f) => [f.file, f]));
@@ -528,7 +547,7 @@ export function classifyUnparseableSql(candidates, resolution) {
528
547
  }
529
548
  const sourceCode = cand.sourceCode;
530
549
  const resolveImport = resolver ? (source) => resolver(source, cand.file) : undefined;
531
- const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField: heritageResolver });
550
+ const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField: heritageResolver });
532
551
  // (1) Tagged-template SQL — re-admit by the tag's package dialect, parse.
533
552
  for (const t of cand.tagged) {
534
553
  const siteDialect = dialectForEvidence(dbProvenanced.get(t.tagName));
@@ -811,7 +830,7 @@ function buildDataAccessCall(cand, verdict, dbProvenanced, sqlDialect, learnedWr
811
830
  * @returns the resolved DB calls, deduped and rebuilt with no AST
812
831
  */
813
832
  export function classifyDataAccessCalls(candidates, resolution) {
814
- const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, projectRoot, tsconfig, verdictCache } = resolution;
833
+ const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, ambientInterfaceFields, projectRoot, tsconfig, verdictCache } = resolution;
815
834
  const tsExtracts = rehydrateWithinTsExtracts(withinFacts);
816
835
  const goExtracts = rehydrateWithinGoExtracts(withinFacts);
817
836
  const seeds = rehydrateReceiverProvenance(provenance);
@@ -836,7 +855,7 @@ export function classifyDataAccessCalls(candidates, resolution) {
836
855
  });
837
856
  const learnedWrappers = new Set([...dbProvenanced.values()].filter((ev) => ev.reason === 'wrapper').map((ev) => ev.identifier));
838
857
  const resolveImport = resolver ? (source) => resolver(source, file) : undefined;
839
- const env = fileReceiverEnv({ dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields }, { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField: heritageResolver });
858
+ const env = fileReceiverEnv({ dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields }, { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField: heritageResolver });
840
859
  // 1. Discovery filter — `isDbCallCandidate`, re-folding the handle verdict.
841
860
  const discovered = [];
842
861
  for (const cand of fileCands) {
@@ -885,7 +904,7 @@ export function classifyDataAccessCalls(candidates, resolution) {
885
904
  * @returns the resolved loop-query facts (deduped, stable symbols assigned)
886
905
  */
887
906
  export function classifyLoopQueries(candidates, resolution) {
888
- const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, projectRoot, tsconfig, verdictCache } = resolution;
907
+ const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, ambientInterfaceFields, projectRoot, tsconfig, verdictCache } = resolution;
889
908
  const tsExtracts = rehydrateWithinTsExtracts(withinFacts);
890
909
  const seeds = rehydrateReceiverProvenance(provenance);
891
910
  const activityByFile = new Map(activityFacts.map((f) => [f.file, f]));
@@ -910,7 +929,7 @@ export function classifyLoopQueries(candidates, resolution) {
910
929
  const reported = new Set();
911
930
  const loopOrdinals = new Map();
912
931
  const resolveImport = resolver ? (source) => resolver(source, file) : undefined;
913
- const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField: heritageResolver });
932
+ const env = fileReceiverEnv({ dbProvenanced, bindings: activity.bindings, bindingsByScope: activity.bindingsByScope, goEnv: undefined, interfaceFields: extract?.interfaceFields }, { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField: heritageResolver });
914
933
  for (const cand of fileCands) {
915
934
  const verdict = reFoldHandleVerdict(loopQueryIdentity(cand), env, file, verdictCache);
916
935
  if (!verdict || verdict.kind !== 'handle')
@@ -950,7 +969,7 @@ export function classifyLoopQueries(candidates, resolution) {
950
969
  * @returns the unproven query-receiver records, deduped and rebuilt
951
970
  */
952
971
  export function classifyUnprovenQueryReceivers(candidates, resolution) {
953
- const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, projectRoot, tsconfig, verdictCache } = resolution;
972
+ const { withinFacts, provenance, activityFacts, sqlDialect, declaredTypePackages, ambientInterfaceFields, projectRoot, tsconfig, verdictCache } = resolution;
954
973
  const tsExtracts = rehydrateWithinTsExtracts(withinFacts);
955
974
  const goExtracts = rehydrateWithinGoExtracts(withinFacts);
956
975
  const seeds = rehydrateReceiverProvenance(provenance);
@@ -978,19 +997,18 @@ export function classifyUnprovenQueryReceivers(candidates, resolution) {
978
997
  // its `template_string` child, so without the dedup one query-shaped site
979
998
  // emits two identical cannot-fire diagnostics and doubles the coverage count.
980
999
  const resolveImport = resolver ? (source) => resolver(source, file) : undefined;
981
- const env = fileReceiverEnv({ dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields }, { sqlDialect, declaredTypePackages, resolveImport, resolveHeritageField: heritageResolver });
1000
+ const env = fileReceiverEnv({ dbProvenanced, bindings, bindingsByScope, goEnv, interfaceFields }, { sqlDialect, declaredTypePackages, ambientInterfaceFields, resolveImport, resolveHeritageField: heritageResolver });
982
1001
  const admitted = [];
983
1002
  for (const cand of fileCands) {
984
1003
  const id = dataAccessIdentity(cand);
985
1004
  // Candidacy filter only — mirror the pre-pass's member-callee gate (an
986
1005
  // identifier callee is not a query-shaped *call site*). A member call is
987
- // admitted as unproven only when it carries a static SQL argument (the
988
- // sql-argument evidence source, `handleSqlArg`) or is genuinely query-shaped
989
- // (the real `isQueryBuilderShape` test, carried on the candidate) — a site
990
- // with neither evidence source is not a data-access site and nothing is
991
- // reported about it. `reFoldHandleVerdict` → `identifyHandle` re-folds the
992
- // same discriminant over the re-derived provenance, so a null-arg
993
- // `not-handle` root resolves to `not-handle` below.
1006
+ // *nominated* when it carries a static SQL argument (the sql-argument
1007
+ // evidence source, `handleSqlArg`) or is genuinely query-shaped (the real
1008
+ // `isQueryBuilderShape` test, carried on the candidate) — nomination is not
1009
+ // admission. `reFoldHandleVerdict` → `identifyHandle` re-folds the
1010
+ // discriminant over the re-derived provenance, so a null-arg `not-handle`
1011
+ // root resolves to `not-handle` below.
994
1012
  if (id.calleeType !== 'member')
995
1013
  continue;
996
1014
  if (cand.handleSqlArg === null && !cand.isQueryBuilderShape)
@@ -998,6 +1016,26 @@ export function classifyUnprovenQueryReceivers(candidates, resolution) {
998
1016
  const verdict = reFoldHandleVerdict(id, env, file, verdictCache);
999
1017
  if (!verdict || verdict.kind !== 'unproven')
1000
1018
  continue;
1019
+ // Fix 1 — admission requires evidence; the evidence test is on the SITE,
1020
+ // not the receiver root. A candidate is a data-access site when it carries
1021
+ // a SQL argument (the sql-argument source, `handleSqlArg`) OR its receiver
1022
+ // is reached by declaration-resolution (a bare-package import). A SQL
1023
+ // argument qualifies the site on its own — whatever the receiver resolves
1024
+ // to, the site reports `unproven` (cannot-fire), never a silent clean.
1025
+ // Only a candidate with *neither* source — no SQL argument, and a receiver
1026
+ // root that does not reach a package (a local opaque type, an un-annotated
1027
+ // parameter/factory-return/field, or a relative in-repo re-export) — is
1028
+ // dropped as not-a-site.
1029
+ if (cand.handleSqlArg === null) {
1030
+ const rootBinding = id.root === null
1031
+ ? undefined
1032
+ : ((id.scope !== undefined ? bindingsByScope.get(id.root)?.get(id.scope) : undefined) ?? bindings.get(id.root));
1033
+ if (!rootBinding ||
1034
+ rootBinding.kind !== 'import' ||
1035
+ barePackageName(rootBinding.source ?? '') === null) {
1036
+ continue;
1037
+ }
1038
+ }
1001
1039
  admitted.push({ cand, verdict });
1002
1040
  }
1003
1041
  const byLine = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"receiverConsumers.js","sourceRoot":"","sources":["../../src/phase/receiverConsumers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receiverConsumers.js","sourceRoot":"","sources":["../../src/phase/receiverConsumers.ts"],"names":[],"mappings":"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"}
@@ -73,6 +73,29 @@ export declare function computeReceiverProvenance(withinFacts: readonly WithinFi
73
73
  fileExports: FileExports;
74
74
  unresolvedImports: UnresolvedImport[];
75
75
  };
76
+ /**
77
+ * The corpus-wide ambient interface-field map (Spec 70 criterion 9, Item 4) —
78
+ * interface/type-alias field types declared in a *global script* file (one with
79
+ * no top-level `import` and no top-level `export`, per TypeScript's module/script
80
+ * split), aggregated first-wins across the corpus. `classifyMemberPath` reads
81
+ * this as the cross-file fallback when the file-local `interfaceFields` map lacks
82
+ * the receiver's type name: a Workers handler's `env: Env` resolves `Env` from
83
+ * `worker-configuration.d.ts` (wrangler-generated, no import/export) even though
84
+ * the handler file itself never declares `interface Env`.
85
+ *
86
+ * The `import-specifiers`/`export-symbols` facts are the two halves of the
87
+ * script/module discriminant: a file that appears in *either* is a module, whose
88
+ * declarations are module-scoped and must never leak into the ambient map (that
89
+ * would be a guessed clean, the exact failure this project pins against). Only a
90
+ * file in *neither* is a global script, and only its `interfaceFields` contribute.
91
+ *
92
+ * @param withinFacts the `within-file-provenance` facts (one per code file)
93
+ * @param importFacts the `import-specifiers` facts (one per import statement)
94
+ * @param exportFacts the `export-symbols` facts (one per exported symbol)
95
+ * @returns name → field-name → type-text, for every interface/type alias declared
96
+ * in a global script file
97
+ */
98
+ export declare function computeAmbientInterfaceFields(withinFacts: readonly WithinFileProvenanceFact[], importFacts: readonly ImportSpecifiersFact[], exportFacts: readonly ExportSymbolFact[]): Map<string, ReadonlyMap<string, string>>;
76
99
  /**
77
100
  * Re-derive `buildProvenanceContext`'s `dbProvenanced` — the seeded map the four
78
101
  * receiver consumers actually read — from the within-file extract + the cross-file