code-auditor-mcp 2.6.1 → 3.0.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 (347) hide show
  1. package/README.md +319 -147
  2. package/dist/analyzers/analyzerUtils.d.ts +13 -11
  3. package/dist/analyzers/analyzerUtils.d.ts.map +1 -1
  4. package/dist/analyzers/analyzerUtils.js +22 -56
  5. package/dist/analyzers/analyzerUtils.js.map +1 -1
  6. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts.map +1 -1
  7. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts.map +1 -1
  8. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js.map +1 -1
  9. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -1
  10. package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -1
  11. package/dist/analyzers/cross-language/SchemaValidator.d.ts.map +1 -1
  12. package/dist/analyzers/cross-language/SchemaValidator.js.map +1 -1
  13. package/dist/analyzers/dataAccessAnalyzer.d.ts.map +1 -1
  14. package/dist/analyzers/dataAccessAnalyzer.js +50 -24
  15. package/dist/analyzers/dataAccessAnalyzer.js.map +1 -1
  16. package/dist/analyzers/documentationAnalyzer.d.ts +4 -1
  17. package/dist/analyzers/documentationAnalyzer.d.ts.map +1 -1
  18. package/dist/analyzers/documentationAnalyzer.js +210 -111
  19. package/dist/analyzers/documentationAnalyzer.js.map +1 -1
  20. package/dist/analyzers/dryAnalyzer.d.ts.map +1 -1
  21. package/dist/analyzers/dryAnalyzer.js +190 -58
  22. package/dist/analyzers/dryAnalyzer.js.map +1 -1
  23. package/dist/analyzers/invariantsAnalyzer.d.ts +20 -0
  24. package/dist/analyzers/invariantsAnalyzer.d.ts.map +1 -0
  25. package/dist/analyzers/invariantsAnalyzer.js +148 -0
  26. package/dist/analyzers/invariantsAnalyzer.js.map +1 -0
  27. package/dist/analyzers/reactAnalyzer.d.ts.map +1 -1
  28. package/dist/analyzers/reactAnalyzer.js +2 -2
  29. package/dist/analyzers/reactAnalyzer.js.map +1 -1
  30. package/dist/analyzers/schemaAnalyzer.d.ts +2 -0
  31. package/dist/analyzers/schemaAnalyzer.d.ts.map +1 -1
  32. package/dist/analyzers/schemaAnalyzer.js +306 -147
  33. package/dist/analyzers/schemaAnalyzer.js.map +1 -1
  34. package/dist/analyzers/solidAnalyzer.d.ts.map +1 -1
  35. package/dist/analyzers/solidAnalyzer.js +145 -119
  36. package/dist/analyzers/solidAnalyzer.js.map +1 -1
  37. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +3 -1
  38. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -1
  39. package/dist/analyzers/universal/UniversalDRYAnalyzer.js +41 -1
  40. package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -1
  41. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -1
  42. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +8 -8
  43. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -1
  44. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -1
  45. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +6 -6
  46. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -1
  47. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -1
  48. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts.map +1 -1
  49. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js +1 -1
  50. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js.map +1 -1
  51. package/dist/api/index.js +1 -0
  52. package/dist/api/index.js.map +1 -1
  53. package/dist/auditRunner.d.ts.map +1 -1
  54. package/dist/auditRunner.js +367 -24
  55. package/dist/auditRunner.js.map +1 -1
  56. package/dist/cli.d.ts +1 -1
  57. package/dist/cli.d.ts.map +1 -1
  58. package/dist/cli.js +740 -18
  59. package/dist/cli.js.map +1 -1
  60. package/dist/codeIndexDB-enhanced.d.ts +35 -13
  61. package/dist/codeIndexDB-enhanced.d.ts.map +1 -1
  62. package/dist/codeIndexDB-enhanced.js +311 -214
  63. package/dist/codeIndexDB-enhanced.js.map +1 -1
  64. package/dist/codeIndexDB.d.ts +222 -0
  65. package/dist/codeIndexDB.d.ts.map +1 -0
  66. package/dist/codeIndexDB.js +2042 -0
  67. package/dist/codeIndexDB.js.map +1 -0
  68. package/dist/codeIndexService.d.ts.map +1 -1
  69. package/dist/codeIndexService.js.map +1 -1
  70. package/dist/componentScanner.d.ts +14 -8
  71. package/dist/componentScanner.d.ts.map +1 -1
  72. package/dist/componentScanner.js +136 -113
  73. package/dist/componentScanner.js.map +1 -1
  74. package/dist/config/configLoader.d.ts.map +1 -1
  75. package/dist/config/configLoader.js +10 -7
  76. package/dist/config/configLoader.js.map +1 -1
  77. package/dist/config/defaults.d.ts.map +1 -1
  78. package/dist/constants.js.map +1 -1
  79. package/dist/fingerprint.d.ts +15 -0
  80. package/dist/fingerprint.d.ts.map +1 -0
  81. package/dist/fingerprint.js +32 -0
  82. package/dist/fingerprint.js.map +1 -0
  83. package/dist/functionScanner.d.ts +5 -0
  84. package/dist/functionScanner.d.ts.map +1 -1
  85. package/dist/functionScanner.js +417 -341
  86. package/dist/functionScanner.js.map +1 -1
  87. package/dist/generators/AWSQConfigGenerator.d.ts.map +1 -1
  88. package/dist/generators/AiderConfigGenerator.d.ts.map +1 -1
  89. package/dist/generators/BaseConfigGenerator.d.ts.map +1 -1
  90. package/dist/generators/BaseConfigGenerator.js.map +1 -1
  91. package/dist/generators/ClaudeConfigGenerator.d.ts.map +1 -1
  92. package/dist/generators/ClineConfigGenerator.d.ts.map +1 -1
  93. package/dist/generators/CodeiumConfigGenerator.d.ts.map +1 -1
  94. package/dist/generators/ConfigGeneratorFactory.d.ts.map +1 -1
  95. package/dist/generators/ConfigGeneratorFactory.js.map +1 -1
  96. package/dist/generators/ContinueConfigGenerator.d.ts.map +1 -1
  97. package/dist/generators/CopilotConfigGenerator.d.ts.map +1 -1
  98. package/dist/generators/CursorConfigGenerator.d.ts.map +1 -1
  99. package/dist/generators/JetBrainsConfigGenerator.d.ts.map +1 -1
  100. package/dist/generators/VSCodeConfigGenerator.d.ts.map +1 -1
  101. package/dist/grammars/tree-sitter-go.wasm +0 -0
  102. package/dist/grammars/tree-sitter-javascript.wasm +0 -0
  103. package/dist/grammars/tree-sitter-tsx.wasm +0 -0
  104. package/dist/grammars/tree-sitter-typescript.wasm +0 -0
  105. package/dist/index.d.ts +1 -0
  106. package/dist/index.d.ts.map +1 -1
  107. package/dist/index.js +2 -1
  108. package/dist/index.js.map +1 -1
  109. package/dist/invariants/index.d.ts +9 -0
  110. package/dist/invariants/index.d.ts.map +1 -0
  111. package/dist/invariants/index.js +4 -0
  112. package/dist/invariants/index.js.map +1 -0
  113. package/dist/invariants/invariant-rules.schema.json +137 -0
  114. package/dist/invariants/ruleEngine.d.ts +32 -0
  115. package/dist/invariants/ruleEngine.d.ts.map +1 -0
  116. package/dist/invariants/ruleEngine.js +536 -0
  117. package/dist/invariants/ruleEngine.js.map +1 -0
  118. package/dist/invariants/ruleValidator.d.ts +17 -0
  119. package/dist/invariants/ruleValidator.d.ts.map +1 -0
  120. package/dist/invariants/ruleValidator.js +264 -0
  121. package/dist/invariants/ruleValidator.js.map +1 -0
  122. package/dist/invariants/types.d.ts +78 -0
  123. package/dist/invariants/types.d.ts.map +1 -0
  124. package/dist/invariants/types.js +5 -0
  125. package/dist/invariants/types.js.map +1 -0
  126. package/dist/languages/LanguageOrchestrator.d.ts.map +1 -1
  127. package/dist/languages/LanguageOrchestrator.js.map +1 -1
  128. package/dist/languages/LanguageRegistry.d.ts.map +1 -1
  129. package/dist/languages/RuntimeManager.d.ts.map +1 -1
  130. package/dist/languages/RuntimeManager.js +1 -1
  131. package/dist/languages/RuntimeManager.js.map +1 -1
  132. package/dist/languages/UniversalAnalyzer.d.ts.map +1 -1
  133. package/dist/languages/UniversalAnalyzer.js.map +1 -1
  134. package/dist/languages/adapterBridge.d.ts +102 -0
  135. package/dist/languages/adapterBridge.d.ts.map +1 -0
  136. package/dist/languages/adapterBridge.js +382 -0
  137. package/dist/languages/adapterBridge.js.map +1 -0
  138. package/dist/languages/go/GoAdapter.d.ts +37 -26
  139. package/dist/languages/go/GoAdapter.d.ts.map +1 -1
  140. package/dist/languages/go/GoAdapter.js +560 -281
  141. package/dist/languages/go/GoAdapter.js.map +1 -1
  142. package/dist/languages/index.d.ts +5 -2
  143. package/dist/languages/index.d.ts.map +1 -1
  144. package/dist/languages/index.js +11 -9
  145. package/dist/languages/index.js.map +1 -1
  146. package/dist/languages/tree-sitter/converter.d.ts +43 -0
  147. package/dist/languages/tree-sitter/converter.d.ts.map +1 -0
  148. package/dist/languages/tree-sitter/converter.js +150 -0
  149. package/dist/languages/tree-sitter/converter.js.map +1 -0
  150. package/dist/languages/tree-sitter/parser.d.ts +36 -0
  151. package/dist/languages/tree-sitter/parser.d.ts.map +1 -0
  152. package/dist/languages/tree-sitter/parser.js +114 -0
  153. package/dist/languages/tree-sitter/parser.js.map +1 -0
  154. package/dist/languages/types.d.ts +11 -0
  155. package/dist/languages/types.d.ts.map +1 -1
  156. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts +92 -0
  157. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.d.ts.map +1 -0
  158. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js +951 -0
  159. package/dist/languages/typescript/TreeSitterTypeScriptAdapter.js.map +1 -0
  160. package/dist/mcp-tools/projectTasks.d.ts +80 -11
  161. package/dist/mcp-tools/projectTasks.d.ts.map +1 -1
  162. package/dist/mcp-tools/projectTasks.js +279 -13
  163. package/dist/mcp-tools/projectTasks.js.map +1 -1
  164. package/dist/mcp-tools/whitelistTools.d.ts +21 -21
  165. package/dist/mcp-tools/whitelistTools.d.ts.map +1 -1
  166. package/dist/mcp-tools/workflowGuide.d.ts.map +1 -1
  167. package/dist/mcp-tools/workflowGuide.js +130 -126
  168. package/dist/mcp-tools/workflowGuide.js.map +1 -1
  169. package/dist/mcp-tools-shared.d.ts.map +1 -1
  170. package/dist/mcp-tools-shared.js.map +1 -1
  171. package/dist/mcp-ui-simple.js +1 -1
  172. package/dist/mcp-ui-simple.js.map +1 -1
  173. package/dist/mcp.d.ts +1 -1
  174. package/dist/mcp.d.ts.map +1 -1
  175. package/dist/mcp.js +1455 -1132
  176. package/dist/mcp.js.map +1 -1
  177. package/dist/mcpAuditJobs.d.ts +4 -0
  178. package/dist/mcpAuditJobs.d.ts.map +1 -1
  179. package/dist/mcpAuditJobs.js +49 -2
  180. package/dist/mcpAuditJobs.js.map +1 -1
  181. package/dist/mcpDiagnostics.d.ts.map +1 -1
  182. package/dist/mcpDiagnostics.js +8 -5
  183. package/dist/mcpDiagnostics.js.map +1 -1
  184. package/dist/mcpToolErrors.d.ts.map +1 -1
  185. package/dist/mcpToolErrors.js.map +1 -1
  186. package/dist/native/ast-grep-napi.darwin-arm64.node +0 -0
  187. package/dist/native/ast-grep-napi.darwin-x64.node +0 -0
  188. package/dist/native/ast-grep-napi.linux-arm64-gnu.node +0 -0
  189. package/dist/native/ast-grep-napi.linux-arm64-musl.node +0 -0
  190. package/dist/native/ast-grep-napi.linux-x64-gnu.node +0 -0
  191. package/dist/native/ast-grep-napi.linux-x64-musl.node +0 -0
  192. package/dist/native/ast-grep-napi.win32-x64-msvc.node +0 -0
  193. package/dist/native-bootstrap.d.ts +15 -0
  194. package/dist/native-bootstrap.d.ts.map +1 -0
  195. package/dist/native-bootstrap.js +75 -0
  196. package/dist/native-bootstrap.js.map +1 -0
  197. package/dist/reporting/csvReportGenerator.d.ts.map +1 -1
  198. package/dist/reporting/htmlReportGenerator.d.ts.map +1 -1
  199. package/dist/reporting/jsonReportGenerator.d.ts.map +1 -1
  200. package/dist/reporting/reportGenerator.d.ts.map +1 -1
  201. package/dist/reporting/reportGenerator.js +4 -0
  202. package/dist/reporting/reportGenerator.js.map +1 -1
  203. package/dist/reporting/sarifReportGenerator.d.ts +39 -0
  204. package/dist/reporting/sarifReportGenerator.d.ts.map +1 -0
  205. package/dist/reporting/sarifReportGenerator.js +229 -0
  206. package/dist/reporting/sarifReportGenerator.js.map +1 -0
  207. package/dist/search/QueryParser.d.ts +41 -0
  208. package/dist/search/QueryParser.d.ts.map +1 -1
  209. package/dist/search/QueryParser.js +200 -19
  210. package/dist/search/QueryParser.js.map +1 -1
  211. package/dist/services/CodeMapGenerator.d.ts.map +1 -1
  212. package/dist/services/CodeMapGenerator.js +4 -4
  213. package/dist/services/CodeMapGenerator.js.map +1 -1
  214. package/dist/services/ProjectTaskRepository.d.ts +34 -9
  215. package/dist/services/ProjectTaskRepository.d.ts.map +1 -1
  216. package/dist/services/ProjectTaskRepository.js +385 -10
  217. package/dist/services/ProjectTaskRepository.js.map +1 -1
  218. package/dist/services/SchemaParser.d.ts.map +1 -1
  219. package/dist/services/SchemaParser.js +5 -8
  220. package/dist/services/SchemaParser.js.map +1 -1
  221. package/dist/services/auditJobService.d.ts +1 -1
  222. package/dist/services/projectTaskHelpers.js.map +1 -1
  223. package/dist/services/whitelistService.d.ts.map +1 -1
  224. package/dist/services/whitelistService.js +1 -1
  225. package/dist/services/whitelistService.js.map +1 -1
  226. package/dist/tool-registry.d.ts +79 -0
  227. package/dist/tool-registry.d.ts.map +1 -0
  228. package/dist/tool-registry.js +139 -0
  229. package/dist/tool-registry.js.map +1 -0
  230. package/dist/types/projectTask.d.ts +31 -0
  231. package/dist/types/projectTask.d.ts.map +1 -1
  232. package/dist/types.d.ts +26 -2
  233. package/dist/types.d.ts.map +1 -1
  234. package/dist/types.js.map +1 -1
  235. package/dist/ui/InteractivePrompts.d.ts.map +1 -1
  236. package/dist/ui/InteractivePrompts.js.map +1 -1
  237. package/dist/utils/astParser.d.ts +31 -38
  238. package/dist/utils/astParser.d.ts.map +1 -1
  239. package/dist/utils/astParser.js +138 -196
  240. package/dist/utils/astParser.js.map +1 -1
  241. package/dist/utils/astUtils.d.ts +87 -58
  242. package/dist/utils/astUtils.d.ts.map +1 -1
  243. package/dist/utils/astUtils.js +852 -581
  244. package/dist/utils/astUtils.js.map +1 -1
  245. package/dist/utils/componentPatterns.js.map +1 -1
  246. package/dist/utils/componentResponsibility.d.ts +13 -9
  247. package/dist/utils/componentResponsibility.d.ts.map +1 -1
  248. package/dist/utils/componentResponsibility.js +236 -206
  249. package/dist/utils/componentResponsibility.js.map +1 -1
  250. package/dist/utils/dependencyExtractor.d.ts +11 -6
  251. package/dist/utils/dependencyExtractor.d.ts.map +1 -1
  252. package/dist/utils/dependencyExtractor.js +200 -119
  253. package/dist/utils/dependencyExtractor.js.map +1 -1
  254. package/dist/utils/fileDiscovery.d.ts +1 -1
  255. package/dist/utils/fileDiscovery.d.ts.map +1 -1
  256. package/dist/utils/fileDiscovery.js.map +1 -1
  257. package/dist/utils/jsDocParser.d.ts +27 -30
  258. package/dist/utils/jsDocParser.d.ts.map +1 -1
  259. package/dist/utils/jsDocParser.js +271 -207
  260. package/dist/utils/jsDocParser.js.map +1 -1
  261. package/dist/utils/reactDetection.d.ts +27 -12
  262. package/dist/utils/reactDetection.d.ts.map +1 -1
  263. package/dist/utils/reactDetection.js +331 -219
  264. package/dist/utils/reactDetection.js.map +1 -1
  265. package/dist/workers/auditWorker.js +17 -3
  266. package/dist/workers/auditWorker.js.map +1 -1
  267. package/package.json +54 -51
  268. package/dist/adapters/GoAdapter.d.ts +0 -53
  269. package/dist/adapters/GoAdapter.d.ts.map +0 -1
  270. package/dist/adapters/GoAdapter.js +0 -611
  271. package/dist/adapters/GoAdapter.js.map +0 -1
  272. package/dist/adapters/GoConfig.d.ts +0 -35
  273. package/dist/adapters/GoConfig.d.ts.map +0 -1
  274. package/dist/adapters/GoConfig.js +0 -155
  275. package/dist/adapters/GoConfig.js.map +0 -1
  276. package/dist/adapters/LanguageAdapter.d.ts +0 -135
  277. package/dist/adapters/LanguageAdapter.d.ts.map +0 -1
  278. package/dist/adapters/LanguageAdapter.js +0 -47
  279. package/dist/adapters/LanguageAdapter.js.map +0 -1
  280. package/dist/adapters/TypeScriptAdapter.d.ts +0 -43
  281. package/dist/adapters/TypeScriptAdapter.d.ts.map +0 -1
  282. package/dist/adapters/TypeScriptAdapter.js +0 -386
  283. package/dist/adapters/TypeScriptAdapter.js.map +0 -1
  284. package/dist/adapters/UniversalAnalyzer.d.ts +0 -42
  285. package/dist/adapters/UniversalAnalyzer.d.ts.map +0 -1
  286. package/dist/adapters/UniversalAnalyzer.js +0 -103
  287. package/dist/adapters/UniversalAnalyzer.js.map +0 -1
  288. package/dist/adapters/UniversalSOLIDAnalyzer.d.ts +0 -48
  289. package/dist/adapters/UniversalSOLIDAnalyzer.d.ts.map +0 -1
  290. package/dist/adapters/UniversalSOLIDAnalyzer.js +0 -178
  291. package/dist/adapters/UniversalSOLIDAnalyzer.js.map +0 -1
  292. package/dist/adapters/solidAnalyzerCompat.d.ts +0 -21
  293. package/dist/adapters/solidAnalyzerCompat.d.ts.map +0 -1
  294. package/dist/adapters/solidAnalyzerCompat.js +0 -78
  295. package/dist/adapters/solidAnalyzerCompat.js.map +0 -1
  296. package/dist/analyzers/dataAccessAnalyzerCompat.d.ts +0 -20
  297. package/dist/analyzers/dataAccessAnalyzerCompat.d.ts.map +0 -1
  298. package/dist/analyzers/dataAccessAnalyzerCompat.js +0 -59
  299. package/dist/analyzers/dataAccessAnalyzerCompat.js.map +0 -1
  300. package/dist/analyzers/documentationAnalyzerCompat.d.ts +0 -20
  301. package/dist/analyzers/documentationAnalyzerCompat.d.ts.map +0 -1
  302. package/dist/analyzers/documentationAnalyzerCompat.js +0 -52
  303. package/dist/analyzers/documentationAnalyzerCompat.js.map +0 -1
  304. package/dist/analyzers/dryAnalyzerCompat.d.ts +0 -20
  305. package/dist/analyzers/dryAnalyzerCompat.d.ts.map +0 -1
  306. package/dist/analyzers/dryAnalyzerCompat.js +0 -44
  307. package/dist/analyzers/dryAnalyzerCompat.js.map +0 -1
  308. package/dist/analyzers/schemaAnalyzerCompat.d.ts +0 -20
  309. package/dist/analyzers/schemaAnalyzerCompat.d.ts.map +0 -1
  310. package/dist/analyzers/schemaAnalyzerCompat.js +0 -69
  311. package/dist/analyzers/schemaAnalyzerCompat.js.map +0 -1
  312. package/dist/analyzers/solidAnalyzerCompat.d.ts +0 -20
  313. package/dist/analyzers/solidAnalyzerCompat.d.ts.map +0 -1
  314. package/dist/analyzers/solidAnalyzerCompat.js +0 -78
  315. package/dist/analyzers/solidAnalyzerCompat.js.map +0 -1
  316. package/dist/codeIndexDb.d.ts +0 -394
  317. package/dist/codeIndexDb.d.ts.map +0 -1
  318. package/dist/codeIndexDb.js +0 -2077
  319. package/dist/codeIndexDb.js.map +0 -1
  320. package/dist/languages/typescript/TypeScriptAdapter.d.ts +0 -108
  321. package/dist/languages/typescript/TypeScriptAdapter.d.ts.map +0 -1
  322. package/dist/languages/typescript/TypeScriptAdapter.js +0 -567
  323. package/dist/languages/typescript/TypeScriptAdapter.js.map +0 -1
  324. package/dist/languages/typescript/test-extraction.d.ts +0 -2
  325. package/dist/languages/typescript/test-extraction.d.ts.map +0 -1
  326. package/dist/languages/typescript/test-extraction.js +0 -36
  327. package/dist/languages/typescript/test-extraction.js.map +0 -1
  328. package/dist/mcp-hybrid.d.ts +0 -10
  329. package/dist/mcp-hybrid.d.ts.map +0 -1
  330. package/dist/mcp-hybrid.js +0 -41
  331. package/dist/mcp-hybrid.js.map +0 -1
  332. package/dist/mcp-index.d.ts +0 -13
  333. package/dist/mcp-index.d.ts.map +0 -1
  334. package/dist/mcp-index.js +0 -123
  335. package/dist/mcp-index.js.map +0 -1
  336. package/dist/mcp-standalone.d.ts +0 -3
  337. package/dist/mcp-standalone.d.ts.map +0 -1
  338. package/dist/mcp-standalone.js +0 -1201
  339. package/dist/mcp-standalone.js.map +0 -1
  340. package/dist/mcp-ui-server.d.ts +0 -27
  341. package/dist/mcp-ui-server.d.ts.map +0 -1
  342. package/dist/mcp-ui-server.js +0 -484
  343. package/dist/mcp-ui-server.js.map +0 -1
  344. package/dist/test-multi-strategy-search.d.ts +0 -3
  345. package/dist/test-multi-strategy-search.d.ts.map +0 -1
  346. package/dist/test-multi-strategy-search.js +0 -170
  347. package/dist/test-multi-strategy-search.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"UniversalSchemaAnalyzer.js","sourceRoot":"","sources":["../../../src/analyzers/universal/UniversalSchemaAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UniversalSchemaAnalyzer.js","sourceRoot":"","sources":["../../../src/analyzers/universal/UniversalSchemaAnalyzer.ts"],"names":[],"mappings":"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"}
package/dist/api/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  // REST API adapter and related modules
2
3
  // Exports will be added as modules are implemented
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,mDAAmD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,mDAAmD"}
@@ -1 +1 @@
1
- {"version":3,"file":"auditRunner.d.ts","sourceRoot":"","sources":["../src/auditRunner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAOnB,MAAM,YAAY,CAAC;AAgCpB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB;iCAM5B,kBAAkB,KAAG,IAAI;oCAOhB,MAAM,KAAG,OAAO,CAAC,kBAAkB,CAAC;uBAQjD,kBAAkB,KAAG,OAAO,CAAC,WAAW,CAAC;6BA0N1B,WAAW,UAAU,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;EAU7F;AA4GD;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAGjF;AAED,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"auditRunner.d.ts","sourceRoot":"","sources":["../src/auditRunner.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAQnB,MAAM,YAAY,CAAC;AAqLpB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB;iCAM5B,kBAAkB,KAAG,IAAI;oCAOhB,MAAM,KAAG,OAAO,CAAC,kBAAkB,CAAC;uBAQjD,kBAAkB,KAAG,OAAO,CAAC,WAAW,CAAC;6BA+S1B,WAAW,UAAU,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;EAU7F;AA0ND;;GAEG;AACH,wBAAsB,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAGjF;AAED,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -2,35 +2,197 @@
2
2
  * Audit Runner (Functional)
3
3
  * Main orchestrator for running code audits
4
4
  */
5
+ import { statSync, readFileSync } from 'fs';
5
6
  import path from 'path';
7
+ import { execSync } from 'child_process';
6
8
  import { AuditAbortedError, AuditHandoffError, } from './types.js';
7
9
  import { discoverFiles } from './utils/fileDiscovery.js';
8
10
  import { loadConfig } from './config/configLoader.js';
9
11
  import { generateReport } from './reporting/reportGenerator.js';
10
12
  import { extractFunctionsFromFile } from './functionScanner.js';
11
13
  import { isMcpDebugEnabled, logMcpDebug, logMcpInfo } from './mcpDiagnostics.js';
12
- // Import analyzer definitions
13
- // Use compatibility layers for refactored analyzers
14
- import { createSOLIDAnalyzer } from './adapters/solidAnalyzerCompat.js';
15
- import { dryAnalyzer } from './analyzers/dryAnalyzerCompat.js';
16
- // import { securityAnalyzer } from './analyzers/securityAnalyzer.js';
17
- // import { componentAnalyzer } from './analyzers/componentAnalyzer.js';
18
- import { dataAccessAnalyzer } from './analyzers/dataAccessAnalyzerCompat.js';
19
- import { reactAnalyzer } from './analyzers/reactAnalyzer.js'; // Keep legacy React analyzer
20
- import { documentationAnalyzer } from './analyzers/documentationAnalyzerCompat.js';
21
- import { schemaAnalyzer } from './analyzers/schemaAnalyzerCompat.js';
14
+ // Import universal analyzers
15
+ import { initializeLanguages } from './languages/index.js';
16
+ import { UniversalSOLIDAnalyzer } from './analyzers/universal/UniversalSOLIDAnalyzer.js';
17
+ import { UniversalDRYAnalyzer } from './analyzers/universal/UniversalDRYAnalyzer.js';
18
+ import { UniversalDataAccessAnalyzer } from './analyzers/universal/UniversalDataAccessAnalyzer.js';
19
+ import { UniversalDocumentationAnalyzer } from './analyzers/universal/UniversalDocumentationAnalyzer.js';
20
+ import { UniversalSchemaAnalyzer } from './analyzers/universal/UniversalSchemaAnalyzer.js';
21
+ import { reactAnalyzer } from './analyzers/reactAnalyzer.js';
22
+ import { invariantsAnalyzer } from './analyzers/invariantsAnalyzer.js';
23
+ import { hasRules } from './invariants/ruleEngine.js';
24
+ import { CodeIndexDB } from './codeIndexDB.js';
25
+ // Initialize the canonical language system once
26
+ initializeLanguages();
27
+ /**
28
+ * Shared progress callback adapter: translates universal analyzer's (number) into
29
+ * the object-based callback that auditRunner passes downstream.
30
+ */
31
+ function createProgressAdapter(analyzerName, progressCallback) {
32
+ if (!progressCallback)
33
+ return undefined;
34
+ return (progress) => {
35
+ progressCallback({
36
+ current: Math.floor(progress * 100),
37
+ total: 100,
38
+ analyzer: analyzerName,
39
+ phase: 'analyzing',
40
+ });
41
+ };
42
+ }
22
43
  /**
23
44
  * Default analyzer registry
24
45
  */
25
46
  const DEFAULT_ANALYZERS = {
26
- 'solid': createSOLIDAnalyzer(),
27
- 'dry': dryAnalyzer,
28
- // 'security': securityAnalyzer,
29
- // 'component': componentAnalyzer,
30
- 'data-access': dataAccessAnalyzer,
47
+ 'solid': {
48
+ name: 'solid',
49
+ description: 'Detects violations of SOLID principles',
50
+ category: 'architecture',
51
+ analyze: async (files, config, options, progressCallback) => {
52
+ const analyzer = new UniversalSOLIDAnalyzer();
53
+ const universalConfig = { skipTestFiles: true };
54
+ if (config.maxMethodsPerClass !== undefined)
55
+ universalConfig.maxMethodsPerClass = config.maxMethodsPerClass;
56
+ if (config.maxLinesPerMethod !== undefined)
57
+ universalConfig.maxLinesPerMethod = config.maxLinesPerMethod;
58
+ if (config.maxParametersPerMethod !== undefined)
59
+ universalConfig.maxParametersPerMethod = config.maxParametersPerMethod;
60
+ if (config.maxClassComplexity !== undefined)
61
+ universalConfig.maxClassComplexity = config.maxClassComplexity;
62
+ if (config.maxInterfaceMembers !== undefined)
63
+ universalConfig.maxInterfaceMembers = config.maxInterfaceMembers;
64
+ if (config.checkDependencyInversion !== undefined)
65
+ universalConfig.checkDependencyInversion = config.checkDependencyInversion;
66
+ if (config.checkInterfaceSegregation !== undefined)
67
+ universalConfig.checkInterfaceSegregation = config.checkInterfaceSegregation;
68
+ if (config.checkLiskovSubstitution !== undefined)
69
+ universalConfig.checkLiskovSubstitution = config.checkLiskovSubstitution;
70
+ const result = await analyzer.analyze(files, universalConfig, {
71
+ progressCallback: createProgressAdapter('solid', progressCallback),
72
+ ...options,
73
+ });
74
+ return {
75
+ ...result,
76
+ violations: result.violations.map(v => ({
77
+ ...v,
78
+ principle: v.rule,
79
+ analyzer: 'solid',
80
+ })),
81
+ };
82
+ },
83
+ },
84
+ 'dry': {
85
+ name: 'dry',
86
+ description: 'Detects code duplication across the codebase',
87
+ category: 'maintainability',
88
+ analyze: async (files, config, options, progressCallback) => {
89
+ const analyzer = new UniversalDRYAnalyzer();
90
+ return analyzer.analyze(files, config, {
91
+ progressCallback: createProgressAdapter('dry', progressCallback),
92
+ ...options,
93
+ });
94
+ },
95
+ },
96
+ 'data-access': {
97
+ name: 'data-access',
98
+ description: 'Analyzes database access patterns and data layer interactions',
99
+ category: 'security',
100
+ analyze: async (files, config, options, progressCallback) => {
101
+ const analyzer = new UniversalDataAccessAnalyzer();
102
+ const universalConfig = {};
103
+ if (config.databases !== undefined)
104
+ universalConfig.databases = config.databases;
105
+ if (config.organizationPatterns !== undefined)
106
+ universalConfig.organizationPatterns = config.organizationPatterns;
107
+ if (config.tablePatterns !== undefined)
108
+ universalConfig.tablePatterns = config.tablePatterns;
109
+ if (config.performanceThresholds !== undefined)
110
+ universalConfig.performanceThresholds = config.performanceThresholds;
111
+ if (config.securityPatterns !== undefined)
112
+ universalConfig.securityPatterns = config.securityPatterns;
113
+ if (config.checkOrgFilters !== undefined)
114
+ universalConfig.checkOrgFilters = config.checkOrgFilters;
115
+ if (config.checkSQLInjection !== undefined)
116
+ universalConfig.checkSQLInjection = config.checkSQLInjection;
117
+ if (config.checkPerformance !== undefined)
118
+ universalConfig.checkPerformance = config.checkPerformance;
119
+ return analyzer.analyze(files, universalConfig, {
120
+ progressCallback: createProgressAdapter('data-access', progressCallback),
121
+ ...options,
122
+ });
123
+ },
124
+ },
31
125
  'react': reactAnalyzer,
32
- 'documentation': documentationAnalyzer,
33
- 'schema': schemaAnalyzer
126
+ 'documentation': {
127
+ name: 'documentation',
128
+ description: 'Analyzes documentation quality across the codebase',
129
+ category: 'documentation',
130
+ analyze: async (files, config, options, progressCallback) => {
131
+ const analyzer = new UniversalDocumentationAnalyzer();
132
+ const universalConfig = {
133
+ requireFunctionDocs: config.requireFunctionDocs ?? true,
134
+ requireClassDocs: config.requireComponentDocs ?? true,
135
+ requireFileDocs: config.requireFileDocs ?? true,
136
+ requireParamDocs: config.requireParamDocs ?? true,
137
+ requireReturnDocs: config.requireReturnDocs ?? true,
138
+ minDescriptionLength: config.minDescriptionLength ?? 10,
139
+ checkExportedOnly: config.checkExportedOnly ?? false,
140
+ exemptPatterns: config.exemptPatterns ?? ['test', 'spec', '\\.d\\.ts$', 'mock', 'fixture'],
141
+ };
142
+ return analyzer.analyze(files, universalConfig, {
143
+ progressCallback: createProgressAdapter('documentation', progressCallback),
144
+ ...options,
145
+ });
146
+ },
147
+ },
148
+ 'invariants': invariantsAnalyzer,
149
+ 'schema': {
150
+ name: 'schema',
151
+ description: 'Analyzes code against database schemas',
152
+ category: 'database',
153
+ analyze: async (files, config, options, progressCallback) => {
154
+ const analyzer = new UniversalSchemaAnalyzer();
155
+ let schemas = [];
156
+ try {
157
+ const db = CodeIndexDB.getInstance();
158
+ await db.initialize();
159
+ const loadedSchemas = await db.getAllSchemas();
160
+ schemas = loadedSchemas.map((loaded) => {
161
+ const schema = loaded.schema;
162
+ return {
163
+ name: schema.name,
164
+ tables: schema.databases.flatMap((database) => database.tables.map((table) => ({
165
+ name: table.name,
166
+ columns: table.columns || [],
167
+ }))),
168
+ };
169
+ });
170
+ }
171
+ catch {
172
+ // If database isn't available, continue without schemas
173
+ }
174
+ const universalConfig = {
175
+ enableTableUsageTracking: config.enableTableUsageTracking ?? true,
176
+ checkMissingReferences: config.checkMissingReferences ?? true,
177
+ checkNamingConventions: config.checkNamingConventions ?? true,
178
+ detectUnusedTables: config.detectUnusedTables ?? false,
179
+ validateQueryPatterns: config.validateQueryPatterns ?? true,
180
+ maxQueriesPerFunction: config.maxQueriesPerFunction ?? 5,
181
+ requiredSchemas: config.requiredSchemas ?? [],
182
+ schemas,
183
+ };
184
+ const result = await analyzer.analyze(files, universalConfig);
185
+ return {
186
+ ...result,
187
+ violations: result.violations.map(v => ({
188
+ ...v,
189
+ schemaType: v.rule,
190
+ details: v.message,
191
+ analyzer: 'schema',
192
+ })),
193
+ };
194
+ },
195
+ },
34
196
  };
35
197
  /**
36
198
  * Create an audit runner with the given options
@@ -56,14 +218,69 @@ export function createAuditRunner(options = {}) {
56
218
  async function run(runOptions) {
57
219
  const mergedOptions = { ...options, ...runOptions };
58
220
  const startTime = Date.now();
59
- // Report progress
221
+ // ── Scope resolution ─────────────────────────────────────────────
222
+ const scope = mergedOptions.scope ?? 'all';
223
+ const isScoped = scope !== 'all';
224
+ const scopeResultType = isScoped ? 'scoped' : 'full';
60
225
  reportProgress(mergedOptions, {
61
226
  phase: 'discovery',
62
- message: 'Discovering files...'
227
+ message: `Discovering files... (scope: ${scopeResultType})`
63
228
  });
64
- // Discover files
65
- let files = await discoverProjectFiles(mergedOptions);
229
+ // Discover files based on scope
230
+ let files;
231
+ let changedFunctions;
232
+ if (typeof scope === 'string' && scope.startsWith('git:')) {
233
+ // git:<ref> scope
234
+ const gitRef = scope.slice(4);
235
+ files = resolveGitScopeFiles(mergedOptions, gitRef);
236
+ logMcpInfo('discovery', 'git scope resolved', {
237
+ ref: gitRef,
238
+ fileCount: files.length
239
+ });
240
+ }
241
+ else if (scope === 'changed') {
242
+ // Changed scope: detect modified files
243
+ const db = CodeIndexDB.getInstance();
244
+ await db.initialize();
245
+ const modifiedFiles = mergedOptions.explicitFiles?.length
246
+ ? mergedOptions.explicitFiles
247
+ : await db.detectModifiedFiles(path.resolve(mergedOptions.projectRoot || process.cwd()));
248
+ files = [...new Set(modifiedFiles.map((f) => path.resolve(f)))].sort();
249
+ logMcpInfo('discovery', 'changed scope resolved', {
250
+ fileCount: files.length
251
+ });
252
+ }
253
+ else if (Array.isArray(scope)) {
254
+ // files scope: explicit file paths/globs
255
+ files = await resolveFilesScope(mergedOptions, scope);
256
+ logMcpInfo('discovery', 'files scope resolved', {
257
+ fileCount: files.length
258
+ });
259
+ }
260
+ else {
261
+ // all scope: current behavior
262
+ files = await discoverProjectFiles(mergedOptions);
263
+ }
66
264
  throwIfAborted(mergedOptions.abortSignal);
265
+ // Detect changed functions for non-all scopes
266
+ if (isScoped && files.length > 0) {
267
+ try {
268
+ const db = CodeIndexDB.getInstance();
269
+ await db.initialize();
270
+ const detection = await db.detectChangedFunctions(files);
271
+ changedFunctions = detection.changedFunctions;
272
+ logMcpInfo('discovery', 'changed function detection', {
273
+ changedFunctionCount: changedFunctions.length,
274
+ deletedCount: detection.deletedFunctions.length,
275
+ errors: detection.errors.length
276
+ });
277
+ }
278
+ catch (err) {
279
+ logMcpInfo('discovery', 'changed function detection failed (continuing)', {
280
+ error: err instanceof Error ? err.message : String(err)
281
+ });
282
+ }
283
+ }
67
284
  const handoffRemaining = [];
68
285
  const maxPerRun = mergedOptions.maxFilesPerRun;
69
286
  if (typeof maxPerRun === 'number' && maxPerRun > 0 && files.length > maxPerRun) {
@@ -74,6 +291,7 @@ export function createAuditRunner(options = {}) {
74
291
  logMcpInfo('discovery', 'file discovery finished', {
75
292
  projectRoot: path.resolve(root),
76
293
  totalFiles: files.length,
294
+ scope: scopeResultType,
77
295
  indexFunctions: !!mergedOptions.indexFunctions
78
296
  });
79
297
  // Collect functions if enabled
@@ -127,12 +345,32 @@ export function createAuditRunner(options = {}) {
127
345
  }
128
346
  }
129
347
  }
348
+ // ── Build full function index for scoped DRY ─────────────────────
349
+ // When scope is not 'all', DRY must compare scoped functions against
350
+ // the full index so new duplicates are caught (R2.2).
351
+ let fullFunctionIndex;
352
+ if (isScoped) {
353
+ try {
354
+ const db = CodeIndexDB.getInstance();
355
+ fullFunctionIndex = await db.getAllFunctions();
356
+ logMcpInfo('analysis', 'loaded full function index for scoped DRY', {
357
+ functionCount: fullFunctionIndex.length
358
+ });
359
+ }
360
+ catch (err) {
361
+ // Non-fatal: DRY will just run within scope
362
+ logMcpInfo('analysis', 'failed to load full index for DRY (continuing)', {
363
+ error: err instanceof Error ? err.message : String(err)
364
+ });
365
+ }
366
+ }
130
367
  // Run analyzers
131
368
  const analyzerResults = {};
132
369
  const enabledAnalyzers = getEnabledAnalyzers(mergedOptions, analyzerRegistry);
133
370
  logMcpInfo('analysis', 'enabled analyzers', {
134
371
  names: enabledAnalyzers,
135
- fileCount: files.length
372
+ fileCount: files.length,
373
+ scope: scopeResultType
136
374
  });
137
375
  logMcpDebug('analysis', 'registry keys', { keys: Object.keys(analyzerRegistry) });
138
376
  const requestedConcurrency = Number(mergedOptions.analyzerConcurrency);
@@ -159,9 +397,14 @@ export function createAuditRunner(options = {}) {
159
397
  analyzer: analyzerName,
160
398
  message: `Running ${analyzerName} analyzer...`
161
399
  });
400
+ // Build analyzer config; inject full index for DRY on scoped runs
401
+ const analyzerConfig = { ...(mergedOptions.analyzerConfigs?.[analyzerName] || {}) };
402
+ if (analyzerName === 'dry' && isScoped && fullFunctionIndex) {
403
+ analyzerConfig.fullFunctionIndex = fullFunctionIndex;
404
+ }
162
405
  logMcpInfo('analysis', `running ${analyzerName}`, { fileCount: files.length });
163
406
  try {
164
- const result = await analyzer.analyze(files, mergedOptions.analyzerConfigs?.[analyzerName] || {}, mergedOptions, (progress) => {
407
+ const result = await analyzer.analyze(files, analyzerConfig, mergedOptions, (progress) => {
165
408
  throwIfAborted(mergedOptions.abortSignal);
166
409
  reportProgress(mergedOptions, {
167
410
  phase: 'analysis',
@@ -220,6 +463,7 @@ export function createAuditRunner(options = {}) {
220
463
  filesAnalyzed: files.length,
221
464
  analyzersRun: enabledAnalyzers,
222
465
  configUsed: mergedOptions,
466
+ scope: scopeResultType,
223
467
  ...(collectedFunctions.length > 0 && {
224
468
  collectedFunctions,
225
469
  fileToFunctionsMap: Object.fromEntries(fileToFunctionsMap)
@@ -273,6 +517,99 @@ async function discoverProjectFiles(options) {
273
517
  excludeDirs: undefined // This will use DEFAULT_EXCLUDED_DIRS which includes node_modules
274
518
  });
275
519
  }
520
+ /**
521
+ * Resolve git:<ref> scope: get files from `git diff --name-only <ref>`
522
+ * plus untracked files. Requires a git worktree.
523
+ */
524
+ function resolveGitScopeFiles(options, ref) {
525
+ const rootDir = path.resolve(options.projectRoot || process.cwd());
526
+ // Verify git worktree
527
+ try {
528
+ execSync('git rev-parse --git-dir', { cwd: rootDir, stdio: 'pipe' });
529
+ }
530
+ catch {
531
+ throw new Error(`git:<ref> scope requires a git worktree. "${rootDir}" is not a git repository.`);
532
+ }
533
+ const files = new Set();
534
+ // git diff --name-only <ref>
535
+ try {
536
+ const diffOutput = execSync(`git diff --name-only ${ref}`, {
537
+ cwd: rootDir,
538
+ stdio: 'pipe',
539
+ encoding: 'utf-8',
540
+ maxBuffer: 10 * 1024 * 1024
541
+ });
542
+ for (const line of diffOutput.trim().split('\n')) {
543
+ const trimmed = line.trim();
544
+ if (trimmed)
545
+ files.add(path.resolve(rootDir, trimmed));
546
+ }
547
+ }
548
+ catch (err) {
549
+ throw new Error(`Failed to run git diff --name-only ${ref}: ${err instanceof Error ? err.message : String(err)}`);
550
+ }
551
+ // Untracked files
552
+ try {
553
+ const untrackedOutput = execSync('git ls-files --others --exclude-standard', {
554
+ cwd: rootDir,
555
+ stdio: 'pipe',
556
+ encoding: 'utf-8'
557
+ });
558
+ for (const line of untrackedOutput.trim().split('\n')) {
559
+ const trimmed = line.trim();
560
+ if (trimmed)
561
+ files.add(path.resolve(rootDir, trimmed));
562
+ }
563
+ }
564
+ catch {
565
+ // No untracked files or git error — non-fatal
566
+ }
567
+ return [...files].sort();
568
+ }
569
+ /**
570
+ * Resolve files scope: paths can be file paths or globs.
571
+ * Absolute paths are used directly; relative paths are resolved
572
+ * against the project root; globs use discoverFiles.
573
+ */
574
+ async function resolveFilesScope(options, scopeFiles) {
575
+ const rootDir = path.resolve(options.projectRoot || process.cwd());
576
+ const result = new Set();
577
+ for (const item of scopeFiles) {
578
+ if (item.includes('*') || item.includes('?') || item.includes('[')) {
579
+ // Glob pattern
580
+ const matches = await discoverFiles(rootDir, {
581
+ includePaths: [item],
582
+ excludePaths: options.excludePaths,
583
+ extensions: options.fileExtensions,
584
+ excludeDirs: undefined
585
+ });
586
+ for (const m of matches)
587
+ result.add(m);
588
+ }
589
+ else {
590
+ // Direct file path
591
+ const resolved = path.isAbsolute(item) ? item : path.resolve(rootDir, item);
592
+ result.add(resolved);
593
+ }
594
+ }
595
+ return [...result].sort();
596
+ }
597
+ /**
598
+ * Check whether a .codeauditor.json at the given directory has invariant rules.
599
+ */
600
+ function hasInvariantRules(projectDir) {
601
+ try {
602
+ const rulesPath = path.join(projectDir, '.codeauditor.json');
603
+ if (!statSync(rulesPath).isFile())
604
+ return false;
605
+ const raw = readFileSync(rulesPath, 'utf-8');
606
+ const parsed = JSON.parse(raw);
607
+ return Array.isArray(parsed.rules) && parsed.rules.length > 0;
608
+ }
609
+ catch {
610
+ return false;
611
+ }
612
+ }
276
613
  /**
277
614
  * Get list of enabled analyzers
278
615
  */
@@ -281,7 +618,13 @@ function getEnabledAnalyzers(options, registry) {
281
618
  if (options.enabledAnalyzers !== undefined) {
282
619
  return options.enabledAnalyzers;
283
620
  }
284
- return Object.keys(registry);
621
+ const allAnalyzers = Object.keys(registry);
622
+ // Auto-disable invariants when no rules are configured (Spec 05 R3.1)
623
+ const projectDir = options.projectRoot || process.cwd();
624
+ if (!hasRules(options) && !hasInvariantRules(projectDir)) {
625
+ return allAnalyzers.filter(a => a !== 'invariants');
626
+ }
627
+ return allAnalyzers;
285
628
  }
286
629
  /**
287
630
  * Generate audit summary