code-auditor-mcp 3.1.1 → 3.4.1

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 (361) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/CHANGELOG.md +724 -1
  3. package/README.md +85 -11
  4. package/dist/__test_tmp__/spec18_test.d.ts +2 -0
  5. package/dist/__test_tmp__/spec18_test.d.ts.map +1 -0
  6. package/dist/__test_tmp__/spec18_test.js +5 -0
  7. package/dist/__test_tmp__/spec18_test.js.map +1 -0
  8. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts +6 -0
  9. package/dist/__tests__/fixtures/spec-20/scripts/tool.d.ts.map +1 -0
  10. package/dist/__tests__/fixtures/spec-20/scripts/tool.js +12 -0
  11. package/dist/__tests__/fixtures/spec-20/scripts/tool.js.map +1 -0
  12. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts +7 -0
  13. package/dist/__tests__/fixtures/spec-20/src/demo-module.d.ts.map +1 -0
  14. package/dist/__tests__/fixtures/spec-20/src/demo-module.js +13 -0
  15. package/dist/__tests__/fixtures/spec-20/src/demo-module.js.map +1 -0
  16. package/dist/analyzers/analyzerUtils.js +2 -2
  17. package/dist/analyzers/analyzerUtils.js.map +1 -1
  18. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts +1 -1
  19. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts.map +1 -1
  20. package/dist/analyzers/cross-language/APIContractAnalyzer.js +2 -2
  21. package/dist/analyzers/cross-language/APIContractAnalyzer.js.map +1 -1
  22. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts +3 -0
  23. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts.map +1 -1
  24. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js +3 -3
  25. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js.map +1 -1
  26. package/dist/analyzers/cross-language/SchemaValidator.d.ts +1 -1
  27. package/dist/analyzers/cross-language/SchemaValidator.d.ts.map +1 -1
  28. package/dist/analyzers/cross-language/SchemaValidator.js +2 -2
  29. package/dist/analyzers/cross-language/SchemaValidator.js.map +1 -1
  30. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts +83 -0
  31. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.d.ts.map +1 -0
  32. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js +611 -0
  33. package/dist/analyzers/crossDomain/CrossDomainAnalyzer.js.map +1 -0
  34. package/dist/analyzers/documentationAnalyzer.d.ts.map +1 -1
  35. package/dist/analyzers/documentationAnalyzer.js +8 -4
  36. package/dist/analyzers/documentationAnalyzer.js.map +1 -1
  37. package/dist/analyzers/orm/adapterRegistry.d.ts +41 -0
  38. package/dist/analyzers/orm/adapterRegistry.d.ts.map +1 -0
  39. package/dist/analyzers/orm/adapterRegistry.js +73 -0
  40. package/dist/analyzers/orm/adapterRegistry.js.map +1 -0
  41. package/dist/analyzers/orm/drizzleAdapter.d.ts +42 -0
  42. package/dist/analyzers/orm/drizzleAdapter.d.ts.map +1 -0
  43. package/dist/analyzers/orm/drizzleAdapter.js +166 -0
  44. package/dist/analyzers/orm/drizzleAdapter.js.map +1 -0
  45. package/dist/analyzers/orm/index.d.ts +14 -0
  46. package/dist/analyzers/orm/index.d.ts.map +1 -0
  47. package/dist/analyzers/orm/index.js +24 -0
  48. package/dist/analyzers/orm/index.js.map +1 -0
  49. package/dist/analyzers/orm/prismaAdapter.d.ts +45 -0
  50. package/dist/analyzers/orm/prismaAdapter.d.ts.map +1 -0
  51. package/dist/analyzers/orm/prismaAdapter.js +170 -0
  52. package/dist/analyzers/orm/prismaAdapter.js.map +1 -0
  53. package/dist/analyzers/orm/types.d.ts +63 -0
  54. package/dist/analyzers/orm/types.d.ts.map +1 -0
  55. package/dist/analyzers/orm/types.js +10 -0
  56. package/dist/analyzers/orm/types.js.map +1 -0
  57. package/dist/analyzers/provenance.d.ts +133 -0
  58. package/dist/analyzers/provenance.d.ts.map +1 -0
  59. package/dist/analyzers/provenance.js +1041 -0
  60. package/dist/analyzers/provenance.js.map +1 -0
  61. package/dist/analyzers/reactAnalyzer.d.ts.map +1 -1
  62. package/dist/analyzers/reactAnalyzer.js +117 -1
  63. package/dist/analyzers/reactAnalyzer.js.map +1 -1
  64. package/dist/analyzers/ruleRegistry.d.ts +38 -0
  65. package/dist/analyzers/ruleRegistry.d.ts.map +1 -0
  66. package/dist/analyzers/ruleRegistry.js +123 -0
  67. package/dist/analyzers/ruleRegistry.js.map +1 -0
  68. package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts +58 -0
  69. package/dist/analyzers/universal/UniversalConventionsAnalyzer.d.ts.map +1 -0
  70. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js +445 -0
  71. package/dist/analyzers/universal/UniversalConventionsAnalyzer.js.map +1 -0
  72. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +52 -0
  73. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -1
  74. package/dist/analyzers/universal/UniversalDRYAnalyzer.js +108 -26
  75. package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -1
  76. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +64 -0
  77. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  78. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +259 -53
  79. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  80. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -1
  81. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +5 -15
  82. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -1
  83. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  84. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +10 -10
  85. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -1
  86. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts +25 -0
  87. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts.map +1 -1
  88. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js +250 -59
  89. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js.map +1 -1
  90. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts +103 -0
  91. package/dist/analyzers/universal/UniversalStylesAnalyzer.d.ts.map +1 -0
  92. package/dist/analyzers/universal/UniversalStylesAnalyzer.js +750 -0
  93. package/dist/analyzers/universal/UniversalStylesAnalyzer.js.map +1 -0
  94. package/dist/auditRunner.d.ts.map +1 -1
  95. package/dist/auditRunner.js +499 -4
  96. package/dist/auditRunner.js.map +1 -1
  97. package/dist/baseline.d.ts +98 -0
  98. package/dist/baseline.d.ts.map +1 -0
  99. package/dist/baseline.js +184 -0
  100. package/dist/baseline.js.map +1 -0
  101. package/dist/churn/churnExtractor.d.ts +32 -0
  102. package/dist/churn/churnExtractor.d.ts.map +1 -0
  103. package/dist/churn/churnExtractor.js +264 -0
  104. package/dist/churn/churnExtractor.js.map +1 -0
  105. package/dist/cli.js +1218 -11
  106. package/dist/cli.js.map +1 -1
  107. package/dist/codeIndexDB-enhanced.js +1 -1
  108. package/dist/codeIndexDB-enhanced.js.map +1 -1
  109. package/dist/codeIndexDB.d.ts +101 -0
  110. package/dist/codeIndexDB.d.ts.map +1 -1
  111. package/dist/codeIndexDB.js +665 -5
  112. package/dist/codeIndexDB.js.map +1 -1
  113. package/dist/config/configLoader.d.ts.map +1 -1
  114. package/dist/config/configLoader.js +104 -7
  115. package/dist/config/configLoader.js.map +1 -1
  116. package/dist/config/defaults.d.ts +72 -1
  117. package/dist/config/defaults.d.ts.map +1 -1
  118. package/dist/config/defaults.js +146 -15
  119. package/dist/config/defaults.js.map +1 -1
  120. package/dist/config/pathProfiles.d.ts +38 -0
  121. package/dist/config/pathProfiles.d.ts.map +1 -0
  122. package/dist/config/pathProfiles.js +47 -0
  123. package/dist/config/pathProfiles.js.map +1 -0
  124. package/dist/conventions/conventionMiner.d.ts +63 -0
  125. package/dist/conventions/conventionMiner.d.ts.map +1 -0
  126. package/dist/conventions/conventionMiner.js +696 -0
  127. package/dist/conventions/conventionMiner.js.map +1 -0
  128. package/dist/coverage/coverageService.d.ts +49 -0
  129. package/dist/coverage/coverageService.d.ts.map +1 -0
  130. package/dist/coverage/coverageService.js +117 -0
  131. package/dist/coverage/coverageService.js.map +1 -0
  132. package/dist/coverage/istanbulParser.d.ts +84 -0
  133. package/dist/coverage/istanbulParser.d.ts.map +1 -0
  134. package/dist/coverage/istanbulParser.js +120 -0
  135. package/dist/coverage/istanbulParser.js.map +1 -0
  136. package/dist/coverage/lcovParser.d.ts +40 -0
  137. package/dist/coverage/lcovParser.d.ts.map +1 -0
  138. package/dist/coverage/lcovParser.js +168 -0
  139. package/dist/coverage/lcovParser.js.map +1 -0
  140. package/dist/fingerprint.d.ts +17 -0
  141. package/dist/fingerprint.d.ts.map +1 -1
  142. package/dist/fingerprint.js +42 -0
  143. package/dist/fingerprint.js.map +1 -1
  144. package/dist/grammars/tree-sitter-css.wasm +0 -0
  145. package/dist/graph/blastRadius.d.ts +27 -0
  146. package/dist/graph/blastRadius.d.ts.map +1 -0
  147. package/dist/graph/blastRadius.js +150 -0
  148. package/dist/graph/blastRadius.js.map +1 -0
  149. package/dist/graph/callGraph.d.ts +78 -0
  150. package/dist/graph/callGraph.d.ts.map +1 -0
  151. package/dist/graph/callGraph.js +484 -0
  152. package/dist/graph/callGraph.js.map +1 -0
  153. package/dist/graph/importGraph.d.ts +91 -0
  154. package/dist/graph/importGraph.d.ts.map +1 -0
  155. package/dist/graph/importGraph.js +602 -0
  156. package/dist/graph/importGraph.js.map +1 -0
  157. package/dist/graph/outputFormatter.d.ts +55 -0
  158. package/dist/graph/outputFormatter.d.ts.map +1 -0
  159. package/dist/graph/outputFormatter.js +283 -0
  160. package/dist/graph/outputFormatter.js.map +1 -0
  161. package/dist/hooks/codex.d.ts +36 -1
  162. package/dist/hooks/codex.d.ts.map +1 -1
  163. package/dist/hooks/codex.js +88 -54
  164. package/dist/hooks/codex.js.map +1 -1
  165. package/dist/hotspots/hotspotScorer.d.ts +20 -0
  166. package/dist/hotspots/hotspotScorer.d.ts.map +1 -0
  167. package/dist/hotspots/hotspotScorer.js +202 -0
  168. package/dist/hotspots/hotspotScorer.js.map +1 -0
  169. package/dist/invariants/invariant-rules.schema.json +42 -1
  170. package/dist/invariants/ruleEngine.d.ts +4 -1
  171. package/dist/invariants/ruleEngine.d.ts.map +1 -1
  172. package/dist/invariants/ruleEngine.js +141 -5
  173. package/dist/invariants/ruleEngine.js.map +1 -1
  174. package/dist/invariants/ruleValidator.d.ts.map +1 -1
  175. package/dist/invariants/ruleValidator.js +62 -1
  176. package/dist/invariants/ruleValidator.js.map +1 -1
  177. package/dist/invariants/types.d.ts +23 -2
  178. package/dist/invariants/types.d.ts.map +1 -1
  179. package/dist/languages/UniversalAnalyzer.d.ts +1 -1
  180. package/dist/languages/UniversalAnalyzer.d.ts.map +1 -1
  181. package/dist/languages/UniversalAnalyzer.js +61 -4
  182. package/dist/languages/UniversalAnalyzer.js.map +1 -1
  183. package/dist/languages/index.d.ts +1 -0
  184. package/dist/languages/index.d.ts.map +1 -1
  185. package/dist/languages/index.js +3 -0
  186. package/dist/languages/index.js.map +1 -1
  187. package/dist/languages/tree-sitter/TreeSitterCssAdapter.d.ts +59 -0
  188. package/dist/languages/tree-sitter/TreeSitterCssAdapter.d.ts.map +1 -0
  189. package/dist/languages/tree-sitter/TreeSitterCssAdapter.js +236 -0
  190. package/dist/languages/tree-sitter/TreeSitterCssAdapter.js.map +1 -0
  191. package/dist/languages/tree-sitter/parser.d.ts.map +1 -1
  192. package/dist/languages/tree-sitter/parser.js +2 -0
  193. package/dist/languages/tree-sitter/parser.js.map +1 -1
  194. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -1
  195. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +61 -10
  196. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -1
  197. package/dist/ledger.d.ts +128 -0
  198. package/dist/ledger.d.ts.map +1 -0
  199. package/dist/ledger.js +345 -0
  200. package/dist/ledger.js.map +1 -0
  201. package/dist/mcp-tools/projectTasks.d.ts.map +1 -1
  202. package/dist/mcp-tools/projectTasks.js +9 -14
  203. package/dist/mcp-tools/projectTasks.js.map +1 -1
  204. package/dist/mcp.js +0 -0
  205. package/dist/mcpAuditJobs.d.ts.map +1 -1
  206. package/dist/mcpAuditJobs.js +3 -0
  207. package/dist/mcpAuditJobs.js.map +1 -1
  208. package/dist/reporting/csvReportGenerator.d.ts.map +1 -1
  209. package/dist/reporting/csvReportGenerator.js +7 -1
  210. package/dist/reporting/csvReportGenerator.js.map +1 -1
  211. package/dist/reporting/htmlReportGenerator.d.ts.map +1 -1
  212. package/dist/reporting/htmlReportGenerator.js +5 -1
  213. package/dist/reporting/htmlReportGenerator.js.map +1 -1
  214. package/dist/reporting/jsonReportGenerator.d.ts.map +1 -1
  215. package/dist/reporting/jsonReportGenerator.js +10 -2
  216. package/dist/reporting/jsonReportGenerator.js.map +1 -1
  217. package/dist/reporting/sarifReportGenerator.d.ts.map +1 -1
  218. package/dist/reporting/sarifReportGenerator.js +17 -17
  219. package/dist/reporting/sarifReportGenerator.js.map +1 -1
  220. package/dist/scripts/runBench.d.ts +94 -0
  221. package/dist/scripts/runBench.d.ts.map +1 -0
  222. package/dist/scripts/runBench.js +1559 -0
  223. package/dist/scripts/runBench.js.map +1 -0
  224. package/dist/search/QueryParser.d.ts.map +1 -1
  225. package/dist/search/QueryParser.js +51 -4
  226. package/dist/search/QueryParser.js.map +1 -1
  227. package/dist/services/CodeMapGenerator.d.ts +33 -0
  228. package/dist/services/CodeMapGenerator.d.ts.map +1 -1
  229. package/dist/services/CodeMapGenerator.js +404 -0
  230. package/dist/services/CodeMapGenerator.js.map +1 -1
  231. package/dist/styles/normalizer.d.ts +37 -0
  232. package/dist/styles/normalizer.d.ts.map +1 -0
  233. package/dist/styles/normalizer.js +301 -0
  234. package/dist/styles/normalizer.js.map +1 -0
  235. package/dist/styles/styleExtractor.d.ts +38 -0
  236. package/dist/styles/styleExtractor.d.ts.map +1 -0
  237. package/dist/styles/styleExtractor.js +630 -0
  238. package/dist/styles/styleExtractor.js.map +1 -0
  239. package/dist/styles/styleIndexer.d.ts +35 -0
  240. package/dist/styles/styleIndexer.d.ts.map +1 -0
  241. package/dist/styles/styleIndexer.js +266 -0
  242. package/dist/styles/styleIndexer.js.map +1 -0
  243. package/dist/styles/tailwindConfigLoader.d.ts +38 -0
  244. package/dist/styles/tailwindConfigLoader.d.ts.map +1 -0
  245. package/dist/styles/tailwindConfigLoader.js +374 -0
  246. package/dist/styles/tailwindConfigLoader.js.map +1 -0
  247. package/dist/styles/tailwindExpander.d.ts +38 -0
  248. package/dist/styles/tailwindExpander.d.ts.map +1 -0
  249. package/dist/styles/tailwindExpander.js +637 -0
  250. package/dist/styles/tailwindExpander.js.map +1 -0
  251. package/dist/styles/types.d.ts +92 -0
  252. package/dist/styles/types.d.ts.map +1 -0
  253. package/dist/styles/types.js +10 -0
  254. package/dist/styles/types.js.map +1 -0
  255. package/dist/symbols.d.ts +21 -0
  256. package/dist/symbols.d.ts.map +1 -0
  257. package/dist/symbols.js +31 -0
  258. package/dist/symbols.js.map +1 -0
  259. package/dist/types.d.ts +326 -3
  260. package/dist/types.d.ts.map +1 -1
  261. package/dist/types.js.map +1 -1
  262. package/dist/utils/fileDiscovery.d.ts +1 -0
  263. package/dist/utils/fileDiscovery.d.ts.map +1 -1
  264. package/dist/utils/fileDiscovery.js +8 -2
  265. package/dist/utils/fileDiscovery.js.map +1 -1
  266. package/package.json +9 -5
  267. package/plugin/.claude-plugin/plugin.json +1 -1
  268. package/plugin/scripts/hook-audit.sh +5 -1
  269. package/plugin/skills/code-auditor/SKILL.md +51 -0
  270. package/dist/analyzers/__tests__/fixtures/spec-17/anonymous-callback-map.d.ts +0 -21
  271. package/dist/analyzers/__tests__/fixtures/spec-17/anonymous-callback-map.d.ts.map +0 -1
  272. package/dist/analyzers/__tests__/fixtures/spec-17/anonymous-callback-map.js +0 -21
  273. package/dist/analyzers/__tests__/fixtures/spec-17/anonymous-callback-map.js.map +0 -1
  274. package/dist/analyzers/__tests__/fixtures/spec-17/barrel-test-migration.d.ts +0 -13
  275. package/dist/analyzers/__tests__/fixtures/spec-17/barrel-test-migration.d.ts.map +0 -1
  276. package/dist/analyzers/__tests__/fixtures/spec-17/barrel-test-migration.js +0 -12
  277. package/dist/analyzers/__tests__/fixtures/spec-17/barrel-test-migration.js.map +0 -1
  278. package/dist/analyzers/__tests__/fixtures/spec-17/direct-access-allow-config.d.ts +0 -11
  279. package/dist/analyzers/__tests__/fixtures/spec-17/direct-access-allow-config.d.ts.map +0 -1
  280. package/dist/analyzers/__tests__/fixtures/spec-17/direct-access-allow-config.js +0 -22
  281. package/dist/analyzers/__tests__/fixtures/spec-17/direct-access-allow-config.js.map +0 -1
  282. package/dist/analyzers/__tests__/fixtures/spec-17/exported-undocumented.d.ts +0 -9
  283. package/dist/analyzers/__tests__/fixtures/spec-17/exported-undocumented.d.ts.map +0 -1
  284. package/dist/analyzers/__tests__/fixtures/spec-17/exported-undocumented.js +0 -13
  285. package/dist/analyzers/__tests__/fixtures/spec-17/exported-undocumented.js.map +0 -1
  286. package/dist/analyzers/__tests__/fixtures/spec-17/for-loop-query.d.ts +0 -13
  287. package/dist/analyzers/__tests__/fixtures/spec-17/for-loop-query.d.ts.map +0 -1
  288. package/dist/analyzers/__tests__/fixtures/spec-17/for-loop-query.js +0 -18
  289. package/dist/analyzers/__tests__/fixtures/spec-17/for-loop-query.js.map +0 -1
  290. package/dist/analyzers/__tests__/fixtures/spec-17/import-node-builtin.d.ts +0 -10
  291. package/dist/analyzers/__tests__/fixtures/spec-17/import-node-builtin.d.ts.map +0 -1
  292. package/dist/analyzers/__tests__/fixtures/spec-17/import-node-builtin.js +0 -16
  293. package/dist/analyzers/__tests__/fixtures/spec-17/import-node-builtin.js.map +0 -1
  294. package/dist/analyzers/__tests__/fixtures/spec-17/jsx-event-handler.d.ts +0 -14
  295. package/dist/analyzers/__tests__/fixtures/spec-17/jsx-event-handler.d.ts.map +0 -1
  296. package/dist/analyzers/__tests__/fixtures/spec-17/jsx-event-handler.js +0 -18
  297. package/dist/analyzers/__tests__/fixtures/spec-17/jsx-event-handler.js.map +0 -1
  298. package/dist/analyzers/__tests__/fixtures/spec-17/nested-loops-query.d.ts +0 -13
  299. package/dist/analyzers/__tests__/fixtures/spec-17/nested-loops-query.d.ts.map +0 -1
  300. package/dist/analyzers/__tests__/fixtures/spec-17/nested-loops-query.js +0 -22
  301. package/dist/analyzers/__tests__/fixtures/spec-17/nested-loops-query.js.map +0 -1
  302. package/dist/analyzers/__tests__/fixtures/spec-17/nine-line-repeated.d.ts +0 -10
  303. package/dist/analyzers/__tests__/fixtures/spec-17/nine-line-repeated.d.ts.map +0 -1
  304. package/dist/analyzers/__tests__/fixtures/spec-17/nine-line-repeated.js +0 -20
  305. package/dist/analyzers/__tests__/fixtures/spec-17/nine-line-repeated.js.map +0 -1
  306. package/dist/analyzers/__tests__/fixtures/spec-17/private-methods.d.ts +0 -18
  307. package/dist/analyzers/__tests__/fixtures/spec-17/private-methods.d.ts.map +0 -1
  308. package/dist/analyzers/__tests__/fixtures/spec-17/private-methods.js +0 -28
  309. package/dist/analyzers/__tests__/fixtures/spec-17/private-methods.js.map +0 -1
  310. package/dist/analyzers/__tests__/fixtures/spec-17/scope-all-config.d.ts +0 -11
  311. package/dist/analyzers/__tests__/fixtures/spec-17/scope-all-config.d.ts.map +0 -1
  312. package/dist/analyzers/__tests__/fixtures/spec-17/scope-all-config.js +0 -31
  313. package/dist/analyzers/__tests__/fixtures/spec-17/scope-all-config.js.map +0 -1
  314. package/dist/analyzers/__tests__/fixtures/spec-17/sql-tagged-template.d.ts +0 -11
  315. package/dist/analyzers/__tests__/fixtures/spec-17/sql-tagged-template.d.ts.map +0 -1
  316. package/dist/analyzers/__tests__/fixtures/spec-17/sql-tagged-template.js +0 -18
  317. package/dist/analyzers/__tests__/fixtures/spec-17/sql-tagged-template.js.map +0 -1
  318. package/dist/analyzers/__tests__/fixtures/spec-17/structural-similar-methods.d.ts +0 -13
  319. package/dist/analyzers/__tests__/fixtures/spec-17/structural-similar-methods.d.ts.map +0 -1
  320. package/dist/analyzers/__tests__/fixtures/spec-17/structural-similar-methods.js +0 -61
  321. package/dist/analyzers/__tests__/fixtures/spec-17/structural-similar-methods.js.map +0 -1
  322. package/dist/analyzers/__tests__/fixtures/spec-17/template-prefix-table.d.ts +0 -10
  323. package/dist/analyzers/__tests__/fixtures/spec-17/template-prefix-table.d.ts.map +0 -1
  324. package/dist/analyzers/__tests__/fixtures/spec-17/template-prefix-table.js +0 -15
  325. package/dist/analyzers/__tests__/fixtures/spec-17/template-prefix-table.js.map +0 -1
  326. package/dist/analyzers/__tests__/fixtures/spec-17/token-identical-20-lines.d.ts +0 -11
  327. package/dist/analyzers/__tests__/fixtures/spec-17/token-identical-20-lines.d.ts.map +0 -1
  328. package/dist/analyzers/__tests__/fixtures/spec-17/token-identical-20-lines.js +0 -49
  329. package/dist/analyzers/__tests__/fixtures/spec-17/token-identical-20-lines.js.map +0 -1
  330. package/dist/analyzers/__tests__/fixtures/spec-17/tsx-no-db-usage.d.ts +0 -10
  331. package/dist/analyzers/__tests__/fixtures/spec-17/tsx-no-db-usage.d.ts.map +0 -1
  332. package/dist/analyzers/__tests__/fixtures/spec-17/tsx-no-db-usage.js +0 -19
  333. package/dist/analyzers/__tests__/fixtures/spec-17/tsx-no-db-usage.js.map +0 -1
  334. package/dist/analyzers/__tests__/fixtures/spec-17/twenty-methods-vs-complex.d.ts +0 -37
  335. package/dist/analyzers/__tests__/fixtures/spec-17/twenty-methods-vs-complex.d.ts.map +0 -1
  336. package/dist/analyzers/__tests__/fixtures/spec-17/twenty-methods-vs-complex.js +0 -73
  337. package/dist/analyzers/__tests__/fixtures/spec-17/twenty-methods-vs-complex.js.map +0 -1
  338. package/dist/analyzers/__tests__/fixtures/spec-17/unique-method-74-lines.d.ts +0 -12
  339. package/dist/analyzers/__tests__/fixtures/spec-17/unique-method-74-lines.d.ts.map +0 -1
  340. package/dist/analyzers/__tests__/fixtures/spec-17/unique-method-74-lines.js +0 -82
  341. package/dist/analyzers/__tests__/fixtures/spec-17/unique-method-74-lines.js.map +0 -1
  342. package/dist/analyzers/__tests__/fixtures/spec-17/word-the-in-comment.d.ts +0 -10
  343. package/dist/analyzers/__tests__/fixtures/spec-17/word-the-in-comment.d.ts.map +0 -1
  344. package/dist/analyzers/__tests__/fixtures/spec-17/word-the-in-comment.js +0 -15
  345. package/dist/analyzers/__tests__/fixtures/spec-17/word-the-in-comment.js.map +0 -1
  346. package/dist/analyzers/dataAccessAnalyzer.d.ts +0 -46
  347. package/dist/analyzers/dataAccessAnalyzer.d.ts.map +0 -1
  348. package/dist/analyzers/dataAccessAnalyzer.js +0 -474
  349. package/dist/analyzers/dataAccessAnalyzer.js.map +0 -1
  350. package/dist/analyzers/dryAnalyzer.d.ts +0 -31
  351. package/dist/analyzers/dryAnalyzer.d.ts.map +0 -1
  352. package/dist/analyzers/dryAnalyzer.js +0 -734
  353. package/dist/analyzers/dryAnalyzer.js.map +0 -1
  354. package/dist/analyzers/schemaAnalyzer.d.ts +0 -23
  355. package/dist/analyzers/schemaAnalyzer.d.ts.map +0 -1
  356. package/dist/analyzers/schemaAnalyzer.js +0 -564
  357. package/dist/analyzers/schemaAnalyzer.js.map +0 -1
  358. package/dist/analyzers/solidAnalyzer.d.ts +0 -33
  359. package/dist/analyzers/solidAnalyzer.d.ts.map +0 -1
  360. package/dist/analyzers/solidAnalyzer.js +0 -847
  361. package/dist/analyzers/solidAnalyzer.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provenance.js","sourceRoot":"","sources":["../../src/analyzers/provenance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reactAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzers/reactAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAGlB,mBAAmB,EAGpB,MAAM,aAAa,CAAC;AAIrB;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,mBAoBlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,kBAmI3B,CAAC"}
1
+ {"version":3,"file":"reactAnalyzer.d.ts","sourceRoot":"","sources":["../../src/analyzers/reactAnalyzer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAGlB,mBAAmB,EAGpB,MAAM,aAAa,CAAC;AAIrB;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,mBAyBlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,kBAwI3B,CAAC"}
@@ -22,7 +22,11 @@ export const DEFAULT_REACT_CONFIG = {
22
22
  // Best Practices
23
23
  checkAccessibility: true,
24
24
  preventDirectDOMAccess: true,
25
- requireKeyProps: true
25
+ requireKeyProps: true,
26
+ // Raw Element Detection (Spec 10 R4)
27
+ rawElementCheck: true,
28
+ wrapperMinUsages: 5,
29
+ rawElementWatchList: ['button', 'input', 'select', 'textarea', 'table']
26
30
  };
27
31
  /**
28
32
  * React analyzer definition
@@ -116,6 +120,10 @@ export const reactAnalyzer = {
116
120
  if (config.requireErrorBoundaries) {
117
121
  violations.push(...checkErrorBoundaryUsage(scanResults));
118
122
  }
123
+ // Check for raw element usage (Spec 10 R4)
124
+ if (config.rawElementCheck) {
125
+ violations.push(...checkRawElements(scanResults, config));
126
+ }
119
127
  return {
120
128
  violations,
121
129
  filesProcessed: reactFiles.length,
@@ -430,6 +438,114 @@ function checkErrorBoundaryUsage(scanResults) {
430
438
  }
431
439
  return violations;
432
440
  }
441
+ /**
442
+ * Check for raw intrinsic element usage when project-defined wrappers exist (Spec 10 R4).
443
+ *
444
+ * Auto-detects wrapper components (exported components whose rendered root is a single
445
+ * intrinsic element from the watch list) and flags raw usages of that element outside
446
+ * the wrapper's definition. A {@link ReactAnalyzerConfig.componentMap} overrides
447
+ * auto-detection, making every raw usage a warning.
448
+ */
449
+ function checkRawElements(scanResults, config) {
450
+ const violations = [];
451
+ const watchList = config.rawElementWatchList ?? ['button', 'input', 'select', 'textarea', 'table'];
452
+ const watchSet = new Set(watchList);
453
+ // Map: intrinsic element → { wrapperName, wrapperFile }
454
+ const wrapperMap = new Map();
455
+ // ── Phase 1: Build wrapper map ─────────────────────────────────────────
456
+ if (config.componentMap) {
457
+ // User-provided overrides — trust them unconditionally
458
+ for (const [element, wrapperName] of Object.entries(config.componentMap)) {
459
+ // Try to locate the wrapper component's file in scan results
460
+ let wrapperFile = 'unknown';
461
+ for (const result of scanResults) {
462
+ const match = result.components.find(c => c.name === wrapperName);
463
+ if (match) {
464
+ wrapperFile = match.filePath;
465
+ break;
466
+ }
467
+ }
468
+ wrapperMap.set(element, { wrapperName, wrapperFile });
469
+ }
470
+ }
471
+ else {
472
+ // Auto-detect: an exported component whose jsxElements contains exactly one
473
+ // watch-list intrinsic element (the thing being wrapped).
474
+ for (const result of scanResults) {
475
+ for (const component of result.components) {
476
+ if (!component.isExported)
477
+ continue;
478
+ if (!component.jsxElements || component.jsxElements.length === 0)
479
+ continue;
480
+ // Filter to intrinsic elements (lowercase-first-character tag names)
481
+ const intrinsicElements = component.jsxElements.filter(el => {
482
+ const firstChar = el.charAt(0);
483
+ return firstChar === firstChar.toLowerCase() && firstChar !== firstChar.toUpperCase();
484
+ });
485
+ // A single intrinsic from the watch list → wrapper candidate
486
+ if (intrinsicElements.length === 1 && watchSet.has(intrinsicElements[0])) {
487
+ const element = intrinsicElements[0];
488
+ // Pick the shortest-name wrapper when multiple candidates exist
489
+ const existing = wrapperMap.get(element);
490
+ if (!existing || component.name.length < existing.wrapperName.length) {
491
+ wrapperMap.set(element, {
492
+ wrapperName: component.name,
493
+ wrapperFile: result.filePath
494
+ });
495
+ }
496
+ }
497
+ }
498
+ }
499
+ }
500
+ if (wrapperMap.size === 0)
501
+ return violations;
502
+ // ── Phase 2: Count raw usages and collect locations ────────────────────
503
+ const rawUsageCounts = new Map();
504
+ const rawUsageLocations = [];
505
+ for (const result of scanResults) {
506
+ for (const component of result.components) {
507
+ if (!component.jsxElements)
508
+ continue;
509
+ for (const jsxEl of component.jsxElements) {
510
+ if (!watchSet.has(jsxEl) || !wrapperMap.has(jsxEl))
511
+ continue;
512
+ const wrapper = wrapperMap.get(jsxEl);
513
+ // Don't flag the wrapper component itself
514
+ if (component.name === wrapper.wrapperName &&
515
+ component.filePath === wrapper.wrapperFile) {
516
+ continue;
517
+ }
518
+ rawUsageCounts.set(jsxEl, (rawUsageCounts.get(jsxEl) || 0) + 1);
519
+ rawUsageLocations.push({
520
+ element: jsxEl,
521
+ componentName: component.name,
522
+ filePath: component.filePath,
523
+ line: component.lineNumber ?? 0,
524
+ wrapperName: wrapper.wrapperName,
525
+ wrapperFile: wrapper.wrapperFile,
526
+ });
527
+ }
528
+ }
529
+ }
530
+ // ── Phase 3: Emit violations ──────────────────────────────────────────
531
+ const minUsages = config.wrapperMinUsages ?? 5;
532
+ const severity = config.componentMap ? 'warning' : 'suggestion';
533
+ for (const loc of rawUsageLocations) {
534
+ const count = rawUsageCounts.get(loc.element) || 0;
535
+ if (count < minUsages)
536
+ continue;
537
+ violations.push({
538
+ file: loc.filePath,
539
+ line: loc.line,
540
+ severity,
541
+ message: `raw \`<${loc.element}>\` — this project uses \`${loc.wrapperName}\` (${loc.wrapperFile})`,
542
+ componentName: loc.componentName,
543
+ violationType: 'raw-element',
544
+ suggestion: `Replace raw <${loc.element}> with the project's <${loc.wrapperName}> component`
545
+ });
546
+ }
547
+ return violations;
548
+ }
433
549
  /**
434
550
  * Get component type statistics
435
551
  */
@@ -1 +1 @@
1
- {"version":3,"file":"reactAnalyzer.js","sourceRoot":"","sources":["../../src/analyzers/reactAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactAnalyzer.js","sourceRoot":"","sources":["../../src/analyzers/reactAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Rule Registry — canonical mapping of every emitted rule/violation-type ID
3
+ * to its emitting analyzer.
4
+ *
5
+ * This is the ONE place that asserts "each rule ID has exactly one emitter."
6
+ * If you add a new emitted ID to an analyzer, add it here. The enforcement
7
+ * test (`registry enforces one emitter per rule ID`) fails the suite on
8
+ * duplicate entries — preventing the `severityOverrides` collision class
9
+ * where two analyzers emit the same string.
10
+ *
11
+ * Rider 2, Spec 19: the `type-mismatch` duplicate between
12
+ * UniversalSchemaAnalyzer (rule) and SchemaValidator (violationType) was
13
+ * discovered during ground-truth enumeration. SchemaValidator's copy was
14
+ * renamed to `schema-field-mismatch`.
15
+ *
16
+ * NOTE: `contractType` is NOT in the buildFingerprintInput rule-ID chain.
17
+ * APIContractAnalyzer violations currently resolve rule='' in fingerprints.
18
+ * They are listed here for collision detection nonetheless, because
19
+ * severityOverrides may use a different resolution path.
20
+ *
21
+ * NOTE: invariants analyzer rule IDs are user-defined and variable —
22
+ * `config-error` and `engine-error` are the only fixed, internal ones.
23
+ */
24
+ export interface RuleRegistryEntry {
25
+ /** The analyzer that emits this rule ID. */
26
+ analyzer: string;
27
+ /** The field on the Violation object that holds this ID. */
28
+ field: 'rule' | 'principle' | 'violationType' | 'type' | 'contractType' | 'ruleId' | 'special';
29
+ }
30
+ /**
31
+ * Every known rule/violation-type ID → analyzer.
32
+ *
33
+ * Invariant IDs (user-defined from .codeauditor.json rules) are NOT
34
+ * listed — they vary per project. The two fixed invariant IDs
35
+ * (`config-error`, `engine-error`) are listed.
36
+ */
37
+ export declare const RULE_REGISTRY: Record<string, Readonly<RuleRegistryEntry>>;
38
+ //# sourceMappingURL=ruleRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ruleRegistry.d.ts","sourceRoot":"","sources":["../../src/analyzers/ruleRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,GAAG,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;CAChG;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAqGrE,CAAC"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Rule Registry — canonical mapping of every emitted rule/violation-type ID
3
+ * to its emitting analyzer.
4
+ *
5
+ * This is the ONE place that asserts "each rule ID has exactly one emitter."
6
+ * If you add a new emitted ID to an analyzer, add it here. The enforcement
7
+ * test (`registry enforces one emitter per rule ID`) fails the suite on
8
+ * duplicate entries — preventing the `severityOverrides` collision class
9
+ * where two analyzers emit the same string.
10
+ *
11
+ * Rider 2, Spec 19: the `type-mismatch` duplicate between
12
+ * UniversalSchemaAnalyzer (rule) and SchemaValidator (violationType) was
13
+ * discovered during ground-truth enumeration. SchemaValidator's copy was
14
+ * renamed to `schema-field-mismatch`.
15
+ *
16
+ * NOTE: `contractType` is NOT in the buildFingerprintInput rule-ID chain.
17
+ * APIContractAnalyzer violations currently resolve rule='' in fingerprints.
18
+ * They are listed here for collision detection nonetheless, because
19
+ * severityOverrides may use a different resolution path.
20
+ *
21
+ * NOTE: invariants analyzer rule IDs are user-defined and variable —
22
+ * `config-error` and `engine-error` are the only fixed, internal ones.
23
+ */
24
+ /**
25
+ * Every known rule/violation-type ID → analyzer.
26
+ *
27
+ * Invariant IDs (user-defined from .codeauditor.json rules) are NOT
28
+ * listed — they vary per project. The two fixed invariant IDs
29
+ * (`config-error`, `engine-error`) are listed.
30
+ */
31
+ export const RULE_REGISTRY = {
32
+ // ── solid (UniversalSOLIDAnalyzer) ──────────────────────────────────────
33
+ 'solid/class-size': { analyzer: 'solid', field: 'rule' },
34
+ 'solid/method-complexity': { analyzer: 'solid', field: 'rule' },
35
+ 'open-closed': { analyzer: 'solid', field: 'rule' },
36
+ 'single-responsibility': { analyzer: 'solid', field: 'rule' },
37
+ 'interface-segregation': { analyzer: 'solid', field: 'rule' },
38
+ 'liskov-substitution': { analyzer: 'solid', field: 'rule' },
39
+ 'dependency-inversion': { analyzer: 'solid', field: 'rule' },
40
+ // ── dry (UniversalDRYAnalyzer) ──────────────────────────────────────────
41
+ 'dry/duplicate': { analyzer: 'dry', field: 'rule' },
42
+ 'dry/structural-similarity': { analyzer: 'dry', field: 'rule' },
43
+ 'duplicate-string-literal': { analyzer: 'dry', field: 'rule' },
44
+ 'duplicate-import': { analyzer: 'dry', field: 'rule' },
45
+ // ── data-access (UniversalDataAccessAnalyzer) ───────────────────────────
46
+ 'sql-injection-risk': { analyzer: 'data-access', field: 'rule' },
47
+ 'missing-org-filter': { analyzer: 'data-access', field: 'rule' },
48
+ 'complex-query': { analyzer: 'data-access', field: 'rule' },
49
+ 'unfiltered-query': { analyzer: 'data-access', field: 'rule' },
50
+ 'hardcoded-connection': { analyzer: 'data-access', field: 'rule' },
51
+ 'direct-sql': { analyzer: 'data-access', field: 'rule' },
52
+ 'loop-query': { analyzer: 'data-access', field: 'rule' },
53
+ // ── documentation (UniversalDocumentationAnalyzer) ─────────────────────
54
+ 'file-documentation': { analyzer: 'documentation', field: 'rule' },
55
+ 'function-documentation': { analyzer: 'documentation', field: 'rule' },
56
+ 'parameter-documentation': { analyzer: 'documentation', field: 'rule' },
57
+ 'return-documentation': { analyzer: 'documentation', field: 'rule' },
58
+ 'class-documentation': { analyzer: 'documentation', field: 'rule' },
59
+ 'method-documentation': { analyzer: 'documentation', field: 'rule' },
60
+ // ── schema (UniversalSchemaAnalyzer) ────────────────────────────────────
61
+ 'invalid-json': { analyzer: 'schema', field: 'rule' },
62
+ 'missing-schema-declaration': { analyzer: 'schema', field: 'rule' },
63
+ 'undefined-required-field': { analyzer: 'schema', field: 'rule' },
64
+ 'invalid-type': { analyzer: 'schema', field: 'rule' },
65
+ 'invalid-range': { analyzer: 'schema', field: 'rule' },
66
+ 'file-error': { analyzer: 'schema', field: 'rule' },
67
+ 'type-mismatch': { analyzer: 'schema', field: 'rule' },
68
+ 'string-too-short': { analyzer: 'schema', field: 'rule' },
69
+ 'string-too-long': { analyzer: 'schema', field: 'rule' },
70
+ 'pattern-mismatch': { analyzer: 'schema', field: 'rule' },
71
+ 'invalid-format': { analyzer: 'schema', field: 'rule' },
72
+ 'below-minimum': { analyzer: 'schema', field: 'rule' },
73
+ 'above-maximum': { analyzer: 'schema', field: 'rule' },
74
+ 'too-few-items': { analyzer: 'schema', field: 'rule' },
75
+ 'too-many-items': { analyzer: 'schema', field: 'rule' },
76
+ 'missing-required-field': { analyzer: 'schema', field: 'rule' },
77
+ 'unexpected-property': { analyzer: 'schema', field: 'rule' },
78
+ 'enum-mismatch': { analyzer: 'schema', field: 'rule' },
79
+ 'sql-injection': { analyzer: 'schema', field: 'rule' },
80
+ // ── react (reactAnalyzer) ───────────────────────────────────────────────
81
+ 'hooks-naming': { analyzer: 'react', field: 'rule' },
82
+ 'complexity': { analyzer: 'react', field: 'violationType' },
83
+ 'missing-props': { analyzer: 'react', field: 'violationType' },
84
+ 'no-error-boundary': { analyzer: 'react', field: 'violationType' },
85
+ 'hooks-violation': { analyzer: 'react', field: 'violationType' },
86
+ 'performance': { analyzer: 'react', field: 'violationType' },
87
+ 'accessibility': { analyzer: 'react', field: 'violationType' },
88
+ // ── invariants (invariantsAnalyzer) — fixed internal IDs only ──────────
89
+ 'config-error': { analyzer: 'invariants', field: 'rule' },
90
+ 'engine-error': { analyzer: 'invariants', field: 'rule' },
91
+ // ── cross-language-solid (CrossLanguageSOLIDAnalyzer) ───────────────────
92
+ 'SRP': { analyzer: 'cross-language-solid', field: 'principle' },
93
+ 'OCP': { analyzer: 'cross-language-solid', field: 'principle' },
94
+ 'ISP': { analyzer: 'cross-language-solid', field: 'principle' },
95
+ 'DIP': { analyzer: 'cross-language-solid', field: 'principle' },
96
+ 'LSP': { analyzer: 'cross-language-solid', field: 'principle' },
97
+ // ── schema-validator (SchemaValidator) ──────────────────────────────────
98
+ 'field-mismatch': { analyzer: 'schema-validator', field: 'violationType' },
99
+ 'schema-field-mismatch': { analyzer: 'schema-validator', field: 'violationType' },
100
+ 'missing-field': { analyzer: 'schema-validator', field: 'violationType' },
101
+ 'extra-field': { analyzer: 'schema-validator', field: 'violationType' },
102
+ 'constraint-mismatch': { analyzer: 'schema-validator', field: 'violationType' },
103
+ 'version-mismatch': { analyzer: 'schema-validator', field: 'violationType' },
104
+ // ── api-contract (APIContractAnalyzer) ──────────────────────────────────
105
+ // NOTE: contractType is NOT in the buildFingerprintInput chain.
106
+ // These IDs are fingerprint-invisible but listed for collision detection.
107
+ 'api-type-mismatch': { analyzer: 'api-contract', field: 'contractType' },
108
+ 'missing-endpoint': { analyzer: 'api-contract', field: 'contractType' },
109
+ 'api-extra-field': { analyzer: 'api-contract', field: 'contractType' },
110
+ 'api-missing-field': { analyzer: 'api-contract', field: 'contractType' },
111
+ 'method-mismatch': { analyzer: 'api-contract', field: 'contractType' },
112
+ 'auth-mismatch': { analyzer: 'api-contract', field: 'contractType' },
113
+ // ── dependency-graph (DependencyGraphBuilder) ───────────────────────────
114
+ 'circular-dependency': { analyzer: 'dependency-graph', field: 'type' },
115
+ 'break-cycles': { analyzer: 'dependency-graph', field: 'type' },
116
+ 'tight-coupling': { analyzer: 'dependency-graph', field: 'type' },
117
+ 'reduce-coupling': { analyzer: 'dependency-graph', field: 'type' },
118
+ 'hub-nodes': { analyzer: 'dependency-graph', field: 'type' },
119
+ 'split-responsibilities': { analyzer: 'dependency-graph', field: 'type' },
120
+ 'orphaned-nodes': { analyzer: 'dependency-graph', field: 'type' },
121
+ 'review-orphans': { analyzer: 'dependency-graph', field: 'type' },
122
+ };
123
+ //# sourceMappingURL=ruleRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ruleRegistry.js","sourceRoot":"","sources":["../../src/analyzers/ruleRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Universal Conventions Analyzer — Spec 12 R2.
3
+ *
4
+ * Reads mined conventions from the SQLite conventions table and flags
5
+ * deviations at suggestion severity. All detection is cross-file (DB-based);
6
+ * no per-AST processing is needed.
7
+ *
8
+ * Five rule IDs:
9
+ * conventions/usage-pair — missing co-occurring function calls
10
+ * conventions/import-form — minority import style
11
+ * conventions/error-handling — wrong error-handling shape
12
+ * conventions/export-shape — minority export style
13
+ * conventions/naming — wrong casing convention
14
+ */
15
+ import { UniversalAnalyzer } from '../../languages/UniversalAnalyzer.js';
16
+ import type { AnalyzerResult, ConventionsAnalyzerConfig } from '../../types.js';
17
+ export declare const DEFAULT_CONVENTIONS_CONFIG: ConventionsAnalyzerConfig;
18
+ export declare class UniversalConventionsAnalyzer extends UniversalAnalyzer {
19
+ readonly name = "conventions";
20
+ readonly description = "Mines codebase conventions and flags deviations at suggestion severity";
21
+ readonly category = "style";
22
+ /**
23
+ * Full override: query conventions from the DB and emit violations per domain.
24
+ * The base-class per-file AST loop is bypassed.
25
+ */
26
+ analyze(files: string[], config?: any, options?: any): Promise<AnalyzerResult>;
27
+ /** No-op — all detection is DB-based. */
28
+ analyzeAST(): Promise<any[]>;
29
+ /**
30
+ * For each usage-pair convention (antecedent → consequent), find functions
31
+ * that call the antecedent but NOT the consequent.
32
+ */
33
+ private detectUsagePairViolations;
34
+ /**
35
+ * For each import-form convention (source → dominantForm in directory),
36
+ * find imports of that source that use a minority form.
37
+ */
38
+ private detectImportFormViolations;
39
+ /**
40
+ * For each error-handling convention, find functions in that directory
41
+ * that have error handling but use a different shape.
42
+ *
43
+ * Functions with NO error handling are excluded — never flagged.
44
+ */
45
+ private detectErrorHandlingViolations;
46
+ /**
47
+ * For each export-shape convention, find exported functions in that
48
+ * directory that use a minority export form.
49
+ */
50
+ private detectExportShapeViolations;
51
+ /**
52
+ * For each naming convention, find exported functions in that directory
53
+ * that don't match the dominant casing. Non-Latin names are skipped
54
+ * (Spec 21 R5.4).
55
+ */
56
+ private detectNamingViolations;
57
+ }
58
+ //# sourceMappingURL=UniversalConventionsAnalyzer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UniversalConventionsAnalyzer.d.ts","sourceRoot":"","sources":["../../../src/analyzers/universal/UniversalConventionsAnalyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAa,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAc3F,eAAO,MAAM,0BAA0B,EAAE,yBAKxC,CAAC;AAyCF,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,IAAI,iBAAiB;IAC9B,QAAQ,CAAC,WAAW,4EACuD;IAC3E,QAAQ,CAAC,QAAQ,WAAW;IAE5B;;;OAGG;IACG,OAAO,CACX,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,GAAE,GAAQ,EAChB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,cAAc,CAAC,CA+FzB;IAED,yCAAyC;IACnC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAEjC;IAID;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IA+EjC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAkGlC;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAuErC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAgEnC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;CA8D/B"}