agentic-qe 2.5.10 → 2.6.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 (313) hide show
  1. package/.claude/agents/qe-code-intelligence.md +359 -0
  2. package/CHANGELOG.md +61 -0
  3. package/README.md +3 -2
  4. package/dist/agents/BaseAgent.d.ts +48 -0
  5. package/dist/agents/BaseAgent.d.ts.map +1 -1
  6. package/dist/agents/BaseAgent.js +126 -0
  7. package/dist/agents/BaseAgent.js.map +1 -1
  8. package/dist/agents/CodeIntelligenceAgent.d.ts +133 -0
  9. package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -0
  10. package/dist/agents/CodeIntelligenceAgent.js +473 -0
  11. package/dist/agents/CodeIntelligenceAgent.js.map +1 -0
  12. package/dist/agents/context/ContextCache.d.ts +105 -0
  13. package/dist/agents/context/ContextCache.d.ts.map +1 -0
  14. package/dist/agents/context/ContextCache.js +235 -0
  15. package/dist/agents/context/ContextCache.js.map +1 -0
  16. package/dist/agents/context/ContextFormatter.d.ts +92 -0
  17. package/dist/agents/context/ContextFormatter.d.ts.map +1 -0
  18. package/dist/agents/context/ContextFormatter.js +338 -0
  19. package/dist/agents/context/ContextFormatter.js.map +1 -0
  20. package/dist/agents/context/GraphExpander.d.ts +87 -0
  21. package/dist/agents/context/GraphExpander.d.ts.map +1 -0
  22. package/dist/agents/context/GraphExpander.js +215 -0
  23. package/dist/agents/context/GraphExpander.js.map +1 -0
  24. package/dist/agents/context/KnowledgeGraphContextBuilder.d.ts +160 -0
  25. package/dist/agents/context/KnowledgeGraphContextBuilder.d.ts.map +1 -0
  26. package/dist/agents/context/KnowledgeGraphContextBuilder.js +300 -0
  27. package/dist/agents/context/KnowledgeGraphContextBuilder.js.map +1 -0
  28. package/dist/agents/context/index.d.ts +15 -0
  29. package/dist/agents/context/index.d.ts.map +1 -0
  30. package/dist/agents/context/index.js +18 -0
  31. package/dist/agents/context/index.js.map +1 -0
  32. package/dist/agents/index.d.ts +1 -0
  33. package/dist/agents/index.d.ts.map +1 -1
  34. package/dist/agents/index.js +67 -3
  35. package/dist/agents/index.js.map +1 -1
  36. package/dist/cli/commands/knowledge-graph.d.ts +112 -0
  37. package/dist/cli/commands/knowledge-graph.d.ts.map +1 -0
  38. package/dist/cli/commands/knowledge-graph.js +466 -0
  39. package/dist/cli/commands/knowledge-graph.js.map +1 -0
  40. package/dist/cli/formatters/KGOutputFormatter.d.ts +50 -0
  41. package/dist/cli/formatters/KGOutputFormatter.d.ts.map +1 -0
  42. package/dist/cli/formatters/KGOutputFormatter.js +237 -0
  43. package/dist/cli/formatters/KGOutputFormatter.js.map +1 -0
  44. package/dist/cli/index-working.js +138 -0
  45. package/dist/cli/index-working.js.map +1 -1
  46. package/dist/cli/init/claude-config.d.ts +13 -1
  47. package/dist/cli/init/claude-config.d.ts.map +1 -1
  48. package/dist/cli/init/claude-config.js +70 -8
  49. package/dist/cli/init/claude-config.js.map +1 -1
  50. package/dist/cli/init/code-intelligence-init.d.ts +52 -0
  51. package/dist/cli/init/code-intelligence-init.d.ts.map +1 -0
  52. package/dist/cli/init/code-intelligence-init.js +250 -0
  53. package/dist/cli/init/code-intelligence-init.js.map +1 -0
  54. package/dist/cli/init/index.d.ts +2 -2
  55. package/dist/cli/init/index.d.ts.map +1 -1
  56. package/dist/cli/init/index.js +10 -1
  57. package/dist/cli/init/index.js.map +1 -1
  58. package/dist/code-intelligence/chunking/ASTChunker.d.ts +64 -0
  59. package/dist/code-intelligence/chunking/ASTChunker.d.ts.map +1 -0
  60. package/dist/code-intelligence/chunking/ASTChunker.js +344 -0
  61. package/dist/code-intelligence/chunking/ASTChunker.js.map +1 -0
  62. package/dist/code-intelligence/chunking/ChunkSplitter.d.ts +48 -0
  63. package/dist/code-intelligence/chunking/ChunkSplitter.d.ts.map +1 -0
  64. package/dist/code-intelligence/chunking/ChunkSplitter.js +278 -0
  65. package/dist/code-intelligence/chunking/ChunkSplitter.js.map +1 -0
  66. package/dist/code-intelligence/chunking/index.d.ts +8 -0
  67. package/dist/code-intelligence/chunking/index.d.ts.map +1 -0
  68. package/dist/code-intelligence/chunking/index.js +13 -0
  69. package/dist/code-intelligence/chunking/index.js.map +1 -0
  70. package/dist/code-intelligence/chunking/types.d.ts +52 -0
  71. package/dist/code-intelligence/chunking/types.d.ts.map +1 -0
  72. package/dist/code-intelligence/chunking/types.js +6 -0
  73. package/dist/code-intelligence/chunking/types.js.map +1 -0
  74. package/dist/code-intelligence/config/database-schema.d.ts +245 -0
  75. package/dist/code-intelligence/config/database-schema.d.ts.map +1 -0
  76. package/dist/code-intelligence/config/database-schema.js +110 -0
  77. package/dist/code-intelligence/config/database-schema.js.map +1 -0
  78. package/dist/code-intelligence/config/environment.d.ts +53 -0
  79. package/dist/code-intelligence/config/environment.d.ts.map +1 -0
  80. package/dist/code-intelligence/config/environment.js +86 -0
  81. package/dist/code-intelligence/config/environment.js.map +1 -0
  82. package/dist/code-intelligence/config/index.d.ts +10 -0
  83. package/dist/code-intelligence/config/index.d.ts.map +1 -0
  84. package/dist/code-intelligence/config/index.js +36 -0
  85. package/dist/code-intelligence/config/index.js.map +1 -0
  86. package/dist/code-intelligence/embeddings/EmbeddingCache.d.ts +81 -0
  87. package/dist/code-intelligence/embeddings/EmbeddingCache.d.ts.map +1 -0
  88. package/dist/code-intelligence/embeddings/EmbeddingCache.js +168 -0
  89. package/dist/code-intelligence/embeddings/EmbeddingCache.js.map +1 -0
  90. package/dist/code-intelligence/embeddings/NomicEmbedder.d.ts +82 -0
  91. package/dist/code-intelligence/embeddings/NomicEmbedder.d.ts.map +1 -0
  92. package/dist/code-intelligence/embeddings/NomicEmbedder.js +233 -0
  93. package/dist/code-intelligence/embeddings/NomicEmbedder.js.map +1 -0
  94. package/dist/code-intelligence/embeddings/OllamaClient.d.ts +42 -0
  95. package/dist/code-intelligence/embeddings/OllamaClient.d.ts.map +1 -0
  96. package/dist/code-intelligence/embeddings/OllamaClient.js +142 -0
  97. package/dist/code-intelligence/embeddings/OllamaClient.js.map +1 -0
  98. package/dist/code-intelligence/embeddings/index.d.ts +33 -0
  99. package/dist/code-intelligence/embeddings/index.d.ts.map +1 -0
  100. package/dist/code-intelligence/embeddings/index.js +39 -0
  101. package/dist/code-intelligence/embeddings/index.js.map +1 -0
  102. package/dist/code-intelligence/embeddings/types.d.ts +84 -0
  103. package/dist/code-intelligence/embeddings/types.d.ts.map +1 -0
  104. package/dist/code-intelligence/embeddings/types.js +19 -0
  105. package/dist/code-intelligence/embeddings/types.js.map +1 -0
  106. package/dist/code-intelligence/graph/GraphBuilder.d.ts +126 -0
  107. package/dist/code-intelligence/graph/GraphBuilder.d.ts.map +1 -0
  108. package/dist/code-intelligence/graph/GraphBuilder.js +416 -0
  109. package/dist/code-intelligence/graph/GraphBuilder.js.map +1 -0
  110. package/dist/code-intelligence/graph/ImportParser.d.ts +72 -0
  111. package/dist/code-intelligence/graph/ImportParser.d.ts.map +1 -0
  112. package/dist/code-intelligence/graph/ImportParser.js +422 -0
  113. package/dist/code-intelligence/graph/ImportParser.js.map +1 -0
  114. package/dist/code-intelligence/graph/RelationshipExtractor.d.ts +74 -0
  115. package/dist/code-intelligence/graph/RelationshipExtractor.d.ts.map +1 -0
  116. package/dist/code-intelligence/graph/RelationshipExtractor.js +310 -0
  117. package/dist/code-intelligence/graph/RelationshipExtractor.js.map +1 -0
  118. package/dist/code-intelligence/graph/TestMapper.d.ts +99 -0
  119. package/dist/code-intelligence/graph/TestMapper.d.ts.map +1 -0
  120. package/dist/code-intelligence/graph/TestMapper.js +335 -0
  121. package/dist/code-intelligence/graph/TestMapper.js.map +1 -0
  122. package/dist/code-intelligence/graph/index.d.ts +14 -0
  123. package/dist/code-intelligence/graph/index.d.ts.map +1 -0
  124. package/dist/code-intelligence/graph/index.js +19 -0
  125. package/dist/code-intelligence/graph/index.js.map +1 -0
  126. package/dist/code-intelligence/graph/types.d.ts +141 -0
  127. package/dist/code-intelligence/graph/types.d.ts.map +1 -0
  128. package/dist/code-intelligence/graph/types.js +18 -0
  129. package/dist/code-intelligence/graph/types.js.map +1 -0
  130. package/dist/code-intelligence/indexing/FileWatcher.d.ts +90 -0
  131. package/dist/code-intelligence/indexing/FileWatcher.d.ts.map +1 -0
  132. package/dist/code-intelligence/indexing/FileWatcher.js +304 -0
  133. package/dist/code-intelligence/indexing/FileWatcher.js.map +1 -0
  134. package/dist/code-intelligence/indexing/GitChangeDetector.d.ts +76 -0
  135. package/dist/code-intelligence/indexing/GitChangeDetector.d.ts.map +1 -0
  136. package/dist/code-intelligence/indexing/GitChangeDetector.js +347 -0
  137. package/dist/code-intelligence/indexing/GitChangeDetector.js.map +1 -0
  138. package/dist/code-intelligence/indexing/IncrementalIndexer.d.ts +108 -0
  139. package/dist/code-intelligence/indexing/IncrementalIndexer.d.ts.map +1 -0
  140. package/dist/code-intelligence/indexing/IncrementalIndexer.js +269 -0
  141. package/dist/code-intelligence/indexing/IncrementalIndexer.js.map +1 -0
  142. package/dist/code-intelligence/indexing/index.d.ts +11 -0
  143. package/dist/code-intelligence/indexing/index.d.ts.map +1 -0
  144. package/dist/code-intelligence/indexing/index.js +18 -0
  145. package/dist/code-intelligence/indexing/index.js.map +1 -0
  146. package/dist/code-intelligence/indexing/types.d.ts +133 -0
  147. package/dist/code-intelligence/indexing/types.d.ts.map +1 -0
  148. package/dist/code-intelligence/indexing/types.js +27 -0
  149. package/dist/code-intelligence/indexing/types.js.map +1 -0
  150. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts +150 -0
  151. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts.map +1 -0
  152. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js +806 -0
  153. package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js.map +1 -0
  154. package/dist/code-intelligence/orchestrator/index.d.ts +8 -0
  155. package/dist/code-intelligence/orchestrator/index.d.ts.map +1 -0
  156. package/dist/code-intelligence/orchestrator/index.js +24 -0
  157. package/dist/code-intelligence/orchestrator/index.js.map +1 -0
  158. package/dist/code-intelligence/orchestrator/types.d.ts +164 -0
  159. package/dist/code-intelligence/orchestrator/types.d.ts.map +1 -0
  160. package/dist/code-intelligence/orchestrator/types.js +18 -0
  161. package/dist/code-intelligence/orchestrator/types.js.map +1 -0
  162. package/dist/code-intelligence/parser/LanguageRegistry.d.ts +13 -0
  163. package/dist/code-intelligence/parser/LanguageRegistry.d.ts.map +1 -0
  164. package/dist/code-intelligence/parser/LanguageRegistry.js +150 -0
  165. package/dist/code-intelligence/parser/LanguageRegistry.js.map +1 -0
  166. package/dist/code-intelligence/parser/TreeSitterParser.d.ts +98 -0
  167. package/dist/code-intelligence/parser/TreeSitterParser.d.ts.map +1 -0
  168. package/dist/code-intelligence/parser/TreeSitterParser.js +530 -0
  169. package/dist/code-intelligence/parser/TreeSitterParser.js.map +1 -0
  170. package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts +36 -0
  171. package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts.map +1 -0
  172. package/dist/code-intelligence/parser/extractors/BaseExtractor.js +31 -0
  173. package/dist/code-intelligence/parser/extractors/BaseExtractor.js.map +1 -0
  174. package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts +21 -0
  175. package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts.map +1 -0
  176. package/dist/code-intelligence/parser/extractors/GoExtractor.js +249 -0
  177. package/dist/code-intelligence/parser/extractors/GoExtractor.js.map +1 -0
  178. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts +21 -0
  179. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts.map +1 -0
  180. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js +217 -0
  181. package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js.map +1 -0
  182. package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts +20 -0
  183. package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts.map +1 -0
  184. package/dist/code-intelligence/parser/extractors/PythonExtractor.js +237 -0
  185. package/dist/code-intelligence/parser/extractors/PythonExtractor.js.map +1 -0
  186. package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts +21 -0
  187. package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts.map +1 -0
  188. package/dist/code-intelligence/parser/extractors/RustExtractor.js +234 -0
  189. package/dist/code-intelligence/parser/extractors/RustExtractor.js.map +1 -0
  190. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts +23 -0
  191. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts.map +1 -0
  192. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js +247 -0
  193. package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js.map +1 -0
  194. package/dist/code-intelligence/parser/extractors/index.d.ts +7 -0
  195. package/dist/code-intelligence/parser/extractors/index.d.ts.map +1 -0
  196. package/dist/code-intelligence/parser/extractors/index.js +16 -0
  197. package/dist/code-intelligence/parser/extractors/index.js.map +1 -0
  198. package/dist/code-intelligence/parser/index.d.ts +8 -0
  199. package/dist/code-intelligence/parser/index.d.ts.map +1 -0
  200. package/dist/code-intelligence/parser/index.js +12 -0
  201. package/dist/code-intelligence/parser/index.js.map +1 -0
  202. package/dist/code-intelligence/parser/types.d.ts +60 -0
  203. package/dist/code-intelligence/parser/types.d.ts.map +1 -0
  204. package/dist/code-intelligence/parser/types.js +6 -0
  205. package/dist/code-intelligence/parser/types.js.map +1 -0
  206. package/dist/code-intelligence/rag/ContextBuilder.d.ts +82 -0
  207. package/dist/code-intelligence/rag/ContextBuilder.d.ts.map +1 -0
  208. package/dist/code-intelligence/rag/ContextBuilder.js +242 -0
  209. package/dist/code-intelligence/rag/ContextBuilder.js.map +1 -0
  210. package/dist/code-intelligence/rag/GraphExpander.d.ts +95 -0
  211. package/dist/code-intelligence/rag/GraphExpander.d.ts.map +1 -0
  212. package/dist/code-intelligence/rag/GraphExpander.js +250 -0
  213. package/dist/code-intelligence/rag/GraphExpander.js.map +1 -0
  214. package/dist/code-intelligence/rag/index.d.ts +9 -0
  215. package/dist/code-intelligence/rag/index.d.ts.map +1 -0
  216. package/dist/code-intelligence/rag/index.js +25 -0
  217. package/dist/code-intelligence/rag/index.js.map +1 -0
  218. package/dist/code-intelligence/rag/types.d.ts +121 -0
  219. package/dist/code-intelligence/rag/types.d.ts.map +1 -0
  220. package/dist/code-intelligence/rag/types.js +50 -0
  221. package/dist/code-intelligence/rag/types.js.map +1 -0
  222. package/dist/code-intelligence/retrieval/SemanticRetriever.d.ts +62 -0
  223. package/dist/code-intelligence/retrieval/SemanticRetriever.d.ts.map +1 -0
  224. package/dist/code-intelligence/retrieval/SemanticRetriever.js +174 -0
  225. package/dist/code-intelligence/retrieval/SemanticRetriever.js.map +1 -0
  226. package/dist/code-intelligence/retrieval/index.d.ts +9 -0
  227. package/dist/code-intelligence/retrieval/index.d.ts.map +1 -0
  228. package/dist/code-intelligence/retrieval/index.js +16 -0
  229. package/dist/code-intelligence/retrieval/index.js.map +1 -0
  230. package/dist/code-intelligence/retrieval/types.d.ts +118 -0
  231. package/dist/code-intelligence/retrieval/types.d.ts.map +1 -0
  232. package/dist/code-intelligence/retrieval/types.js +46 -0
  233. package/dist/code-intelligence/retrieval/types.js.map +1 -0
  234. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.d.ts +167 -0
  235. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.d.ts.map +1 -0
  236. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.js +365 -0
  237. package/dist/code-intelligence/router/CodeIntelligenceHybridRouter.js.map +1 -0
  238. package/dist/code-intelligence/router/index.d.ts +7 -0
  239. package/dist/code-intelligence/router/index.d.ts.map +1 -0
  240. package/dist/code-intelligence/router/index.js +14 -0
  241. package/dist/code-intelligence/router/index.js.map +1 -0
  242. package/dist/code-intelligence/search/BM25Search.d.ts +74 -0
  243. package/dist/code-intelligence/search/BM25Search.d.ts.map +1 -0
  244. package/dist/code-intelligence/search/BM25Search.js +233 -0
  245. package/dist/code-intelligence/search/BM25Search.js.map +1 -0
  246. package/dist/code-intelligence/search/HybridSearchEngine.d.ts +94 -0
  247. package/dist/code-intelligence/search/HybridSearchEngine.d.ts.map +1 -0
  248. package/dist/code-intelligence/search/HybridSearchEngine.js +168 -0
  249. package/dist/code-intelligence/search/HybridSearchEngine.js.map +1 -0
  250. package/dist/code-intelligence/search/RRFFusion.d.ts +46 -0
  251. package/dist/code-intelligence/search/RRFFusion.d.ts.map +1 -0
  252. package/dist/code-intelligence/search/RRFFusion.js +223 -0
  253. package/dist/code-intelligence/search/RRFFusion.js.map +1 -0
  254. package/dist/code-intelligence/search/VectorSearch.d.ts +157 -0
  255. package/dist/code-intelligence/search/VectorSearch.d.ts.map +1 -0
  256. package/dist/code-intelligence/search/VectorSearch.js +301 -0
  257. package/dist/code-intelligence/search/VectorSearch.js.map +1 -0
  258. package/dist/code-intelligence/search/index.d.ts +14 -0
  259. package/dist/code-intelligence/search/index.d.ts.map +1 -0
  260. package/dist/code-intelligence/search/index.js +23 -0
  261. package/dist/code-intelligence/search/index.js.map +1 -0
  262. package/dist/code-intelligence/search/types.d.ts +201 -0
  263. package/dist/code-intelligence/search/types.d.ts.map +1 -0
  264. package/dist/code-intelligence/search/types.js +35 -0
  265. package/dist/code-intelligence/search/types.js.map +1 -0
  266. package/dist/code-intelligence/service/CodeIntelligenceService.d.ts +171 -0
  267. package/dist/code-intelligence/service/CodeIntelligenceService.d.ts.map +1 -0
  268. package/dist/code-intelligence/service/CodeIntelligenceService.js +325 -0
  269. package/dist/code-intelligence/service/CodeIntelligenceService.js.map +1 -0
  270. package/dist/code-intelligence/service/index.d.ts +7 -0
  271. package/dist/code-intelligence/service/index.d.ts.map +1 -0
  272. package/dist/code-intelligence/service/index.js +14 -0
  273. package/dist/code-intelligence/service/index.js.map +1 -0
  274. package/dist/code-intelligence/storage/CodeChunkStore.d.ts +213 -0
  275. package/dist/code-intelligence/storage/CodeChunkStore.d.ts.map +1 -0
  276. package/dist/code-intelligence/storage/CodeChunkStore.js +542 -0
  277. package/dist/code-intelligence/storage/CodeChunkStore.js.map +1 -0
  278. package/dist/code-intelligence/storage/index.d.ts +7 -0
  279. package/dist/code-intelligence/storage/index.d.ts.map +1 -0
  280. package/dist/code-intelligence/storage/index.js +13 -0
  281. package/dist/code-intelligence/storage/index.js.map +1 -0
  282. package/dist/code-intelligence/visualization/ClassDiagramBuilder.d.ts +51 -0
  283. package/dist/code-intelligence/visualization/ClassDiagramBuilder.d.ts.map +1 -0
  284. package/dist/code-intelligence/visualization/ClassDiagramBuilder.js +180 -0
  285. package/dist/code-intelligence/visualization/ClassDiagramBuilder.js.map +1 -0
  286. package/dist/code-intelligence/visualization/DependencyGraphBuilder.d.ts +66 -0
  287. package/dist/code-intelligence/visualization/DependencyGraphBuilder.d.ts.map +1 -0
  288. package/dist/code-intelligence/visualization/DependencyGraphBuilder.js +203 -0
  289. package/dist/code-intelligence/visualization/DependencyGraphBuilder.js.map +1 -0
  290. package/dist/code-intelligence/visualization/MermaidGenerator.d.ts +76 -0
  291. package/dist/code-intelligence/visualization/MermaidGenerator.d.ts.map +1 -0
  292. package/dist/code-intelligence/visualization/MermaidGenerator.js +368 -0
  293. package/dist/code-intelligence/visualization/MermaidGenerator.js.map +1 -0
  294. package/dist/code-intelligence/visualization/index.d.ts +9 -0
  295. package/dist/code-intelligence/visualization/index.d.ts.map +1 -0
  296. package/dist/code-intelligence/visualization/index.js +15 -0
  297. package/dist/code-intelligence/visualization/index.js.map +1 -0
  298. package/dist/core/FleetManager.d.ts +27 -0
  299. package/dist/core/FleetManager.d.ts.map +1 -1
  300. package/dist/core/FleetManager.js +84 -0
  301. package/dist/core/FleetManager.js.map +1 -1
  302. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  303. package/dist/core/memory/HNSWVectorMemory.js.map +1 -1
  304. package/dist/mcp/server-instructions.d.ts +1 -1
  305. package/dist/mcp/server-instructions.d.ts.map +1 -1
  306. package/dist/mcp/server-instructions.js +1 -1
  307. package/dist/mcp/server-instructions.js.map +1 -1
  308. package/dist/types/index.d.ts +2 -1
  309. package/dist/types/index.d.ts.map +1 -1
  310. package/dist/types/index.js +2 -0
  311. package/dist/types/index.js.map +1 -1
  312. package/docs/reference/agents.md +44 -1
  313. package/package.json +12 -1
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+ /**
3
+ * Recursive splitter for large code entities
4
+ * Splits entities >512 tokens while preserving semantic boundaries
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ChunkSplitter = void 0;
8
+ const crypto_1 = require("crypto");
9
+ class ChunkSplitter {
10
+ constructor(config, tokenCounter) {
11
+ this.config = config;
12
+ this.tokenCounter = tokenCounter;
13
+ }
14
+ /**
15
+ * Split a large entity into smaller chunks recursively
16
+ */
17
+ splitEntity(entity) {
18
+ const tokenCount = this.tokenCounter.count(entity.content);
19
+ // If entity fits within max tokens, return as single chunk
20
+ if (tokenCount <= this.config.maxTokens) {
21
+ return [this.createChunk(entity, entity.content, 0, 1)];
22
+ }
23
+ // Entity is too large - split recursively
24
+ if (!this.config.splitLargeEntities) {
25
+ // Return as single chunk even if over limit
26
+ return [this.createChunk(entity, entity.content, 0, 1)];
27
+ }
28
+ return this.recursiveSplit(entity);
29
+ }
30
+ /**
31
+ * Recursively split entity at semantic boundaries
32
+ */
33
+ recursiveSplit(entity) {
34
+ const chunks = [];
35
+ const lines = entity.content.split('\n');
36
+ // Try to split at natural boundaries
37
+ const boundaries = this.findSemanticBoundaries(entity.content, entity.language);
38
+ if (boundaries.length === 0) {
39
+ // No semantic boundaries found, split by line count
40
+ return this.splitByLines(entity, lines);
41
+ }
42
+ // Split at boundaries
43
+ let currentStart = 0;
44
+ let splitIndex = 0;
45
+ for (let i = 0; i < boundaries.length; i++) {
46
+ const boundary = boundaries[i];
47
+ const segmentLines = lines.slice(currentStart, boundary.lineIndex);
48
+ const segmentContent = segmentLines.join('\n');
49
+ const segmentTokens = this.tokenCounter.count(segmentContent);
50
+ // If this segment is too large, recursively split it
51
+ if (segmentTokens > this.config.maxTokens) {
52
+ const subChunks = this.splitByLines(entity, segmentLines, currentStart);
53
+ chunks.push(...subChunks);
54
+ }
55
+ else if (segmentTokens >= this.config.minTokens || i === boundaries.length - 1) {
56
+ // Valid chunk size or last segment
57
+ chunks.push(this.createChunkFromLines(entity, segmentLines, entity.lineStart + currentStart, splitIndex++, 0 // Will be calculated later
58
+ ));
59
+ }
60
+ currentStart = boundary.lineIndex;
61
+ }
62
+ // Handle remaining lines
63
+ if (currentStart < lines.length) {
64
+ const remainingLines = lines.slice(currentStart);
65
+ const remainingContent = remainingLines.join('\n');
66
+ const remainingTokens = this.tokenCounter.count(remainingContent);
67
+ if (remainingTokens > this.config.maxTokens) {
68
+ chunks.push(...this.splitByLines(entity, remainingLines, currentStart));
69
+ }
70
+ else {
71
+ chunks.push(this.createChunkFromLines(entity, remainingLines, entity.lineStart + currentStart, splitIndex++, 0));
72
+ }
73
+ }
74
+ // Update totalSplits metadata
75
+ const totalSplits = chunks.length;
76
+ chunks.forEach((chunk) => {
77
+ chunk.metadata.totalSplits = totalSplits;
78
+ });
79
+ return chunks;
80
+ }
81
+ /**
82
+ * Find semantic boundaries in code (function/class boundaries, blank lines, etc.)
83
+ */
84
+ findSemanticBoundaries(content, language) {
85
+ const boundaries = [];
86
+ const lines = content.split('\n');
87
+ // Language-specific patterns
88
+ const patterns = this.getLanguagePatterns(language);
89
+ for (let i = 0; i < lines.length; i++) {
90
+ const line = lines[i].trim();
91
+ // Blank line boundary
92
+ if (line === '') {
93
+ boundaries.push({ lineIndex: i, type: 'blank' });
94
+ continue;
95
+ }
96
+ // Function/method boundary
97
+ if (patterns.functionStart.some((p) => line.match(p))) {
98
+ boundaries.push({ lineIndex: i, type: 'function' });
99
+ continue;
100
+ }
101
+ // Class boundary
102
+ if (patterns.classStart.some((p) => line.match(p))) {
103
+ boundaries.push({ lineIndex: i, type: 'class' });
104
+ continue;
105
+ }
106
+ // Block end boundary (closing braces)
107
+ if (patterns.blockEnd.some((p) => line.match(p))) {
108
+ boundaries.push({ lineIndex: i + 1, type: 'block-end' });
109
+ }
110
+ }
111
+ return boundaries;
112
+ }
113
+ /**
114
+ * Get language-specific regex patterns for boundary detection
115
+ */
116
+ getLanguagePatterns(language) {
117
+ const patterns = {
118
+ typescript: {
119
+ functionStart: [
120
+ /^(export\s+)?(async\s+)?function\s+/,
121
+ /^(export\s+)?const\s+\w+\s*=\s*(async\s+)?\(/,
122
+ /^(private|public|protected)\s+(async\s+)?\w+\s*\(/,
123
+ ],
124
+ classStart: [/^(export\s+)?(abstract\s+)?class\s+/, /^(export\s+)?interface\s+/],
125
+ blockEnd: [/^\s*\};\s*$/, /^\s*\}\s*$/, /^\s*\}\);\s*$/],
126
+ },
127
+ javascript: {
128
+ functionStart: [
129
+ /^(export\s+)?(async\s+)?function\s+/,
130
+ /^(export\s+)?const\s+\w+\s*=\s*(async\s+)?\(/,
131
+ ],
132
+ classStart: [/^(export\s+)?class\s+/],
133
+ blockEnd: [/^\s*\};\s*$/, /^\s*\}\s*$/, /^\s*\}\);\s*$/],
134
+ },
135
+ python: {
136
+ functionStart: [/^(async\s+)?def\s+/, /^@\w+/],
137
+ classStart: [/^class\s+/],
138
+ blockEnd: [/^[^\s]/], // Python: dedent indicates block end
139
+ },
140
+ go: {
141
+ functionStart: [/^func\s+/, /^func\s+\(\w+\s+\*?\w+\)\s+\w+/],
142
+ classStart: [/^type\s+\w+\s+struct/, /^type\s+\w+\s+interface/],
143
+ blockEnd: [/^\}/],
144
+ },
145
+ rust: {
146
+ functionStart: [/^(pub\s+)?(async\s+)?fn\s+/, /^impl\s+/],
147
+ classStart: [/^(pub\s+)?struct\s+/, /^(pub\s+)?trait\s+/, /^(pub\s+)?enum\s+/],
148
+ blockEnd: [/^\}/],
149
+ },
150
+ };
151
+ return (patterns[language] || {
152
+ functionStart: [],
153
+ classStart: [],
154
+ blockEnd: [/^\}/],
155
+ });
156
+ }
157
+ /**
158
+ * Split entity by line count when no semantic boundaries work
159
+ */
160
+ splitByLines(entity, lines, startOffset = 0) {
161
+ const chunks = [];
162
+ let currentLines = [];
163
+ let currentLineStart = entity.lineStart + startOffset;
164
+ let splitIndex = 0;
165
+ for (let i = 0; i < lines.length; i++) {
166
+ currentLines.push(lines[i]);
167
+ const content = currentLines.join('\n');
168
+ const tokenCount = this.tokenCounter.count(content);
169
+ // If we exceed max tokens, create a chunk
170
+ if (tokenCount > this.config.maxTokens) {
171
+ // Remove the last line that pushed us over
172
+ currentLines.pop();
173
+ if (currentLines.length > 0) {
174
+ chunks.push(this.createChunkFromLines(entity, currentLines, currentLineStart, splitIndex++, 0));
175
+ }
176
+ // Start new chunk with the line that pushed us over
177
+ currentLines = [lines[i]];
178
+ currentLineStart = entity.lineStart + startOffset + i;
179
+ }
180
+ }
181
+ // Add remaining lines as final chunk
182
+ if (currentLines.length > 0) {
183
+ chunks.push(this.createChunkFromLines(entity, currentLines, currentLineStart, splitIndex++, 0));
184
+ }
185
+ // Update totalSplits
186
+ const totalSplits = chunks.length;
187
+ chunks.forEach((chunk) => {
188
+ chunk.metadata.totalSplits = totalSplits;
189
+ });
190
+ return chunks;
191
+ }
192
+ /**
193
+ * Create a chunk from entity
194
+ */
195
+ createChunk(entity, content, splitIndex, totalSplits) {
196
+ const tokenCount = this.tokenCounter.count(content);
197
+ return {
198
+ id: this.generateChunkId(entity.filePath, entity.lineStart, splitIndex),
199
+ content,
200
+ filePath: entity.filePath,
201
+ language: entity.language,
202
+ lineStart: entity.lineStart,
203
+ lineEnd: entity.lineEnd,
204
+ tokenCount,
205
+ parentEntity: entity.metadata.parentClass,
206
+ entityType: this.mapEntityType(entity.type),
207
+ metadata: {
208
+ filePath: entity.filePath,
209
+ language: entity.language,
210
+ lineStart: entity.lineStart,
211
+ lineEnd: entity.lineEnd,
212
+ parentEntity: entity.metadata.parentClass,
213
+ entityType: this.mapEntityType(entity.type),
214
+ signature: entity.signature,
215
+ isComplete: totalSplits === 1,
216
+ splitIndex: totalSplits > 1 ? splitIndex : undefined,
217
+ totalSplits: totalSplits > 1 ? totalSplits : undefined,
218
+ originalEntityName: entity.name,
219
+ ...entity.metadata,
220
+ },
221
+ };
222
+ }
223
+ /**
224
+ * Create chunk from lines
225
+ */
226
+ createChunkFromLines(entity, lines, lineStart, splitIndex, totalSplits) {
227
+ const content = lines.join('\n');
228
+ const tokenCount = this.tokenCounter.count(content);
229
+ const lineEnd = lineStart + lines.length - 1;
230
+ return {
231
+ id: this.generateChunkId(entity.filePath, lineStart, splitIndex),
232
+ content,
233
+ filePath: entity.filePath,
234
+ language: entity.language,
235
+ lineStart,
236
+ lineEnd,
237
+ tokenCount,
238
+ parentEntity: entity.metadata.parentClass,
239
+ entityType: this.mapEntityType(entity.type),
240
+ metadata: {
241
+ filePath: entity.filePath,
242
+ language: entity.language,
243
+ lineStart,
244
+ lineEnd,
245
+ parentEntity: entity.metadata.parentClass,
246
+ entityType: this.mapEntityType(entity.type),
247
+ signature: entity.signature,
248
+ isComplete: false,
249
+ splitIndex,
250
+ totalSplits,
251
+ originalEntityName: entity.name,
252
+ ...entity.metadata,
253
+ },
254
+ };
255
+ }
256
+ /**
257
+ * Map parser entity type to chunk entity type
258
+ */
259
+ mapEntityType(type) {
260
+ const mapping = {
261
+ function: 'function',
262
+ class: 'class',
263
+ method: 'method',
264
+ interface: 'interface',
265
+ type: 'type',
266
+ };
267
+ return mapping[type] || 'fragment';
268
+ }
269
+ /**
270
+ * Generate unique chunk ID
271
+ */
272
+ generateChunkId(filePath, lineStart, splitIndex) {
273
+ const content = `${filePath}:${lineStart}:${splitIndex}`;
274
+ return (0, crypto_1.createHash)('sha256').update(content).digest('hex').substring(0, 16);
275
+ }
276
+ }
277
+ exports.ChunkSplitter = ChunkSplitter;
278
+ //# sourceMappingURL=ChunkSplitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChunkSplitter.js","sourceRoot":"","sources":["../../../src/code-intelligence/chunking/ChunkSplitter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Code Intelligence Chunking Module
3
+ * AST-aware code chunking with semantic preservation
4
+ */
5
+ export { ASTChunker, SimpleTokenCounter } from './ASTChunker.js';
6
+ export { ChunkSplitter } from './ChunkSplitter.js';
7
+ export type { CodeChunk, ChunkingResult, ChunkingConfig, TokenCounter, EntityType, ChunkMetadata, } from './types.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/code-intelligence/chunking/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EACV,SAAS,EACT,cAAc,EACd,cAAc,EACd,YAAY,EACZ,UAAU,EACV,aAAa,GACd,MAAM,YAAY,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ /**
3
+ * Code Intelligence Chunking Module
4
+ * AST-aware code chunking with semantic preservation
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ChunkSplitter = exports.SimpleTokenCounter = exports.ASTChunker = void 0;
8
+ var ASTChunker_js_1 = require("./ASTChunker.js");
9
+ Object.defineProperty(exports, "ASTChunker", { enumerable: true, get: function () { return ASTChunker_js_1.ASTChunker; } });
10
+ Object.defineProperty(exports, "SimpleTokenCounter", { enumerable: true, get: function () { return ASTChunker_js_1.SimpleTokenCounter; } });
11
+ var ChunkSplitter_js_1 = require("./ChunkSplitter.js");
12
+ Object.defineProperty(exports, "ChunkSplitter", { enumerable: true, get: function () { return ChunkSplitter_js_1.ChunkSplitter; } });
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/code-intelligence/chunking/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,iDAAiE;AAAxD,2GAAA,UAAU,OAAA;AAAE,mHAAA,kBAAkB,OAAA;AACvC,uDAAmD;AAA1C,iHAAA,aAAa,OAAA"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Type definitions for AST-aware code chunking
3
+ */
4
+ export type EntityType = 'function' | 'class' | 'method' | 'module' | 'fragment' | 'interface' | 'type';
5
+ export interface CodeChunk {
6
+ id: string;
7
+ content: string;
8
+ filePath: string;
9
+ language: string;
10
+ lineStart: number;
11
+ lineEnd: number;
12
+ tokenCount: number;
13
+ parentEntity?: string;
14
+ entityType: EntityType;
15
+ metadata: Record<string, unknown>;
16
+ }
17
+ export interface ChunkingResult {
18
+ chunks: CodeChunk[];
19
+ stats: {
20
+ totalChunks: number;
21
+ avgTokens: number;
22
+ minTokens: number;
23
+ maxTokens: number;
24
+ semanticPreservation: number;
25
+ totalTokens: number;
26
+ };
27
+ }
28
+ export interface ChunkingConfig {
29
+ minTokens: number;
30
+ maxTokens: number;
31
+ overlapPercent: number;
32
+ overlapTokens?: number;
33
+ preserveSemanticBoundaries: boolean;
34
+ splitLargeEntities: boolean;
35
+ }
36
+ export interface TokenCounter {
37
+ count(text: string): number;
38
+ }
39
+ export interface ChunkMetadata {
40
+ filePath: string;
41
+ language: string;
42
+ lineStart: number;
43
+ lineEnd: number;
44
+ parentEntity?: string;
45
+ entityType: EntityType;
46
+ signature?: string;
47
+ isComplete: boolean;
48
+ splitIndex?: number;
49
+ totalSplits?: number;
50
+ [key: string]: unknown;
51
+ }
52
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/code-intelligence/chunking/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,MAAM,CAAC;AAExG,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0BAA0B,EAAE,OAAO,CAAC;IACpC,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Type definitions for AST-aware code chunking
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/code-intelligence/chunking/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,245 @@
1
+ /**
2
+ * Database Schema Configuration for Code Intelligence System
3
+ *
4
+ * Defines TypeScript types and constants for code_chunks, code_entities,
5
+ * and entity_relationships tables with RuVector embeddings.
6
+ */
7
+ export declare const CODE_INTELLIGENCE_SCHEMA: {
8
+ readonly tables: {
9
+ readonly codeChunks: "code_chunks";
10
+ readonly codeEntities: "code_entities";
11
+ readonly entityRelationships: "entity_relationships";
12
+ };
13
+ readonly relationshipTypes: readonly ["IMPORTS", "TESTS", "CALLS", "EXTENDS", "IMPLEMENTS", "DEFINES", "REFERENCES"];
14
+ };
15
+ /**
16
+ * Code chunk types representing different code structures
17
+ */
18
+ export type ChunkType = 'function' | 'class' | 'module' | 'block' | 'interface' | 'type';
19
+ /**
20
+ * Code entity types for parsed code elements
21
+ */
22
+ export type EntityType = 'function' | 'class' | 'method' | 'interface' | 'variable' | 'type' | 'module';
23
+ /**
24
+ * Relationship types between code entities
25
+ */
26
+ export type RelationshipType = typeof CODE_INTELLIGENCE_SCHEMA.relationshipTypes[number];
27
+ /**
28
+ * Programming languages supported
29
+ */
30
+ export type Language = 'typescript' | 'javascript' | 'python' | 'java' | 'go' | 'rust' | 'csharp' | 'cpp' | 'other';
31
+ /**
32
+ * code_chunks table row
33
+ * Stores code chunks with RuVector embeddings for semantic search
34
+ */
35
+ export interface CodeChunk {
36
+ id: string;
37
+ file_path: string;
38
+ chunk_type: ChunkType | null;
39
+ name: string | null;
40
+ line_start: number | null;
41
+ line_end: number | null;
42
+ content: string;
43
+ language: Language | null;
44
+ embedding: number[] | null;
45
+ metadata: Record<string, unknown>;
46
+ created_at: Date;
47
+ updated_at: Date;
48
+ }
49
+ /**
50
+ * code_entities table row
51
+ * Stores parsed code entities (functions, classes, methods)
52
+ */
53
+ export interface CodeEntity {
54
+ id: string;
55
+ file_path: string;
56
+ entity_type: EntityType;
57
+ name: string;
58
+ signature: string | null;
59
+ line_start: number | null;
60
+ line_end: number | null;
61
+ language: Language | null;
62
+ parent_id: string | null;
63
+ metadata: Record<string, unknown>;
64
+ created_at: Date;
65
+ }
66
+ /**
67
+ * entity_relationships table row
68
+ * Stores relationships between code entities for graph analysis
69
+ */
70
+ export interface EntityRelationship {
71
+ id: number;
72
+ source_id: string;
73
+ target_id: string;
74
+ relationship_type: RelationshipType;
75
+ confidence: number;
76
+ metadata: Record<string, unknown>;
77
+ created_at: Date;
78
+ }
79
+ /**
80
+ * DTO for inserting a new code chunk
81
+ */
82
+ export interface InsertCodeChunk {
83
+ id: string;
84
+ file_path: string;
85
+ chunk_type?: ChunkType;
86
+ name?: string;
87
+ line_start?: number;
88
+ line_end?: number;
89
+ content: string;
90
+ language?: Language;
91
+ embedding?: number[];
92
+ metadata?: Record<string, unknown>;
93
+ }
94
+ /**
95
+ * DTO for updating a code chunk
96
+ */
97
+ export interface UpdateCodeChunk {
98
+ chunk_type?: ChunkType;
99
+ name?: string;
100
+ line_start?: number;
101
+ line_end?: number;
102
+ content?: string;
103
+ language?: Language;
104
+ embedding?: number[];
105
+ metadata?: Record<string, unknown>;
106
+ }
107
+ /**
108
+ * DTO for inserting a new code entity
109
+ */
110
+ export interface InsertCodeEntity {
111
+ id: string;
112
+ file_path: string;
113
+ entity_type: EntityType;
114
+ name: string;
115
+ signature?: string;
116
+ line_start?: number;
117
+ line_end?: number;
118
+ language?: Language;
119
+ parent_id?: string;
120
+ metadata?: Record<string, unknown>;
121
+ }
122
+ /**
123
+ * DTO for updating a code entity
124
+ */
125
+ export interface UpdateCodeEntity {
126
+ file_path?: string;
127
+ entity_type?: EntityType;
128
+ name?: string;
129
+ signature?: string;
130
+ line_start?: number;
131
+ line_end?: number;
132
+ language?: Language;
133
+ parent_id?: string;
134
+ metadata?: Record<string, unknown>;
135
+ }
136
+ /**
137
+ * DTO for inserting a new entity relationship
138
+ */
139
+ export interface InsertEntityRelationship {
140
+ source_id: string;
141
+ target_id: string;
142
+ relationship_type: RelationshipType;
143
+ confidence?: number;
144
+ metadata?: Record<string, unknown>;
145
+ }
146
+ /**
147
+ * DTO for updating an entity relationship
148
+ */
149
+ export interface UpdateEntityRelationship {
150
+ relationship_type?: RelationshipType;
151
+ confidence?: number;
152
+ metadata?: Record<string, unknown>;
153
+ }
154
+ /**
155
+ * Result from hybrid_code_search function
156
+ */
157
+ export interface HybridSearchResult {
158
+ id: string;
159
+ file_path: string;
160
+ chunk_type: ChunkType | null;
161
+ name: string | null;
162
+ content: string;
163
+ semantic_score: number;
164
+ keyword_score: number;
165
+ hybrid_score: number;
166
+ }
167
+ /**
168
+ * Code entity with relationships
169
+ */
170
+ export interface CodeEntityWithRelationships extends CodeEntity {
171
+ outgoing_relationships: EntityRelationship[];
172
+ incoming_relationships: EntityRelationship[];
173
+ }
174
+ /**
175
+ * Graph node representation for visualization
176
+ */
177
+ export interface GraphNode {
178
+ id: string;
179
+ label: string;
180
+ type: EntityType;
181
+ file_path: string;
182
+ metadata: Record<string, unknown>;
183
+ }
184
+ /**
185
+ * Graph edge representation for visualization
186
+ */
187
+ export interface GraphEdge {
188
+ source: string;
189
+ target: string;
190
+ relationship: RelationshipType;
191
+ confidence: number;
192
+ }
193
+ /**
194
+ * Default hybrid search weights
195
+ */
196
+ export declare const HYBRID_SEARCH_DEFAULTS: {
197
+ readonly semanticWeight: 0.7;
198
+ readonly keywordWeight: 0.3;
199
+ readonly limitCount: 10;
200
+ };
201
+ /**
202
+ * RuVector embedding dimensions
203
+ */
204
+ export declare const EMBEDDING_DIMENSIONS = 768;
205
+ /**
206
+ * Confidence thresholds for relationships
207
+ */
208
+ export declare const CONFIDENCE_THRESHOLDS: {
209
+ readonly high: 0.9;
210
+ readonly medium: 0.7;
211
+ readonly low: 0.5;
212
+ };
213
+ /**
214
+ * Chunk size limits (characters)
215
+ */
216
+ export declare const CHUNK_SIZE_LIMITS: {
217
+ readonly min: 50;
218
+ readonly max: 8000;
219
+ readonly optimal: 2000;
220
+ };
221
+ /**
222
+ * Validates if a relationship type is valid
223
+ */
224
+ export declare function isValidRelationshipType(type: string): type is RelationshipType;
225
+ /**
226
+ * Validates if a chunk type is valid
227
+ */
228
+ export declare function isValidChunkType(type: string): type is ChunkType;
229
+ /**
230
+ * Validates if an entity type is valid
231
+ */
232
+ export declare function isValidEntityType(type: string): type is EntityType;
233
+ /**
234
+ * Validates if a language is valid
235
+ */
236
+ export declare function isValidLanguage(lang: string): lang is Language;
237
+ /**
238
+ * Generates a unique ID for a code chunk
239
+ */
240
+ export declare function generateChunkId(filePath: string, lineStart: number, lineEnd: number): string;
241
+ /**
242
+ * Generates a unique ID for a code entity
243
+ */
244
+ export declare function generateEntityId(filePath: string, entityType: EntityType, name: string): string;
245
+ //# sourceMappingURL=database-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-schema.d.ts","sourceRoot":"","sources":["../../../src/code-intelligence/config/database-schema.ts"],"names":[],"mappings":"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"}