codesift-mcp 0.10.1 → 0.11.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 (388) hide show
  1. package/dist/cache/hono-cache.d.ts.map +1 -1
  2. package/dist/cli/commands.d.ts.map +1 -1
  3. package/dist/cli/commands.js +104 -0
  4. package/dist/cli/commands.js.map +1 -1
  5. package/dist/cli/embed-child-marker.d.ts +10 -0
  6. package/dist/cli/embed-child-marker.d.ts.map +1 -0
  7. package/dist/cli/embed-child-marker.js +10 -0
  8. package/dist/cli/embed-child-marker.js.map +1 -0
  9. package/dist/cli/embed-child.d.ts +2 -0
  10. package/dist/cli/embed-child.d.ts.map +1 -0
  11. package/dist/cli/embed-child.js +52 -0
  12. package/dist/cli/embed-child.js.map +1 -0
  13. package/dist/cli/git-hooks-installer.js.map +1 -1
  14. package/dist/cli/help.d.ts +1 -1
  15. package/dist/cli/help.d.ts.map +1 -1
  16. package/dist/cli/help.js +22 -0
  17. package/dist/cli/help.js.map +1 -1
  18. package/dist/cli/hooks/pre-tool-use.d.ts.map +1 -1
  19. package/dist/cli/hooks/pre-tool-use.js +197 -10
  20. package/dist/cli/hooks/pre-tool-use.js.map +1 -1
  21. package/dist/cli/hooks/shared.d.ts +17 -0
  22. package/dist/cli/hooks/shared.d.ts.map +1 -1
  23. package/dist/cli/hooks/shared.js +51 -0
  24. package/dist/cli/hooks/shared.js.map +1 -1
  25. package/dist/cli/service.d.ts +133 -0
  26. package/dist/cli/service.d.ts.map +1 -0
  27. package/dist/cli/service.js +317 -0
  28. package/dist/cli/service.js.map +1 -0
  29. package/dist/cli/setup/fs.js.map +1 -1
  30. package/dist/cli/setup/mcp.d.ts.map +1 -1
  31. package/dist/cli/setup/mcp.js +5 -2
  32. package/dist/cli/setup/mcp.js.map +1 -1
  33. package/dist/cli/setup.d.ts.map +1 -1
  34. package/dist/cli/telemetry-commands.js.map +1 -1
  35. package/dist/cli.js +29 -4
  36. package/dist/cli.js.map +1 -1
  37. package/dist/config.d.ts +2 -0
  38. package/dist/config.d.ts.map +1 -1
  39. package/dist/config.js +5 -0
  40. package/dist/config.js.map +1 -1
  41. package/dist/formatter-dispatch.d.ts.map +1 -1
  42. package/dist/instructions.d.ts +1 -1
  43. package/dist/instructions.d.ts.map +1 -1
  44. package/dist/instructions.js +1 -0
  45. package/dist/instructions.js.map +1 -1
  46. package/dist/lsp/lsp-client.d.ts.map +1 -1
  47. package/dist/lsp/lsp-client.js.map +1 -1
  48. package/dist/lsp/lsp-manager.d.ts.map +1 -1
  49. package/dist/lsp/lsp-tools.d.ts.map +1 -1
  50. package/dist/lsp/lsp-tools.js +21 -1
  51. package/dist/lsp/lsp-tools.js.map +1 -1
  52. package/dist/parser/astro-template/state.d.ts.map +1 -1
  53. package/dist/parser/extractors/_shared.d.ts +4 -4
  54. package/dist/parser/extractors/_shared.d.ts.map +1 -1
  55. package/dist/parser/extractors/_shared.js.map +1 -1
  56. package/dist/parser/extractors/conversation.js.map +1 -1
  57. package/dist/parser/extractors/go.d.ts +2 -2
  58. package/dist/parser/extractors/go.d.ts.map +1 -1
  59. package/dist/parser/extractors/go.js.map +1 -1
  60. package/dist/parser/extractors/gradle-kts.d.ts +2 -2
  61. package/dist/parser/extractors/gradle-kts.d.ts.map +1 -1
  62. package/dist/parser/extractors/gradle-kts.js.map +1 -1
  63. package/dist/parser/extractors/hono-app-discovery.d.ts +2 -2
  64. package/dist/parser/extractors/hono-app-discovery.d.ts.map +1 -1
  65. package/dist/parser/extractors/hono-app-discovery.js.map +1 -1
  66. package/dist/parser/extractors/hono-ast-utils.d.ts +4 -4
  67. package/dist/parser/extractors/hono-ast-utils.d.ts.map +1 -1
  68. package/dist/parser/extractors/hono-ast-utils.js.map +1 -1
  69. package/dist/parser/extractors/hono-context-extractor.d.ts +2 -2
  70. package/dist/parser/extractors/hono-context-extractor.d.ts.map +1 -1
  71. package/dist/parser/extractors/hono-context-extractor.js.map +1 -1
  72. package/dist/parser/extractors/hono-inline-analyzer.d.ts +2 -2
  73. package/dist/parser/extractors/hono-inline-analyzer.d.ts.map +1 -1
  74. package/dist/parser/extractors/hono-inline-analyzer.js.map +1 -1
  75. package/dist/parser/extractors/hono-middleware-extractor.d.ts +2 -2
  76. package/dist/parser/extractors/hono-middleware-extractor.d.ts.map +1 -1
  77. package/dist/parser/extractors/hono-middleware-extractor.js.map +1 -1
  78. package/dist/parser/extractors/hono-openapi-extractor.d.ts +2 -2
  79. package/dist/parser/extractors/hono-openapi-extractor.d.ts.map +1 -1
  80. package/dist/parser/extractors/hono-openapi-extractor.js.map +1 -1
  81. package/dist/parser/extractors/hono-route-extractor.d.ts +2 -2
  82. package/dist/parser/extractors/hono-route-extractor.d.ts.map +1 -1
  83. package/dist/parser/extractors/hono-route-extractor.js.map +1 -1
  84. package/dist/parser/extractors/hono-route-utils.d.ts +2 -2
  85. package/dist/parser/extractors/hono-route-utils.d.ts.map +1 -1
  86. package/dist/parser/extractors/hono-route-utils.js.map +1 -1
  87. package/dist/parser/extractors/hono-runtime-extractor.d.ts +2 -2
  88. package/dist/parser/extractors/hono-runtime-extractor.d.ts.map +1 -1
  89. package/dist/parser/extractors/hono-runtime-extractor.js.map +1 -1
  90. package/dist/parser/extractors/hono.d.ts.map +1 -1
  91. package/dist/parser/extractors/hono.js.map +1 -1
  92. package/dist/parser/extractors/javascript.d.ts +2 -2
  93. package/dist/parser/extractors/javascript.d.ts.map +1 -1
  94. package/dist/parser/extractors/javascript.js.map +1 -1
  95. package/dist/parser/extractors/kotlin-ast-helpers.d.ts +9 -9
  96. package/dist/parser/extractors/kotlin-ast-helpers.d.ts.map +1 -1
  97. package/dist/parser/extractors/kotlin-ast-helpers.js.map +1 -1
  98. package/dist/parser/extractors/kotlin-test-symbols.d.ts +4 -4
  99. package/dist/parser/extractors/kotlin-test-symbols.d.ts.map +1 -1
  100. package/dist/parser/extractors/kotlin-test-symbols.js.map +1 -1
  101. package/dist/parser/extractors/kotlin.d.ts +2 -2
  102. package/dist/parser/extractors/kotlin.d.ts.map +1 -1
  103. package/dist/parser/extractors/kotlin.js.map +1 -1
  104. package/dist/parser/extractors/php.d.ts +2 -2
  105. package/dist/parser/extractors/php.d.ts.map +1 -1
  106. package/dist/parser/extractors/php.js.map +1 -1
  107. package/dist/parser/extractors/python.d.ts +2 -2
  108. package/dist/parser/extractors/python.d.ts.map +1 -1
  109. package/dist/parser/extractors/python.js.map +1 -1
  110. package/dist/parser/extractors/rust.d.ts +2 -2
  111. package/dist/parser/extractors/rust.d.ts.map +1 -1
  112. package/dist/parser/extractors/rust.js.map +1 -1
  113. package/dist/parser/extractors/sql-boundaries.js.map +1 -1
  114. package/dist/parser/extractors/typescript-cjs-nodes.d.ts +3 -3
  115. package/dist/parser/extractors/typescript-cjs-nodes.d.ts.map +1 -1
  116. package/dist/parser/extractors/typescript-cjs-nodes.js.map +1 -1
  117. package/dist/parser/extractors/typescript-class-nodes.d.ts +6 -6
  118. package/dist/parser/extractors/typescript-class-nodes.d.ts.map +1 -1
  119. package/dist/parser/extractors/typescript-class-nodes.js.map +1 -1
  120. package/dist/parser/extractors/typescript-declaration-nodes.d.ts +3 -3
  121. package/dist/parser/extractors/typescript-declaration-nodes.d.ts.map +1 -1
  122. package/dist/parser/extractors/typescript-declaration-nodes.js.map +1 -1
  123. package/dist/parser/extractors/typescript-module-nodes.d.ts +4 -4
  124. package/dist/parser/extractors/typescript-module-nodes.d.ts.map +1 -1
  125. package/dist/parser/extractors/typescript-module-nodes.js.map +1 -1
  126. package/dist/parser/extractors/typescript-react.d.ts +6 -6
  127. package/dist/parser/extractors/typescript-react.d.ts.map +1 -1
  128. package/dist/parser/extractors/typescript-react.js.map +1 -1
  129. package/dist/parser/extractors/typescript-shared.d.ts +8 -8
  130. package/dist/parser/extractors/typescript-shared.d.ts.map +1 -1
  131. package/dist/parser/extractors/typescript-shared.js.map +1 -1
  132. package/dist/parser/extractors/typescript-test-nodes.d.ts +2 -2
  133. package/dist/parser/extractors/typescript-test-nodes.d.ts.map +1 -1
  134. package/dist/parser/extractors/typescript-test-nodes.js.map +1 -1
  135. package/dist/parser/extractors/typescript-type-nodes.d.ts +4 -4
  136. package/dist/parser/extractors/typescript-type-nodes.d.ts.map +1 -1
  137. package/dist/parser/extractors/typescript-type-nodes.js.map +1 -1
  138. package/dist/parser/extractors/typescript.d.ts +2 -2
  139. package/dist/parser/extractors/typescript.d.ts.map +1 -1
  140. package/dist/parser/extractors/typescript.js.map +1 -1
  141. package/dist/parser/parse-cache.d.ts +3 -3
  142. package/dist/parser/parse-cache.d.ts.map +1 -1
  143. package/dist/parser/parse-cache.js.map +1 -1
  144. package/dist/parser/parser-manager.d.ts +3 -2
  145. package/dist/parser/parser-manager.d.ts.map +1 -1
  146. package/dist/parser/parser-manager.js +9 -3
  147. package/dist/parser/parser-manager.js.map +1 -1
  148. package/dist/parser/parser-pool.d.ts.map +1 -1
  149. package/dist/parser/parser-pool.js +39 -8
  150. package/dist/parser/parser-pool.js.map +1 -1
  151. package/dist/parser/symbol-extractor.d.ts +2 -2
  152. package/dist/parser/symbol-extractor.d.ts.map +1 -1
  153. package/dist/parser/symbol-extractor.js.map +1 -1
  154. package/dist/register-tool-groups/core/search.d.ts.map +1 -1
  155. package/dist/register-tool-groups/core/search.js +12 -2
  156. package/dist/register-tool-groups/core/search.js.map +1 -1
  157. package/dist/register-tool-groups/core/symbols.d.ts.map +1 -1
  158. package/dist/register-tool-groups/core/symbols.js +45 -6
  159. package/dist/register-tool-groups/core/symbols.js.map +1 -1
  160. package/dist/register-tool-groups/meta.js.map +1 -1
  161. package/dist/register-tool-groups/shared.d.ts.map +1 -1
  162. package/dist/register-tools/discovery.d.ts +18 -0
  163. package/dist/register-tools/discovery.d.ts.map +1 -1
  164. package/dist/register-tools/discovery.js +71 -0
  165. package/dist/register-tools/discovery.js.map +1 -1
  166. package/dist/register-tools.d.ts +31 -1
  167. package/dist/register-tools.d.ts.map +1 -1
  168. package/dist/register-tools.js +76 -6
  169. package/dist/register-tools.js.map +1 -1
  170. package/dist/retrieval/codebase-retrieval.js.map +1 -1
  171. package/dist/retrieval/retrieval-schemas.d.ts +13 -13
  172. package/dist/retrieval/semantic-handlers.d.ts.map +1 -1
  173. package/dist/retrieval/semantic-handlers.js +15 -1
  174. package/dist/retrieval/semantic-handlers.js.map +1 -1
  175. package/dist/search/semantic.d.ts +63 -3
  176. package/dist/search/semantic.d.ts.map +1 -1
  177. package/dist/search/semantic.js +196 -37
  178. package/dist/search/semantic.js.map +1 -1
  179. package/dist/search/static-embedding-provider.d.ts.map +1 -1
  180. package/dist/search/static-embedding-provider.js.map +1 -1
  181. package/dist/search/tool-embedding-storage.d.ts.map +1 -1
  182. package/dist/search/tool-embedding-storage.js +5 -1
  183. package/dist/search/tool-embedding-storage.js.map +1 -1
  184. package/dist/server-helpers/repo-resolution.d.ts +18 -4
  185. package/dist/server-helpers/repo-resolution.d.ts.map +1 -1
  186. package/dist/server-helpers/repo-resolution.js +50 -11
  187. package/dist/server-helpers/repo-resolution.js.map +1 -1
  188. package/dist/server-helpers/response-hints.d.ts.map +1 -1
  189. package/dist/server-helpers/response-hints.js +41 -0
  190. package/dist/server-helpers/response-hints.js.map +1 -1
  191. package/dist/server.d.ts.map +1 -1
  192. package/dist/server.js +15 -3
  193. package/dist/server.js.map +1 -1
  194. package/dist/storage/_shared.d.ts +15 -0
  195. package/dist/storage/_shared.d.ts.map +1 -1
  196. package/dist/storage/_shared.js +39 -2
  197. package/dist/storage/_shared.js.map +1 -1
  198. package/dist/storage/chunk-store.d.ts.map +1 -1
  199. package/dist/storage/chunk-store.js +38 -6
  200. package/dist/storage/chunk-store.js.map +1 -1
  201. package/dist/storage/embedding-store.d.ts +1 -1
  202. package/dist/storage/embedding-store.d.ts.map +1 -1
  203. package/dist/storage/embedding-store.js +54 -4
  204. package/dist/storage/embedding-store.js.map +1 -1
  205. package/dist/storage/index-store.d.ts +2 -0
  206. package/dist/storage/index-store.d.ts.map +1 -1
  207. package/dist/storage/index-store.js +101 -22
  208. package/dist/storage/index-store.js.map +1 -1
  209. package/dist/storage/registry.d.ts.map +1 -1
  210. package/dist/storage/registry.js +48 -19
  211. package/dist/storage/registry.js.map +1 -1
  212. package/dist/storage/telemetry/env-profile.js.map +1 -1
  213. package/dist/storage/usage-tracker.d.ts +13 -0
  214. package/dist/storage/usage-tracker.d.ts.map +1 -1
  215. package/dist/storage/usage-tracker.js +58 -4
  216. package/dist/storage/usage-tracker.js.map +1 -1
  217. package/dist/tools/agent-config-tools.js.map +1 -1
  218. package/dist/tools/ast-query-tools.d.ts.map +1 -1
  219. package/dist/tools/ast-query-tools.js +12 -2
  220. package/dist/tools/ast-query-tools.js.map +1 -1
  221. package/dist/tools/astro-actions/ast.d.ts +7 -7
  222. package/dist/tools/astro-actions/ast.d.ts.map +1 -1
  223. package/dist/tools/astro-actions/ast.js.map +1 -1
  224. package/dist/tools/astro-actions/parser.d.ts.map +1 -1
  225. package/dist/tools/astro-actions/parser.js +3 -0
  226. package/dist/tools/astro-actions/parser.js.map +1 -1
  227. package/dist/tools/astro-actions/types.d.ts.map +1 -1
  228. package/dist/tools/astro-actions/zod-ast.d.ts +3 -3
  229. package/dist/tools/astro-actions/zod-ast.d.ts.map +1 -1
  230. package/dist/tools/astro-actions/zod-ast.js.map +1 -1
  231. package/dist/tools/astro-audit.js.map +1 -1
  232. package/dist/tools/astro-config.d.ts.map +1 -1
  233. package/dist/tools/astro-config.js +3 -0
  234. package/dist/tools/astro-config.js.map +1 -1
  235. package/dist/tools/astro-content-collections/discovery.d.ts +2 -2
  236. package/dist/tools/astro-content-collections/discovery.d.ts.map +1 -1
  237. package/dist/tools/astro-content-collections/discovery.js.map +1 -1
  238. package/dist/tools/astro-content-collections/schema.d.ts +2 -2
  239. package/dist/tools/astro-content-collections/schema.d.ts.map +1 -1
  240. package/dist/tools/astro-content-collections/schema.js.map +1 -1
  241. package/dist/tools/astro-content-collections.d.ts.map +1 -1
  242. package/dist/tools/astro-content-collections.js +5 -1
  243. package/dist/tools/astro-content-collections.js.map +1 -1
  244. package/dist/tools/astro-db-audit.d.ts.map +1 -1
  245. package/dist/tools/astro-db-audit.js +8 -0
  246. package/dist/tools/astro-db-audit.js.map +1 -1
  247. package/dist/tools/astro-db-parser.d.ts.map +1 -1
  248. package/dist/tools/astro-db-parser.js +3 -0
  249. package/dist/tools/astro-db-parser.js.map +1 -1
  250. package/dist/tools/astro-env-validator.d.ts.map +1 -1
  251. package/dist/tools/astro-env-validator.js +4 -0
  252. package/dist/tools/astro-env-validator.js.map +1 -1
  253. package/dist/tools/astro-helpers.d.ts +6 -6
  254. package/dist/tools/astro-helpers.d.ts.map +1 -1
  255. package/dist/tools/astro-helpers.js.map +1 -1
  256. package/dist/tools/astro-middleware.d.ts.map +1 -1
  257. package/dist/tools/astro-middleware.js +4 -0
  258. package/dist/tools/astro-middleware.js.map +1 -1
  259. package/dist/tools/astro-sessions.d.ts.map +1 -1
  260. package/dist/tools/astro-sessions.js +4 -0
  261. package/dist/tools/astro-sessions.js.map +1 -1
  262. package/dist/tools/complexity-tools.d.ts.map +1 -1
  263. package/dist/tools/complexity-tools.js +51 -15
  264. package/dist/tools/complexity-tools.js.map +1 -1
  265. package/dist/tools/context-tools.js.map +1 -1
  266. package/dist/tools/conversation-cache.d.ts.map +1 -1
  267. package/dist/tools/conversation-cache.js +2 -1
  268. package/dist/tools/conversation-cache.js.map +1 -1
  269. package/dist/tools/conversation-index-tools.d.ts +3 -1
  270. package/dist/tools/conversation-index-tools.d.ts.map +1 -1
  271. package/dist/tools/conversation-index-tools.js +24 -8
  272. package/dist/tools/conversation-index-tools.js.map +1 -1
  273. package/dist/tools/cross-repo-outbound-lexer/context.d.ts.map +1 -1
  274. package/dist/tools/cross-repo-outbound-lexer/context.js.map +1 -1
  275. package/dist/tools/dependency-audit-lockfile-tools.js.map +1 -1
  276. package/dist/tools/hono-api-contract.js.map +1 -1
  277. package/dist/tools/hono-visualize.js.map +1 -1
  278. package/dist/tools/index-shared.d.ts.map +1 -1
  279. package/dist/tools/index-tools/folder-indexer.d.ts +8 -0
  280. package/dist/tools/index-tools/folder-indexer.d.ts.map +1 -1
  281. package/dist/tools/index-tools/folder-indexer.js +59 -8
  282. package/dist/tools/index-tools/folder-indexer.js.map +1 -1
  283. package/dist/tools/index-tools/parse.d.ts.map +1 -1
  284. package/dist/tools/index-tools/parse.js +2 -1
  285. package/dist/tools/index-tools/parse.js.map +1 -1
  286. package/dist/tools/index-tools/registry.d.ts.map +1 -1
  287. package/dist/tools/index-tools/registry.js +26 -1
  288. package/dist/tools/index-tools/registry.js.map +1 -1
  289. package/dist/tools/index-tools/snapshots.js.map +1 -1
  290. package/dist/tools/insights-tools.js.map +1 -1
  291. package/dist/tools/journal-generator-helpers.d.ts.map +1 -1
  292. package/dist/tools/journal-generator-helpers.js.map +1 -1
  293. package/dist/tools/journal-git-client.js.map +1 -1
  294. package/dist/tools/journal-llm-client.d.ts.map +1 -1
  295. package/dist/tools/journal-llm-client.js.map +1 -1
  296. package/dist/tools/journal-migrator.d.ts.map +1 -1
  297. package/dist/tools/journal-phase-detector.d.ts.map +1 -1
  298. package/dist/tools/journal-sentinel.d.ts.map +1 -1
  299. package/dist/tools/nest-audit-tools.js.map +1 -1
  300. package/dist/tools/nest-ext-tools.js.map +1 -1
  301. package/dist/tools/nextjs-api-contract-readers.d.ts +5 -5
  302. package/dist/tools/nextjs-api-contract-readers.d.ts.map +1 -1
  303. package/dist/tools/nextjs-api-contract-readers.js.map +1 -1
  304. package/dist/tools/nextjs-boundary-tools.d.ts +2 -2
  305. package/dist/tools/nextjs-boundary-tools.d.ts.map +1 -1
  306. package/dist/tools/nextjs-boundary-tools.js.map +1 -1
  307. package/dist/tools/nextjs-component-readers.d.ts +3 -3
  308. package/dist/tools/nextjs-component-readers.d.ts.map +1 -1
  309. package/dist/tools/nextjs-component-readers.js.map +1 -1
  310. package/dist/tools/nextjs-framework-audit-tools.js.map +1 -1
  311. package/dist/tools/nextjs-metadata-tools.d.ts.map +1 -1
  312. package/dist/tools/nextjs-route-readers.d.ts +2 -2
  313. package/dist/tools/nextjs-route-readers.d.ts.map +1 -1
  314. package/dist/tools/nextjs-route-readers.js.map +1 -1
  315. package/dist/tools/nextjs-security-readers.d.ts +6 -6
  316. package/dist/tools/nextjs-security-readers.d.ts.map +1 -1
  317. package/dist/tools/nextjs-security-readers.js.map +1 -1
  318. package/dist/tools/pg-introspection.js.map +1 -1
  319. package/dist/tools/php-active-record-tools.js.map +1 -1
  320. package/dist/tools/php-view-tools.js.map +1 -1
  321. package/dist/tools/plan-turn/orchestrator.d.ts.map +1 -1
  322. package/dist/tools/plan-turn/orchestrator.js +14 -4
  323. package/dist/tools/plan-turn/orchestrator.js.map +1 -1
  324. package/dist/tools/plan-turn/recommendations.js +2 -2
  325. package/dist/tools/plan-turn/recommendations.js.map +1 -1
  326. package/dist/tools/project-profile-extractors.js.map +1 -1
  327. package/dist/tools/project-tools.d.ts.map +1 -1
  328. package/dist/tools/project-tools.js.map +1 -1
  329. package/dist/tools/pydantic-models.js.map +1 -1
  330. package/dist/tools/python-audit/aggregate.js.map +1 -1
  331. package/dist/tools/python-circular-imports.d.ts.map +1 -1
  332. package/dist/tools/python-circular-imports.js +3 -0
  333. package/dist/tools/python-circular-imports.js.map +1 -1
  334. package/dist/tools/python-constants-tools.d.ts.map +1 -1
  335. package/dist/tools/python-constants-tools.js +14 -0
  336. package/dist/tools/python-constants-tools.js.map +1 -1
  337. package/dist/tools/query-tools.js.map +1 -1
  338. package/dist/tools/review-diff/constants.d.ts.map +1 -1
  339. package/dist/tools/search-tools/text-search.js.map +1 -1
  340. package/dist/tools/symbol-tools.d.ts +25 -0
  341. package/dist/tools/symbol-tools.d.ts.map +1 -1
  342. package/dist/tools/symbol-tools.js +50 -2
  343. package/dist/tools/symbol-tools.js.map +1 -1
  344. package/dist/tools/taint-tools.d.ts.map +1 -1
  345. package/dist/tools/taint-tools.js +4 -0
  346. package/dist/tools/taint-tools.js.map +1 -1
  347. package/dist/tools/typescript-constants-tools.d.ts.map +1 -1
  348. package/dist/tools/typescript-constants-tools.js +14 -0
  349. package/dist/tools/typescript-constants-tools.js.map +1 -1
  350. package/dist/tools/wiki-manifest.js.map +1 -1
  351. package/dist/tools/workspace-tools.d.ts.map +1 -1
  352. package/dist/tools/yii-migrations-tools.js.map +1 -1
  353. package/dist/tools/yii-modules-tools.js.map +1 -1
  354. package/dist/utils/git-head.js.map +1 -1
  355. package/dist/utils/git-validation.d.ts.map +1 -1
  356. package/dist/utils/import-graph.d.ts.map +1 -1
  357. package/dist/utils/import-graph.js +10 -0
  358. package/dist/utils/import-graph.js.map +1 -1
  359. package/dist/utils/language-detect.d.ts.map +1 -1
  360. package/dist/utils/language-detect.js +6 -3
  361. package/dist/utils/language-detect.js.map +1 -1
  362. package/dist/utils/nextjs-ast-readers.d.ts +3 -3
  363. package/dist/utils/nextjs-ast-readers.d.ts.map +1 -1
  364. package/dist/utils/nextjs-ast-readers.js.map +1 -1
  365. package/dist/utils/nextjs-audit-cache.d.ts +3 -3
  366. package/dist/utils/nextjs-audit-cache.d.ts.map +1 -1
  367. package/dist/utils/nextjs-audit-cache.js.map +1 -1
  368. package/dist/utils/nextjs-metadata-readers.d.ts +4 -4
  369. package/dist/utils/nextjs-metadata-readers.d.ts.map +1 -1
  370. package/dist/utils/nextjs-metadata-readers.js.map +1 -1
  371. package/dist/utils/overlay-cache.d.ts.map +1 -1
  372. package/dist/utils/overlay-cache.js.map +1 -1
  373. package/dist/utils/python-imports.d.ts +2 -2
  374. package/dist/utils/python-imports.d.ts.map +1 -1
  375. package/dist/utils/python-imports.js.map +1 -1
  376. package/dist/utils/ts-imports.d.ts +2 -2
  377. package/dist/utils/ts-imports.d.ts.map +1 -1
  378. package/dist/utils/ts-imports.js.map +1 -1
  379. package/dist/utils/walk/limits.d.ts.map +1 -1
  380. package/dist/utils/worktree.d.ts +60 -0
  381. package/dist/utils/worktree.d.ts.map +1 -0
  382. package/dist/utils/worktree.js +170 -0
  383. package/dist/utils/worktree.js.map +1 -0
  384. package/package.json +10 -7
  385. package/rules/codesift.md +5 -1
  386. package/rules/codesift.mdc +5 -1
  387. package/rules/codex.md +5 -1
  388. package/rules/gemini.md +5 -1
@@ -3,26 +3,26 @@ export declare const SubQuerySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3
3
  type: z.ZodLiteral<"symbols">;
4
4
  query: z.ZodString;
5
5
  kind: z.ZodOptional<z.ZodEnum<{
6
- function: "function";
7
- method: "method";
8
6
  class: "class";
9
- interface: "interface";
10
- type: "type";
11
- variable: "variable";
12
7
  constant: "constant";
13
- field: "field";
8
+ conversation_summary: "conversation_summary";
9
+ conversation_turn: "conversation_turn";
10
+ default_export: "default_export";
14
11
  enum: "enum";
15
- namespace: "namespace";
12
+ field: "field";
13
+ function: "function";
14
+ interface: "interface";
15
+ metadata: "metadata";
16
+ method: "method";
16
17
  module: "module";
18
+ namespace: "namespace";
17
19
  section: "section";
18
- metadata: "metadata";
19
- test_suite: "test_suite";
20
20
  test_case: "test_case";
21
21
  test_hook: "test_hook";
22
- default_export: "default_export";
23
- conversation_turn: "conversation_turn";
24
- conversation_summary: "conversation_summary";
22
+ test_suite: "test_suite";
23
+ type: "type";
25
24
  unknown: "unknown";
25
+ variable: "variable";
26
26
  }>>;
27
27
  file_pattern: z.ZodOptional<z.ZodString>;
28
28
  top_k: z.ZodOptional<z.ZodNumber>;
@@ -52,8 +52,8 @@ export declare const SubQuerySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
52
52
  type: z.ZodLiteral<"call_chain">;
53
53
  symbol_name: z.ZodString;
54
54
  direction: z.ZodOptional<z.ZodEnum<{
55
- callers: "callers";
56
55
  callees: "callees";
56
+ callers: "callers";
57
57
  }>>;
58
58
  depth: z.ZodOptional<z.ZodNumber>;
59
59
  include_source: z.ZodOptional<z.ZodBoolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-handlers.d.ts","sourceRoot":"","sources":["../../src/retrieval/semantic-handlers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AA8FvE,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,GAC7C,OAAO,CAAC,cAAc,CAAC,CA8CzB;AAMD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,GAC3C,OAAO,CAAC,cAAc,CAAC,CA2DzB"}
1
+ {"version":3,"file":"semantic-handlers.d.ts","sourceRoot":"","sources":["../../src/retrieval/semantic-handlers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AA8FvE,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,GAC7C,OAAO,CAAC,cAAc,CAAC,CAgEzB;AAMD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,GAC3C,OAAO,CAAC,cAAc,CAAC,CA2DzB"}
@@ -50,8 +50,15 @@ async function loadSemanticContext(repo, query) {
50
50
  // ---------------------------------------------------------------------------
51
51
  export async function handleSemanticQuery(repo, query) {
52
52
  const ctx = await loadSemanticContext(repo, query);
53
+ const { detectDimensionMismatch, dimensionMismatchMessage } = await import("../search/semantic.js");
54
+ const queryDim = ctx.vecs[0]?.length ?? 0;
53
55
  // Chunk-level semantic search (preferred path)
54
56
  if (ctx.chunks && ctx.chunkEmbeddings) {
57
+ const mismatch = queryDim > 0 ? detectDimensionMismatch(queryDim, ctx.chunkEmbeddings) : null;
58
+ if (mismatch) {
59
+ const text = dimensionMismatchMessage(queryDim, mismatch.storedDim);
60
+ return { type: "semantic", data: text, tokens: estimateTokens(text) };
61
+ }
55
62
  const rrfScores = computeRRFScores(ctx.vecs, ctx.filteredEmbeddings, ctx.cosineSimilarity);
56
63
  const topIds = [...rrfScores.entries()]
57
64
  .sort((a, b) => b[1] - a[1])
@@ -73,7 +80,9 @@ export async function handleSemanticQuery(repo, query) {
73
80
  throw new Error(`Repository "${repo}" not found`);
74
81
  const embeddings = await getEmbeddingCache(repo);
75
82
  if (!embeddings) {
76
- throw new Error(`No embeddings for "${repo}". Run index_folder with an embedding provider configured.`);
83
+ throw new Error(`No usable embeddings for "${repo}". Either none were built, or they were built with a ` +
84
+ `different embedding model than the one now active (a model change makes stored vectors ` +
85
+ `incomparable — see the server log). Re-index the repo to rebuild them with the current model.`);
77
86
  }
78
87
  const sourceLimit = query.source_chars ?? DEFAULT_SOURCE_CHARS;
79
88
  const symbolMap = new Map(index.symbols.map((s) => [s.id, s]));
@@ -82,6 +91,11 @@ export async function handleSemanticQuery(repo, query) {
82
91
  const primaryVec = ctx.vecs[0];
83
92
  if (!primaryVec)
84
93
  throw new Error("Embedding provider returned no vector");
94
+ const symbolMismatch = detectDimensionMismatch(primaryVec.length, filteredEmbeddings);
95
+ if (symbolMismatch) {
96
+ const text = dimensionMismatchMessage(primaryVec.length, symbolMismatch.storedDim);
97
+ return { type: "semantic", data: text, tokens: estimateTokens(text) };
98
+ }
85
99
  const results = searchSemantic(new Float32Array(primaryVec), filteredEmbeddings, symbolMap, ctx.topK);
86
100
  // Truncate source then format as text (avoid double JSON serialization)
87
101
  const truncated = results.map((r) => ({ ...r, symbol: truncateSymbolSource(r.symbol, sourceLimit) }));
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-handlers.js","sourceRoot":"","sources":["../../src/retrieval/semantic-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-handlers.js","sourceRoot":"","sources":["../../src/retrieval/semantic-handlers.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,26 @@ export declare function cosineSimilarity(a: Float32Array, b: Float32Array): numb
19
19
  * Search embeddings by cosine similarity (linear scan).
20
20
  * Returns top-k results sorted by similarity descending.
21
21
  */
22
+ /**
23
+ * Detect stored embeddings that cannot be compared against the current query
24
+ * vector because they were produced by a different model.
25
+ *
26
+ * Both comparison paths drop mismatched vectors WITHOUT a signal —
27
+ * `searchSemantic` does `continue`, `cosineSimilarity` returns 0 — so a repo
28
+ * whose embeddings were built by one provider and queried under another returns
29
+ * "no results" that is indistinguishable from "nothing matched". This repo hit
30
+ * exactly that: 30,010 symbols / 886 MB embedded with OpenAI
31
+ * text-embedding-3-small (1536d), then queried with the local nomic model
32
+ * (768d) after the API key went away. Every vector was skipped, every semantic
33
+ * query came back empty, and nothing anywhere said why.
34
+ *
35
+ * Returns the stored dimensionality when it disagrees with the query, else null.
36
+ */
37
+ export declare function detectDimensionMismatch(queryDim: number, embeddings: Map<string, Float32Array>): {
38
+ storedDim: number;
39
+ } | null;
40
+ /** Actionable message for a detected mismatch. */
41
+ export declare function dimensionMismatchMessage(queryDim: number, storedDim: number): string;
22
42
  export declare function searchSemantic(queryEmbedding: Float32Array, embeddings: Map<string, Float32Array>, symbols: Map<string, CodeSymbol>, topK: number): SearchResult[];
23
43
  export declare class VoyageProvider implements EmbeddingProvider {
24
44
  readonly model = "voyage-code-3";
@@ -35,14 +55,52 @@ export declare class OpenAIProvider implements EmbeddingProvider {
35
55
  embed(texts: string[], _mode?: EmbeddingMode): Promise<number[][]>;
36
56
  }
37
57
  export declare class OllamaProvider implements EmbeddingProvider {
38
- readonly model = "nomic-embed-text";
39
- readonly dimensions = 768;
58
+ readonly model: string;
59
+ readonly dimensions: number;
40
60
  private baseUrl;
41
- constructor(baseUrl: string);
61
+ constructor(baseUrl: string, model?: string, dimensions?: number);
42
62
  embed(texts: string[], _mode?: EmbeddingMode): Promise<number[][]>;
43
63
  }
64
+ /**
65
+ * Split texts into forward passes bounded by TOTAL padded tokens.
66
+ *
67
+ * A transformer batch is padded to its longest member and attention costs
68
+ * O(seq²), so batching by ITEM COUNT makes cost depend on the worst input in
69
+ * the group. Measured on this repo: median chunk 88 chars, p99 4 KB, max 45 KB
70
+ * (~11 K tokens). One such chunk in a 96-item batch padded all 96 rows to 11 K
71
+ * tokens — tens of GB of activations for 10 MB of text, which is how a single
72
+ * indexing run jumped from 9 GB to 31 GB in one step.
73
+ *
74
+ * Budgeting on `count × longest` instead keeps every pass the same size: short
75
+ * chunks still batch by the hundred, an oversized one runs nearly alone.
76
+ * Order is preserved — callers map results back positionally.
77
+ */
78
+ export declare function groupByTokenBudget(texts: string[], budget?: number, maxTokens?: number): Array<{
79
+ texts: string[];
80
+ }>;
81
+ /**
82
+ * Model name the resolved provider WOULD produce — without constructing it.
83
+ *
84
+ * Constructing a provider to learn its model is not free (the local one loads a
85
+ * ~140 MB ONNX model), and the caller needs this answer on the cheap path,
86
+ * before deciding whether to read a possibly-GB embedding file at all.
87
+ */
88
+ export declare function expectedEmbeddingModel(provider: "voyage" | "openai" | "ollama" | "local", localModel?: string | null, ollamaModel?: string | null): string;
44
89
  /** Exported for unit tests. Returns "" when the model needs no task prefix. */
45
90
  export declare function getPrefix(model: string, mode: EmbeddingMode): string;
91
+ /**
92
+ * Release loaded ONNX sessions.
93
+ *
94
+ * One-shot processes must call this before exiting. `main()` force-exits via
95
+ * process.exit(), and tearing the process down while onnxruntime's background
96
+ * threads are still live aborts the whole process:
97
+ * libc++abi: terminating ... system_error: mutex lock failed: Invalid argument
98
+ * exit code 134. That abort predates the arena change (it reproduces with
99
+ * CODESIFT_ONNX_MEM_ARENA=1 and =0 alike) and could land mid-write, which is
100
+ * how a full `codesift index` run finished with no embeddings on disk and no
101
+ * error printed.
102
+ */
103
+ export declare function disposeLocalPipelines(): Promise<void>;
46
104
  export declare class LocalProvider implements EmbeddingProvider {
47
105
  readonly model: string;
48
106
  readonly dimensions: number;
@@ -55,6 +113,8 @@ export declare function createEmbeddingProvider(provider: "voyage" | "openai" |
55
113
  voyageApiKey?: string | null;
56
114
  openaiApiKey?: string | null;
57
115
  ollamaUrl?: string | null;
116
+ ollamaModel?: string | null;
117
+ ollamaDimensions?: number | null;
58
118
  localModel?: string | null;
59
119
  }): EmbeddingProvider;
60
120
  //# sourceMappingURL=semantic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/search/semantic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAW5D;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,OAAO,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAiB1D;AAMD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAiBzE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,cAAc,EAAE,YAAY,EAC5B,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACrC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAChC,IAAI,EAAE,MAAM,GACX,YAAY,EAAE,CAoBhB;AAsDD,qBAAa,cAAe,YAAW,iBAAiB;IACtD,QAAQ,CAAC,KAAK,mBAAmB;IACjC,QAAQ,CAAC,UAAU,QAAQ;IAC3B,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;IAIpB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAQpF;AAMD,qBAAa,cAAe,YAAW,iBAAiB;IACtD,QAAQ,CAAC,KAAK,4BAA4B;IAC1C,QAAQ,CAAC,UAAU,QAAQ;IAC3B,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,EAAE,MAAM;IAIpB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAQrF;AAMD,qBAAa,cAAe,YAAW,iBAAiB;IACtD,QAAQ,CAAC,KAAK,sBAAsB;IACpC,QAAQ,CAAC,UAAU,OAAO;IAC1B,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,MAAM;IAIrB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CA+BrF;AAyBD,+EAA+E;AAC/E,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,MAAM,CAKpE;AAqED,qBAAa,aAAc,YAAW,iBAAiB;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,KAAK,GAAE,MAA4B,EAAE,UAAU,CAAC,EAAE,MAAM;IAK9D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAsBpF;AAED,sDAAsD;AACtD,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C;AAMD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,EAClD,MAAM,EAAE;IACN,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,GACA,iBAAiB,CAsBnB"}
1
+ {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../src/search/semantic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAoB5D;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,OAAO,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAiB1D;AAMD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,GAAG,MAAM,CAiBzE;AAED;;;GAGG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACpC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAM9B;AAED,kDAAkD;AAClD,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CASpF;AAED,wBAAgB,cAAc,CAC5B,cAAc,EAAE,YAAY,EAC5B,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACrC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAChC,IAAI,EAAE,MAAM,GACX,YAAY,EAAE,CAoBhB;AAsDD,qBAAa,cAAe,YAAW,iBAAiB;IACtD,QAAQ,CAAC,KAAK,mBAAmB;IACjC,QAAQ,CAAC,UAAU,QAAQ;IAC3B,OAAO,CAAC,MAAM,CAAS;IAEvB,YAAY,MAAM,EAAE,MAAM,EAEzB;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAOlF;CACF;AAMD,qBAAa,cAAe,YAAW,iBAAiB;IACtD,QAAQ,CAAC,KAAK,4BAA4B;IAC1C,QAAQ,CAAC,UAAU,QAAQ;IAC3B,OAAO,CAAC,MAAM,CAAS;IAEvB,YAAY,MAAM,EAAE,MAAM,EAEzB;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAOnF;CACF;AAMD,qBAAa,cAAe,YAAW,iBAAiB;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,OAAO,CAAS;IAMxB,YAAY,OAAO,EAAE,MAAM,EAAE,KAAK,SAAqB,EAAE,UAAU,SAAM,EAIxE;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAuCnF;CACF;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,SAAqB,EAC3B,SAAS,SAAmB,GAC3B,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAuB5B;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,EAClD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,EAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAC1B,MAAM,CAOR;AAmBD,+EAA+E;AAC/E,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,MAAM,CAKpE;AAiCD;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAK3D;AA2DD,qBAAa,aAAc,YAAW,iBAAiB;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,YAAY,KAAK,GAAE,MAA4B,EAAE,UAAU,CAAC,EAAE,MAAM,EAGnE;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CA0BlF;CACF;AAED,sDAAsD;AACtD,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C;AAMD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,EAClD,MAAM,EAAE;IACN,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,GACA,iBAAiB,CA0BnB"}
@@ -1,7 +1,16 @@
1
1
  import { StaticEmbeddingProvider } from "./static-embedding-provider.js";
2
2
  const MAX_SYMBOL_SOURCE_CHARS = 200;
3
3
  const MAX_ERROR_DETAIL_CHARS = 200;
4
- const EMBEDDING_TIMEOUT_MS = 30_000;
4
+ // Per-request embed timeout. 30s suits remote APIs (Voyage/OpenAI) with small
5
+ // batches, but a local Ollama GPU embedding a large batch of long chunks can
6
+ // legitimately take longer — a 1024-batch measured ~28s, and bigger/longer
7
+ // batches abort mid-flight, so embedSymbols/embedChunks then silently write
8
+ // nothing. Configurable via CODESIFT_EMBEDDING_TIMEOUT_MS.
9
+ const EMBEDDING_TIMEOUT_MS = (() => {
10
+ const raw = process.env["CODESIFT_EMBEDDING_TIMEOUT_MS"];
11
+ const n = raw ? Number.parseInt(raw, 10) : NaN;
12
+ return Number.isFinite(n) && n > 0 ? n : 30_000;
13
+ })();
5
14
  /**
6
15
  * Build a searchable text string from a symbol for embedding.
7
16
  * Format: "{kind} {name}\n{signature}\n{docstring first line}\n{body first N chars}"
@@ -44,6 +53,37 @@ export function cosineSimilarity(a, b) {
44
53
  * Search embeddings by cosine similarity (linear scan).
45
54
  * Returns top-k results sorted by similarity descending.
46
55
  */
56
+ /**
57
+ * Detect stored embeddings that cannot be compared against the current query
58
+ * vector because they were produced by a different model.
59
+ *
60
+ * Both comparison paths drop mismatched vectors WITHOUT a signal —
61
+ * `searchSemantic` does `continue`, `cosineSimilarity` returns 0 — so a repo
62
+ * whose embeddings were built by one provider and queried under another returns
63
+ * "no results" that is indistinguishable from "nothing matched". This repo hit
64
+ * exactly that: 30,010 symbols / 886 MB embedded with OpenAI
65
+ * text-embedding-3-small (1536d), then queried with the local nomic model
66
+ * (768d) after the API key went away. Every vector was skipped, every semantic
67
+ * query came back empty, and nothing anywhere said why.
68
+ *
69
+ * Returns the stored dimensionality when it disagrees with the query, else null.
70
+ */
71
+ export function detectDimensionMismatch(queryDim, embeddings) {
72
+ for (const vec of embeddings.values()) {
73
+ // Embeddings in one file are uniform — the first entry is representative.
74
+ return vec.length === queryDim ? null : { storedDim: vec.length };
75
+ }
76
+ return null; // empty map is "no embeddings", a different condition
77
+ }
78
+ /** Actionable message for a detected mismatch. */
79
+ export function dimensionMismatchMessage(queryDim, storedDim) {
80
+ return (`Semantic search unavailable: stored embeddings are ${storedDim}-dimensional but the ` +
81
+ `active embedding provider produces ${queryDim}-dimensional vectors, so none of them are ` +
82
+ `comparable. The index was embedded with a different model than is configured now.\n` +
83
+ `Fix: re-embed with the current provider (index_folder with force_embeddings), or restore ` +
84
+ `the original provider's API key (e.g. CODESIFT_OPENAI_API_KEY).\n` +
85
+ `Falling back to BM25 keyword search (search_text) is a reasonable workaround meanwhile.`);
86
+ }
47
87
  export function searchSemantic(queryEmbedding, embeddings, symbols, topK) {
48
88
  const scored = [];
49
89
  for (const [id, vec] of embeddings) {
@@ -131,44 +171,117 @@ export class OpenAIProvider {
131
171
  // Ollama provider (local)
132
172
  // ---------------------------------------------------------------------------
133
173
  export class OllamaProvider {
134
- model = "nomic-embed-text";
135
- dimensions = 768;
174
+ model;
175
+ dimensions;
136
176
  baseUrl;
137
- constructor(baseUrl) {
177
+ // Model and dimensions are configurable (CODESIFT_OLLAMA_MODEL /
178
+ // CODESIFT_OLLAMA_DIMENSIONS): the provider used to be pinned to
179
+ // nomic-embed-text/768, so no other Ollama model (embeddinggemma,
180
+ // mxbai-embed-large, bge-m3, …) could be selected.
181
+ constructor(baseUrl, model = "nomic-embed-text", dimensions = 768) {
138
182
  this.baseUrl = baseUrl.replace(/\/$/, "");
183
+ this.model = model;
184
+ this.dimensions = dimensions;
139
185
  }
140
186
  async embed(texts, _mode = "document") {
141
- // Ollama doesn't support batch — call sequentially
142
- const results = [];
143
- for (const text of texts) {
144
- const response = await fetch(`${this.baseUrl}/api/embeddings`, {
145
- method: "POST",
146
- headers: { "Content-Type": "application/json" },
147
- body: JSON.stringify({
148
- model: this.model,
149
- prompt: text,
150
- }),
151
- signal: AbortSignal.timeout(EMBEDDING_TIMEOUT_MS),
152
- });
153
- if (!response.ok) {
154
- // SEC-004: Log raw body to stderr only — don't forward to MCP client
155
- const body = await response.text();
156
- console.error(`Ollama API error ${response.status}:`, body);
157
- throw new Error(`Ollama API error: ${response.status}`);
158
- }
159
- const data = await response.json();
160
- if (!data || typeof data !== "object" || !("embedding" in data) || !Array.isArray(data["embedding"])) {
161
- throw new Error(`Unexpected Ollama API response shape: ${JSON.stringify(data).slice(0, MAX_ERROR_DETAIL_CHARS)}`);
162
- }
163
- results.push(data.embedding);
187
+ if (texts.length === 0)
188
+ return [];
189
+ // Hard-truncate every input. Ollama tokenizes the FULL text before applying
190
+ // the model's context window, so a pathologically large input (e.g. a 2.4 MB
191
+ // tests/_data/dump.sql chunk) crashes the model runner mid-tokenize
192
+ // ("/tokenize: EOF", HTTP 400) and takes the whole batch — and thus the
193
+ // whole embedSymbols/embedChunks pass — down with it. The model only keeps
194
+ // ~2048 tokens anyway, so sending more is pure waste. LocalProvider already
195
+ // truncates via groupByTokenBudget; Ollama did not, so it inherited no cap.
196
+ const OLLAMA_MAX_CHARS = 8192; // ~2048 tokens
197
+ const capped = texts.map((t) => (t.length > OLLAMA_MAX_CHARS ? t.slice(0, OLLAMA_MAX_CHARS) : t));
198
+ // Use the BATCH endpoint /api/embed (input: string[]). The old code hit
199
+ // /api/embeddings once per text — 90K sequential HTTP round-trips for a big
200
+ // repo, which throws away most of the GPU speedup Ollama gives on Apple
201
+ // Silicon. /api/embed embeds the whole array in one request.
202
+ const response = await fetch(`${this.baseUrl}/api/embed`, {
203
+ method: "POST",
204
+ headers: { "Content-Type": "application/json" },
205
+ body: JSON.stringify({ model: this.model, input: capped }),
206
+ signal: AbortSignal.timeout(EMBEDDING_TIMEOUT_MS),
207
+ });
208
+ if (!response.ok) {
209
+ // SEC-004: log raw body to stderr only — do not forward to the MCP client.
210
+ const body = await response.text();
211
+ console.error(`Ollama API error ${response.status}:`, body);
212
+ throw new Error(`Ollama API error: ${response.status}`);
164
213
  }
165
- return results;
214
+ const data = await response.json();
215
+ const embeddings = data?.embeddings;
216
+ if (!Array.isArray(embeddings) || embeddings.length !== texts.length) {
217
+ throw new Error(`Unexpected Ollama /api/embed response shape: ${JSON.stringify(data).slice(0, MAX_ERROR_DETAIL_CHARS)}`);
218
+ }
219
+ return embeddings;
166
220
  }
167
221
  }
168
222
  // ---------------------------------------------------------------------------
169
223
  // Local provider (Xenova/transformers — zero-config, no API key)
170
224
  // ---------------------------------------------------------------------------
171
225
  const DEFAULT_LOCAL_MODEL = "nomic-ai/nomic-embed-text-v1.5";
226
+ /** Hard per-input sequence cap handed to the tokenizer. */
227
+ const MAX_EMBED_TOKENS = 2048;
228
+ /** ~4 chars per token — enough to bucket batches without tokenizing twice. */
229
+ const CHARS_PER_TOKEN = 4;
230
+ /** Total padded tokens allowed in one forward pass (batch × longest member). */
231
+ const BATCH_TOKEN_BUDGET = 8192;
232
+ /**
233
+ * Split texts into forward passes bounded by TOTAL padded tokens.
234
+ *
235
+ * A transformer batch is padded to its longest member and attention costs
236
+ * O(seq²), so batching by ITEM COUNT makes cost depend on the worst input in
237
+ * the group. Measured on this repo: median chunk 88 chars, p99 4 KB, max 45 KB
238
+ * (~11 K tokens). One such chunk in a 96-item batch padded all 96 rows to 11 K
239
+ * tokens — tens of GB of activations for 10 MB of text, which is how a single
240
+ * indexing run jumped from 9 GB to 31 GB in one step.
241
+ *
242
+ * Budgeting on `count × longest` instead keeps every pass the same size: short
243
+ * chunks still batch by the hundred, an oversized one runs nearly alone.
244
+ * Order is preserved — callers map results back positionally.
245
+ */
246
+ export function groupByTokenBudget(texts, budget = BATCH_TOKEN_BUDGET, maxTokens = MAX_EMBED_TOKENS) {
247
+ const maxChars = maxTokens * CHARS_PER_TOKEN;
248
+ const groups = [];
249
+ let current = [];
250
+ let longest = 0;
251
+ for (const raw of texts) {
252
+ // Hard cap per input. The pipeline ignores tokenizer options, so this slice
253
+ // is the only thing standing between a 45 KB chunk and an 11 K-token row.
254
+ const text = raw.length > maxChars ? raw.slice(0, maxChars) : raw;
255
+ const tokens = Math.ceil(text.length / CHARS_PER_TOKEN);
256
+ const nextLongest = Math.max(longest, tokens);
257
+ if (current.length > 0 && nextLongest * (current.length + 1) > budget) {
258
+ groups.push({ texts: current });
259
+ current = [text];
260
+ longest = tokens;
261
+ continue;
262
+ }
263
+ current.push(text);
264
+ longest = nextLongest;
265
+ }
266
+ if (current.length > 0)
267
+ groups.push({ texts: current });
268
+ return groups;
269
+ }
270
+ /**
271
+ * Model name the resolved provider WOULD produce — without constructing it.
272
+ *
273
+ * Constructing a provider to learn its model is not free (the local one loads a
274
+ * ~140 MB ONNX model), and the caller needs this answer on the cheap path,
275
+ * before deciding whether to read a possibly-GB embedding file at all.
276
+ */
277
+ export function expectedEmbeddingModel(provider, localModel, ollamaModel) {
278
+ switch (provider) {
279
+ case "voyage": return "voyage-code-3";
280
+ case "openai": return "text-embedding-3-small";
281
+ case "ollama": return ollamaModel ?? "nomic-embed-text";
282
+ case "local": return localModel ?? DEFAULT_LOCAL_MODEL;
283
+ }
284
+ }
172
285
  const DEFAULT_LOCAL_DIMS = 768;
173
286
  const STATIC_EMBEDDING_MODEL_PREFIX = "minishlab/potion";
174
287
  const STATIC_EMBEDDING_MODEL_SUBSTRING = "model2vec";
@@ -215,6 +328,25 @@ function lookupDimensions(model) {
215
328
  return KNOWN_LOCAL_DIMS[model] ?? DEFAULT_LOCAL_DIMS;
216
329
  }
217
330
  const localPipelineCache = new Map();
331
+ const localPipelineDisposers = new Map();
332
+ /**
333
+ * Release loaded ONNX sessions.
334
+ *
335
+ * One-shot processes must call this before exiting. `main()` force-exits via
336
+ * process.exit(), and tearing the process down while onnxruntime's background
337
+ * threads are still live aborts the whole process:
338
+ * libc++abi: terminating ... system_error: mutex lock failed: Invalid argument
339
+ * exit code 134. That abort predates the arena change (it reproduces with
340
+ * CODESIFT_ONNX_MEM_ARENA=1 and =0 alike) and could land mid-write, which is
341
+ * how a full `codesift index` run finished with no embeddings on disk and no
342
+ * error printed.
343
+ */
344
+ export async function disposeLocalPipelines() {
345
+ const disposers = [...localPipelineDisposers.values()];
346
+ localPipelineDisposers.clear();
347
+ localPipelineCache.clear();
348
+ await Promise.allSettled(disposers.map((d) => d()));
349
+ }
218
350
  const failedLocalModels = new Set();
219
351
  let localLoadWarned = false;
220
352
  let firstLoadAnnounced = false;
@@ -238,10 +370,31 @@ async function loadLocalPipeline(model) {
238
370
  }
239
371
  // `dtype: "q8"` is the @huggingface/transformers v3 way to request the
240
372
  // INT8-quantized ONNX weights (the v2 `{ quantized: true }` flag is gone).
373
+ //
374
+ // `enableCpuMemArena: false` is the difference between bounded and unbounded
375
+ // memory. onnxruntime's CPU arena caches every allocation it ever makes and
376
+ // never returns it, so RSS grew ~1.5 MB per embedded text and no amount of
377
+ // GC or tensor .dispose() reclaimed it — the JS heap stayed at 16-42 MB
378
+ // while RSS climbed into the gigabytes. Measured over 10,000 texts:
379
+ // arena on → 2,000 texts = 3,681 MB, still climbing
380
+ // arena off → 10,000 texts = 777 MB, flat (peaks ~1.2 GB, then returns)
381
+ // At this repo's ~57K symbol+chunk texts that is the difference between
382
+ // ~85 GB and under 1 GB. It is the root cause behind an indexing process
383
+ // that reached 163 GB RSS.
384
+ // Escape hatch: CODESIFT_ONNX_MEM_ARENA=1 restores the old arena behaviour
385
+ // if a runtime/platform turns out to need it.
386
+ const memArena = process.env["CODESIFT_ONNX_MEM_ARENA"] === "1";
241
387
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
242
- const extractor = await pipelineFn("feature-extraction", model, { dtype: "q8" });
388
+ const extractor = await pipelineFn("feature-extraction", model, {
389
+ dtype: "q8",
390
+ session_options: { enableCpuMemArena: memArena },
391
+ });
243
392
  const fn = (texts, opts) => extractor(texts, opts);
244
393
  localPipelineCache.set(model, fn);
394
+ localPipelineDisposers.set(model, async () => {
395
+ if (typeof extractor?.dispose === "function")
396
+ await extractor.dispose();
397
+ });
245
398
  return fn;
246
399
  }
247
400
  catch (err) {
@@ -270,14 +423,20 @@ export class LocalProvider {
270
423
  }
271
424
  const prefix = getPrefix(this.model, mode);
272
425
  const prefixed = prefix ? texts.map((t) => prefix + t) : texts;
273
- const output = await extractor(prefixed, { pooling: "mean", normalize: true });
274
- const data = output.data instanceof Float32Array ? output.data : Float32Array.from(output.data);
275
- const dims = output.dims;
276
- const dim = dims[dims.length - 1] ?? this.dimensions;
277
426
  const results = [];
278
- for (let i = 0; i < texts.length; i++) {
279
- const start = i * dim;
280
- results.push(Array.from(data.subarray(start, start + dim)));
427
+ for (const group of groupByTokenBudget(prefixed)) {
428
+ // Truncation happens on the TEXT (groupByTokenBudget already sliced it):
429
+ // the feature-extraction pipeline accepts only pooling/normalize, so a
430
+ // `truncation: true` option here would be silently ignored — the cap has
431
+ // to be applied before the tokenizer ever sees the string.
432
+ const output = await extractor(group.texts, { pooling: "mean", normalize: true });
433
+ const data = output.data instanceof Float32Array ? output.data : Float32Array.from(output.data);
434
+ const dims = output.dims;
435
+ const dim = dims[dims.length - 1] ?? this.dimensions;
436
+ for (let i = 0; i < group.texts.length; i++) {
437
+ const start = i * dim;
438
+ results.push(Array.from(data.subarray(start, start + dim)));
439
+ }
281
440
  }
282
441
  return results;
283
442
  }
@@ -307,7 +466,7 @@ export function createEmbeddingProvider(provider, config) {
307
466
  case "ollama": {
308
467
  if (!config.ollamaUrl)
309
468
  throw new Error("CODESIFT_OLLAMA_URL not set");
310
- return new OllamaProvider(config.ollamaUrl);
469
+ return new OllamaProvider(config.ollamaUrl, config.ollamaModel ?? "nomic-embed-text", config.ollamaDimensions ?? 768);
311
470
  }
312
471
  case "local": {
313
472
  const model = config.localModel ?? DEFAULT_LOCAL_MODEL;
@@ -1 +1 @@
1
- {"version":3,"file":"semantic.js","sourceRoot":"","sources":["../../src/search/semantic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic.js","sourceRoot":"","sources":["../../src/search/semantic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,MAAM,uBAAuB,GAAG,GAAG,CAAC;AACpC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,8EAA8E;AAC9E,6EAA6E;AAC7E,2EAA2E;AAC3E,4EAA4E;AAC5E,2DAA2D;AAC3D,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAClD,CAAC,CAAC,EAAE,CAAC;AAkBL;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,MAAkB;IAChD,MAAM,KAAK,GAAa,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAE1D,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAC1D,IAAI,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,MAAM,UAAU,gBAAgB,CAAC,CAAe,EAAE,CAAe;IAC/D,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC;IAEpC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QACjB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QACjB,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC;QACf,KAAK,IAAI,EAAE,GAAG,EAAE,CAAC;QACjB,KAAK,IAAI,EAAE,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClD,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAAgB,EAChB,UAAqC;IAErC,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QACtC,0EAA0E;QAC1E,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IACpE,CAAC;IACD,OAAO,IAAI,CAAC,CAAC,sDAAsD;AACrE,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,SAAiB;IAC1E,OAAO,CACL,sDAAsD,SAAS,uBAAuB;QACtF,sCAAsC,QAAQ,4CAA4C;QAC1F,qFAAqF;QACrF,2FAA2F;QAC3F,mEAAmE;QACnE,yFAAyF,CAC1F,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,cAA4B,EAC5B,UAAqC,EACrC,OAAgC,EAChC,IAAY;IAEZ,MAAM,MAAM,GAAyC,EAAE,CAAC;IAExD,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;YAAE,SAAS;QACnD,MAAM,KAAK,GAAG,gBAAgB,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAEzC,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,KAAK,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAC9E,0DAA0D;AAC1D,8EAA8E;AAE9E,SAAS,mBAAmB,CAAC,IAAa;IACxC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACpD,MAAM,GAAG,GAAG,IAA+B,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,CACtB,CAAC,IAAa,EAAE,EAAE,CAChB,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAE,IAAgC,CAAC,WAAW,CAAC,CAAC,CAC7G,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,eAAe,CAC5B,GAAW,EACX,MAAc,EACd,WAAoC,EACpC,YAAoB;IAEpB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,MAAM,EAAE;SAClC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;QACjC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC;KAClD,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,qEAAqE;QACrE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,cAAc,QAAQ,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,eAAe,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,IAAI,GAAY,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,cAAc,YAAY,wBAAwB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,EAAE,CAAC,CAAC;IAC7H,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,OAAO,cAAc;IAChB,KAAK,GAAG,eAAe,CAAC;IACxB,UAAU,GAAG,IAAI,CAAC;IACnB,MAAM,CAAS;IAEvB,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAe,EAAE,IAAI,GAAkB,UAAU;QAC3D,OAAO,eAAe,CACpB,wCAAwC,EACxC,IAAI,CAAC,MAAM,EACX,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,EACxF,QAAQ,CACT,CAAC;IACJ,CAAC;CACF;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,OAAO,cAAc;IAChB,KAAK,GAAG,wBAAwB,CAAC;IACjC,UAAU,GAAG,IAAI,CAAC;IACnB,MAAM,CAAS;IAEvB,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAe,EAAE,KAAK,GAAkB,UAAU;QAC5D,OAAO,eAAe,CACpB,sCAAsC,EACtC,IAAI,CAAC,MAAM,EACX,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EACnC,QAAQ,CACT,CAAC;IACJ,CAAC;CACF;AAED,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,MAAM,OAAO,cAAc;IAChB,KAAK,CAAS;IACd,UAAU,CAAS;IACpB,OAAO,CAAS;IAExB,iEAAiE;IACjE,iEAAiE;IACjE,kEAAkE;IAClE,mDAAmD;IACnD,YAAY,OAAe,EAAE,KAAK,GAAG,kBAAkB,EAAE,UAAU,GAAG,GAAG;QACvE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAe,EAAE,KAAK,GAAkB,UAAU;QAC5D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAElC,4EAA4E;QAC5E,6EAA6E;QAC7E,oEAAoE;QACpE,wEAAwE;QACxE,2EAA2E;QAC3E,4EAA4E;QAC5E,4EAA4E;QAC5E,MAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,eAAe;QAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElG,wEAAwE;QACxE,4EAA4E;QAC5E,wEAAwE;QACxE,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,YAAY,EAAE;YACxD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YAC1D,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC;SAClD,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,2EAA2E;YAC3E,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,oBAAoB,QAAQ,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,IAAI,GAAY,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAI,IAAiC,EAAE,UAAU,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YACrE,MAAM,IAAI,KAAK,CACb,gDAAgD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,EAAE,CACxG,CAAC;QACJ,CAAC;QACD,OAAO,UAAwB,CAAC;IAClC,CAAC;CACF;AAED,8EAA8E;AAC9E,iEAAiE;AACjE,8EAA8E;AAE9E,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAE7D,2DAA2D;AAC3D,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,8EAA8E;AAC9E,MAAM,eAAe,GAAG,CAAC,CAAC;AAC1B,gFAAgF;AAChF,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAe,EACf,MAAM,GAAG,kBAAkB,EAC3B,SAAS,GAAG,gBAAgB;IAE5B,MAAM,QAAQ,GAAG,SAAS,GAAG,eAAe,CAAC;IAC7C,MAAM,MAAM,GAA+B,EAAE,CAAC;IAC9C,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,4EAA4E;QAC5E,0EAA0E;QAC1E,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC;YACtE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YAChC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO,GAAG,MAAM,CAAC;YACjB,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,GAAG,WAAW,CAAC;IACxB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAAkD,EAClD,UAA0B,EAC1B,WAA2B;IAE3B,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ,EAAE,OAAO,eAAe,CAAC;QACtC,KAAK,QAAQ,EAAE,OAAO,wBAAwB,CAAC;QAC/C,KAAK,QAAQ,EAAE,OAAO,WAAW,IAAI,kBAAkB,CAAC;QACxD,KAAK,OAAO,EAAE,OAAO,UAAU,IAAI,mBAAmB,CAAC;IACzD,CAAC;AACH,CAAC;AACD,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,MAAM,6BAA6B,GAAG,kBAAkB,CAAC;AACzD,MAAM,gCAAgC,GAAG,WAAW,CAAC;AAErD;;;;;;;GAOG;AACH,MAAM,kBAAkB,GAAsE;IAC5F,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,KAAK,EAAE,gBAAgB,EAAE;IACrF,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE;IACrE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE;CAC3D,CAAC;AAEF,+EAA+E;AAC/E,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,IAAmB;IAC1D,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IACvF,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,MAAM,gBAAgB,GAAqC;IACzD,2BAA2B,EAAE,GAAG;IAChC,gCAAgC,EAAE,GAAG;IACrC,8BAA8B,EAAE,GAAG;IACnC,yBAAyB,EAAE,GAAG;IAC9B,0BAA0B,EAAE,GAAG;IAC/B,0BAA0B,EAAE,GAAG;IAC/B,yBAAyB,EAAE,GAAG;IAC9B,0BAA0B,EAAE,IAAI;IAChC,8BAA8B,EAAE,GAAG;IACnC,6BAA6B,EAAE,GAAG;IAClC,8BAA8B,EAAE,IAAI;CACrC,CAAC;AAEF,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,gBAAgB,CAAC,KAAK,CAAC,IAAI,kBAAkB,CAAC;AACvD,CAAC;AAOD,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA4B,CAAC;AAC/D,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAA+B,CAAC;AAEtE;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,MAAM,SAAS,GAAG,CAAC,GAAG,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD,sBAAsB,CAAC,KAAK,EAAE,CAAC;IAC/B,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAC3B,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AACD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAC5C,IAAI,eAAe,GAAG,KAAK,CAAC;AAC5B,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAE/B,KAAK,UAAU,iBAAiB,CAAC,KAAa;IAC5C,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,IAAI,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE9C,IAAI,CAAC;QACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,kBAAkB,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,4CAA4C,KAAK,6CAA6C,CAAC,CAAC;QAChH,CAAC;QACD,8DAA8D;QAC9D,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAQ,CAAC;QACtE,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC3E,IAAI,CAAC,UAAU,EAAE,CAAC;YAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAAC,OAAO,IAAI,CAAC;QAAC,CAAC;QAE/D,uEAAuE;QACvE,2EAA2E;QAC3E,EAAE;QACF,6EAA6E;QAC7E,4EAA4E;QAC5E,2EAA2E;QAC3E,wEAAwE;QACxE,oEAAoE;QACpE,wDAAwD;QACxD,4EAA4E;QAC5E,wEAAwE;QACxE,yEAAyE;QACzE,2BAA2B;QAC3B,2EAA2E;QAC3E,8CAA8C;QAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,KAAK,GAAG,CAAC;QAChE,8DAA8D;QAC9D,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,oBAAoB,EAAE,KAAK,EAAE;YAC9D,KAAK,EAAE,IAAI;YACX,eAAe,EAAE,EAAE,iBAAiB,EAAE,QAAQ,EAAE;SACjD,CAAQ,CAAC;QAEV,MAAM,EAAE,GAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACrE,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClC,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;YAC3C,IAAI,OAAO,SAAS,EAAE,OAAO,KAAK,UAAU;gBAAE,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAC1E,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,eAAe,GAAG,IAAI,CAAC;YACvB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,OAAO,CAAC,KAAK,CAAC,oCAAoC,KAAK,iBAAiB,OAAO,6FAA6F,CAAC,CAAC;QAChL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,OAAO,aAAa;IACf,KAAK,CAAS;IACd,UAAU,CAAS;IAE5B,YAAY,KAAK,GAAW,mBAAmB,EAAE,UAAmB;QAClE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAe,EAAE,IAAI,GAAkB,UAAU;QAC3D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,qGAAqG,CAAC,CAAC;QACzH,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE/D,MAAM,OAAO,GAAe,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,yEAAyE;YACzE,uEAAuE;YACvE,yEAAyE;YACzE,2DAA2D;YAC3D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAClF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,YAAY,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAChG,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC;YACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5C,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC;gBACtB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAED,sDAAsD;AACtD,MAAM,UAAU,mBAAmB;IACjC,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAC3B,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAC1B,eAAe,GAAG,KAAK,CAAC;IACxB,kBAAkB,GAAG,KAAK,CAAC;AAC7B,CAAC;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,UAAU,uBAAuB,CACrC,QAAkD,EAClD,MAOC;IAED,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAC7E,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACjD,CAAC;QACD,KAAK,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,YAAY;gBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAC7E,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACjD,CAAC;QACD,KAAK,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YACtE,OAAO,IAAI,cAAc,CACvB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,WAAW,IAAI,kBAAkB,EACxC,MAAM,CAAC,gBAAgB,IAAI,GAAG,CAC/B,CAAC;QACJ,CAAC;QACD,KAAK,OAAO,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,IAAI,mBAAmB,CAAC;YACvD,IAAI,KAAK,CAAC,UAAU,CAAC,6BAA6B,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,gCAAgC,CAAC,EAAE,CAAC;gBACxG,OAAO,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"static-embedding-provider.d.ts","sourceRoot":"","sources":["../../src/search/static-embedding-provider.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAqCtE,eAAO,MAAM,0BAA0B,QAAS,CAAC;AACjD,eAAO,MAAM,mBAAmB,qBAA4B,CAAC;AA2E7D,qBAAa,uBAAwB,YAAW,iBAAiB;;IAC/D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;gBAIX,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAO5C;;;;;OAKG;IACH,IAAI,UAAU,IAAI,MAAM,CASvB;IAED;;;;OAIG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAMrF;AAED,8DAA8D;AAC9D,wBAAgB,8BAA8B,IAAI,IAAI,CAKrD"}
1
+ {"version":3,"file":"static-embedding-provider.d.ts","sourceRoot":"","sources":["../../src/search/static-embedding-provider.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAqCtE,eAAO,MAAM,0BAA0B,QAAS,CAAC;AACjD,eAAO,MAAM,mBAAmB,qBAA4B,CAAC;AA2E7D,qBAAa,uBAAwB,YAAW,iBAAiB;;IAC/D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAIvB,YAAY,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAK3C;IAED;;;;;OAKG;IACH,IAAI,UAAU,IAAI,MAAM,CASvB;IAED;;;;OAIG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,aAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAKnF;CACF;AAED,8DAA8D;AAC9D,wBAAgB,8BAA8B,IAAI,IAAI,CAKrD"}