@nhtio/adk 1.20260604.0 → 1.20260607.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 (358) hide show
  1. package/CHANGELOG.md +261 -0
  2. package/adk-mcp.mjs +1 -1
  3. package/batteries/embeddings/openai/adapter.cjs +1 -1
  4. package/batteries/embeddings/openai/adapter.mjs +1 -1
  5. package/batteries/embeddings/webllm/adapter.cjs +1 -1
  6. package/batteries/embeddings/webllm/adapter.mjs +1 -1
  7. package/batteries/index.d.ts +1 -0
  8. package/batteries/llm/openai_chat_completions/adapter.cjs +6 -6
  9. package/batteries/llm/openai_chat_completions/adapter.cjs.map +1 -1
  10. package/batteries/llm/openai_chat_completions/adapter.mjs +6 -6
  11. package/batteries/llm/openai_chat_completions/adapter.mjs.map +1 -1
  12. package/batteries/llm/openai_chat_completions/helpers.cjs +2 -2
  13. package/batteries/llm/openai_chat_completions/helpers.mjs +2 -2
  14. package/batteries/llm/openai_chat_completions/validation.cjs +2 -2
  15. package/batteries/llm/openai_chat_completions/validation.cjs.map +1 -1
  16. package/batteries/llm/openai_chat_completions/validation.mjs +2 -2
  17. package/batteries/llm/openai_chat_completions/validation.mjs.map +1 -1
  18. package/batteries/llm/webllm_chat_completions/adapter.cjs +6 -6
  19. package/batteries/llm/webllm_chat_completions/adapter.cjs.map +1 -1
  20. package/batteries/llm/webllm_chat_completions/adapter.mjs +6 -6
  21. package/batteries/llm/webllm_chat_completions/adapter.mjs.map +1 -1
  22. package/batteries/llm/webllm_chat_completions/validation.cjs +2 -2
  23. package/batteries/llm/webllm_chat_completions/validation.cjs.map +1 -1
  24. package/batteries/llm/webllm_chat_completions/validation.mjs +2 -2
  25. package/batteries/llm/webllm_chat_completions/validation.mjs.map +1 -1
  26. package/batteries/storage/flydrive.cjs +1 -1
  27. package/batteries/storage/flydrive.mjs +2 -2
  28. package/batteries/storage/in_memory.cjs +1 -1
  29. package/batteries/storage/in_memory.mjs +1 -1
  30. package/batteries/storage/opfs.cjs +1 -1
  31. package/batteries/storage/opfs.mjs +1 -1
  32. package/batteries/tools/color.cjs +2 -2
  33. package/batteries/tools/color.mjs +2 -2
  34. package/batteries/tools/comparison.cjs +3 -3
  35. package/batteries/tools/comparison.mjs +3 -3
  36. package/batteries/tools/data_structure.cjs +3 -3
  37. package/batteries/tools/data_structure.mjs +3 -3
  38. package/batteries/tools/datetime_extended.cjs +2 -2
  39. package/batteries/tools/datetime_extended.mjs +2 -2
  40. package/batteries/tools/datetime_math.cjs +2 -2
  41. package/batteries/tools/datetime_math.mjs +2 -2
  42. package/batteries/tools/encoding.cjs +3 -3
  43. package/batteries/tools/encoding.mjs +3 -3
  44. package/batteries/tools/formatting.cjs +3 -3
  45. package/batteries/tools/formatting.mjs +3 -3
  46. package/batteries/tools/geo_basics.cjs +2 -2
  47. package/batteries/tools/geo_basics.mjs +2 -2
  48. package/batteries/tools/math/index.d.ts +16 -5
  49. package/batteries/tools/math.cjs +340 -22
  50. package/batteries/tools/math.cjs.map +1 -1
  51. package/batteries/tools/math.mjs +338 -21
  52. package/batteries/tools/math.mjs.map +1 -1
  53. package/batteries/tools/memory.cjs +5 -5
  54. package/batteries/tools/memory.mjs +5 -5
  55. package/batteries/tools/parsing.cjs +4 -4
  56. package/batteries/tools/parsing.mjs +4 -4
  57. package/batteries/tools/retrievables.cjs +4 -4
  58. package/batteries/tools/retrievables.mjs +4 -4
  59. package/batteries/tools/standing_instructions.cjs +4 -4
  60. package/batteries/tools/standing_instructions.mjs +4 -4
  61. package/batteries/tools/statistics.cjs +4 -4
  62. package/batteries/tools/statistics.mjs +4 -4
  63. package/batteries/tools/string_processing.cjs +3 -3
  64. package/batteries/tools/string_processing.mjs +3 -3
  65. package/batteries/tools/structured_data.cjs +3 -3
  66. package/batteries/tools/structured_data.mjs +3 -3
  67. package/batteries/tools/text_analysis.cjs +3 -3
  68. package/batteries/tools/text_analysis.mjs +3 -3
  69. package/batteries/tools/text_comparison.cjs +2 -2
  70. package/batteries/tools/text_comparison.mjs +2 -2
  71. package/batteries/tools/time.cjs +2 -2
  72. package/batteries/tools/time.mjs +2 -2
  73. package/batteries/tools/unit_conversion.cjs +2 -2
  74. package/batteries/tools/unit_conversion.mjs +2 -2
  75. package/batteries/vector/arangodb/index.d.ts +38 -0
  76. package/batteries/vector/arangodb.cjs +257 -0
  77. package/batteries/vector/arangodb.cjs.map +1 -0
  78. package/batteries/vector/arangodb.mjs +255 -0
  79. package/batteries/vector/arangodb.mjs.map +1 -0
  80. package/batteries/vector/builder.cjs +297 -0
  81. package/batteries/vector/builder.cjs.map +1 -0
  82. package/batteries/vector/builder.d.ts +87 -0
  83. package/batteries/vector/builder.mjs +294 -0
  84. package/batteries/vector/builder.mjs.map +1 -0
  85. package/batteries/vector/chroma/index.d.ts +32 -0
  86. package/batteries/vector/chroma.cjs +305 -0
  87. package/batteries/vector/chroma.cjs.map +1 -0
  88. package/batteries/vector/chroma.mjs +302 -0
  89. package/batteries/vector/chroma.mjs.map +1 -0
  90. package/batteries/vector/clickhouse/index.d.ts +39 -0
  91. package/batteries/vector/clickhouse.cjs +246 -0
  92. package/batteries/vector/clickhouse.cjs.map +1 -0
  93. package/batteries/vector/clickhouse.mjs +244 -0
  94. package/batteries/vector/clickhouse.mjs.map +1 -0
  95. package/batteries/vector/cloudflare/index.d.ts +43 -0
  96. package/batteries/vector/cloudflare.cjs +397 -0
  97. package/batteries/vector/cloudflare.cjs.map +1 -0
  98. package/batteries/vector/cloudflare.mjs +395 -0
  99. package/batteries/vector/cloudflare.mjs.map +1 -0
  100. package/batteries/vector/conformance/index.d.ts +15 -0
  101. package/batteries/vector/conformance.cjs +209 -0
  102. package/batteries/vector/conformance.cjs.map +1 -0
  103. package/batteries/vector/conformance.mjs +205 -0
  104. package/batteries/vector/conformance.mjs.map +1 -0
  105. package/batteries/vector/contract.cjs +42 -0
  106. package/batteries/vector/contract.cjs.map +1 -0
  107. package/batteries/vector/contract.d.ts +39 -0
  108. package/batteries/vector/contract.mjs +40 -0
  109. package/batteries/vector/contract.mjs.map +1 -0
  110. package/batteries/vector/couchbase/index.d.ts +49 -0
  111. package/batteries/vector/couchbase.cjs +401 -0
  112. package/batteries/vector/couchbase.cjs.map +1 -0
  113. package/batteries/vector/couchbase.mjs +399 -0
  114. package/batteries/vector/couchbase.mjs.map +1 -0
  115. package/batteries/vector/duckdb/index.d.ts +33 -0
  116. package/batteries/vector/duckdb.cjs +218 -0
  117. package/batteries/vector/duckdb.cjs.map +1 -0
  118. package/batteries/vector/duckdb.mjs +216 -0
  119. package/batteries/vector/duckdb.mjs.map +1 -0
  120. package/batteries/vector/elasticsearch/index.d.ts +43 -0
  121. package/batteries/vector/elasticsearch.cjs +306 -0
  122. package/batteries/vector/elasticsearch.cjs.map +1 -0
  123. package/batteries/vector/elasticsearch.mjs +303 -0
  124. package/batteries/vector/elasticsearch.mjs.map +1 -0
  125. package/batteries/vector/exceptions.cjs +126 -0
  126. package/batteries/vector/exceptions.cjs.map +1 -0
  127. package/batteries/vector/exceptions.d.ts +142 -0
  128. package/batteries/vector/exceptions.mjs +107 -0
  129. package/batteries/vector/exceptions.mjs.map +1 -0
  130. package/batteries/vector/factory.cjs +28 -0
  131. package/batteries/vector/factory.cjs.map +1 -0
  132. package/batteries/vector/factory.d.ts +38 -0
  133. package/batteries/vector/factory.mjs +25 -0
  134. package/batteries/vector/factory.mjs.map +1 -0
  135. package/batteries/vector/filters.cjs +107 -0
  136. package/batteries/vector/filters.cjs.map +1 -0
  137. package/batteries/vector/filters.d.ts +34 -0
  138. package/batteries/vector/filters.mjs +99 -0
  139. package/batteries/vector/filters.mjs.map +1 -0
  140. package/batteries/vector/helpers.cjs +23 -0
  141. package/batteries/vector/helpers.cjs.map +1 -0
  142. package/batteries/vector/helpers.d.ts +12 -0
  143. package/batteries/vector/helpers.mjs +17 -0
  144. package/batteries/vector/helpers.mjs.map +1 -0
  145. package/batteries/vector/hnswlib/index.d.ts +35 -0
  146. package/batteries/vector/hnswlib.cjs +237 -0
  147. package/batteries/vector/hnswlib.cjs.map +1 -0
  148. package/batteries/vector/hnswlib.mjs +235 -0
  149. package/batteries/vector/hnswlib.mjs.map +1 -0
  150. package/batteries/vector/in_memory/index.d.ts +23 -0
  151. package/batteries/vector/in_memory.cjs +178 -0
  152. package/batteries/vector/in_memory.cjs.map +1 -0
  153. package/batteries/vector/in_memory.mjs +176 -0
  154. package/batteries/vector/in_memory.mjs.map +1 -0
  155. package/batteries/vector/index.d.ts +18 -0
  156. package/batteries/vector/lancedb/index.d.ts +34 -0
  157. package/batteries/vector/lancedb.cjs +224 -0
  158. package/batteries/vector/lancedb.cjs.map +1 -0
  159. package/batteries/vector/lancedb.mjs +222 -0
  160. package/batteries/vector/lancedb.mjs.map +1 -0
  161. package/batteries/vector/mariadb/index.d.ts +39 -0
  162. package/batteries/vector/mariadb.cjs +228 -0
  163. package/batteries/vector/mariadb.cjs.map +1 -0
  164. package/batteries/vector/mariadb.mjs +226 -0
  165. package/batteries/vector/mariadb.mjs.map +1 -0
  166. package/batteries/vector/meilisearch/index.d.ts +36 -0
  167. package/batteries/vector/meilisearch.cjs +242 -0
  168. package/batteries/vector/meilisearch.cjs.map +1 -0
  169. package/batteries/vector/meilisearch.mjs +240 -0
  170. package/batteries/vector/meilisearch.mjs.map +1 -0
  171. package/batteries/vector/migrate.cjs +54 -0
  172. package/batteries/vector/migrate.cjs.map +1 -0
  173. package/batteries/vector/migrate.d.ts +30 -0
  174. package/batteries/vector/migrate.mjs +52 -0
  175. package/batteries/vector/migrate.mjs.map +1 -0
  176. package/batteries/vector/milvus/index.d.ts +35 -0
  177. package/batteries/vector/milvus.cjs +357 -0
  178. package/batteries/vector/milvus.cjs.map +1 -0
  179. package/batteries/vector/milvus.mjs +354 -0
  180. package/batteries/vector/milvus.mjs.map +1 -0
  181. package/batteries/vector/mongodb/index.d.ts +46 -0
  182. package/batteries/vector/mongodb.cjs +270 -0
  183. package/batteries/vector/mongodb.cjs.map +1 -0
  184. package/batteries/vector/mongodb.mjs +268 -0
  185. package/batteries/vector/mongodb.mjs.map +1 -0
  186. package/batteries/vector/neo4j/index.d.ts +38 -0
  187. package/batteries/vector/neo4j.cjs +231 -0
  188. package/batteries/vector/neo4j.cjs.map +1 -0
  189. package/batteries/vector/neo4j.mjs +229 -0
  190. package/batteries/vector/neo4j.mjs.map +1 -0
  191. package/batteries/vector/opensearch/index.d.ts +46 -0
  192. package/batteries/vector/opensearch.cjs +316 -0
  193. package/batteries/vector/opensearch.cjs.map +1 -0
  194. package/batteries/vector/opensearch.mjs +313 -0
  195. package/batteries/vector/opensearch.mjs.map +1 -0
  196. package/batteries/vector/oracle23ai/index.d.ts +45 -0
  197. package/batteries/vector/oracle23ai.cjs +340 -0
  198. package/batteries/vector/oracle23ai.cjs.map +1 -0
  199. package/batteries/vector/oracle23ai.mjs +338 -0
  200. package/batteries/vector/oracle23ai.mjs.map +1 -0
  201. package/batteries/vector/orama/index.d.ts +23 -0
  202. package/batteries/vector/orama.cjs +272 -0
  203. package/batteries/vector/orama.cjs.map +1 -0
  204. package/batteries/vector/orama.mjs +270 -0
  205. package/batteries/vector/orama.mjs.map +1 -0
  206. package/batteries/vector/pgvector/index.d.ts +43 -0
  207. package/batteries/vector/pgvector.cjs +411 -0
  208. package/batteries/vector/pgvector.cjs.map +1 -0
  209. package/batteries/vector/pgvector.mjs +408 -0
  210. package/batteries/vector/pgvector.mjs.map +1 -0
  211. package/batteries/vector/pinecone/index.d.ts +38 -0
  212. package/batteries/vector/pinecone.cjs +415 -0
  213. package/batteries/vector/pinecone.cjs.map +1 -0
  214. package/batteries/vector/pinecone.mjs +412 -0
  215. package/batteries/vector/pinecone.mjs.map +1 -0
  216. package/batteries/vector/plan.cjs +2 -0
  217. package/batteries/vector/plan.d.ts +65 -0
  218. package/batteries/vector/plan.mjs +0 -0
  219. package/batteries/vector/qdrant/index.d.ts +34 -0
  220. package/batteries/vector/qdrant.cjs +286 -0
  221. package/batteries/vector/qdrant.cjs.map +1 -0
  222. package/batteries/vector/qdrant.mjs +284 -0
  223. package/batteries/vector/qdrant.mjs.map +1 -0
  224. package/batteries/vector/redis/index.d.ts +44 -0
  225. package/batteries/vector/redis.cjs +391 -0
  226. package/batteries/vector/redis.cjs.map +1 -0
  227. package/batteries/vector/redis.mjs +388 -0
  228. package/batteries/vector/redis.mjs.map +1 -0
  229. package/batteries/vector/retrievable.cjs +69 -0
  230. package/batteries/vector/retrievable.cjs.map +1 -0
  231. package/batteries/vector/retrievable.mjs +67 -0
  232. package/batteries/vector/retrievable.mjs.map +1 -0
  233. package/batteries/vector/retrievable_glue.d.ts +24 -0
  234. package/batteries/vector/s3vectors/index.d.ts +52 -0
  235. package/batteries/vector/s3vectors.cjs +438 -0
  236. package/batteries/vector/s3vectors.cjs.map +1 -0
  237. package/batteries/vector/s3vectors.mjs +436 -0
  238. package/batteries/vector/s3vectors.mjs.map +1 -0
  239. package/batteries/vector/schema.cjs +96 -0
  240. package/batteries/vector/schema.cjs.map +1 -0
  241. package/batteries/vector/schema.d.ts +40 -0
  242. package/batteries/vector/schema.mjs +93 -0
  243. package/batteries/vector/schema.mjs.map +1 -0
  244. package/batteries/vector/solr/index.d.ts +36 -0
  245. package/batteries/vector/solr.cjs +230 -0
  246. package/batteries/vector/solr.cjs.map +1 -0
  247. package/batteries/vector/solr.mjs +228 -0
  248. package/batteries/vector/solr.mjs.map +1 -0
  249. package/batteries/vector/sqlite_vec/index.d.ts +30 -0
  250. package/batteries/vector/sqlite_vec.cjs +318 -0
  251. package/batteries/vector/sqlite_vec.cjs.map +1 -0
  252. package/batteries/vector/sqlite_vec.mjs +316 -0
  253. package/batteries/vector/sqlite_vec.mjs.map +1 -0
  254. package/batteries/vector/surrealdb/index.d.ts +37 -0
  255. package/batteries/vector/surrealdb.cjs +230 -0
  256. package/batteries/vector/surrealdb.cjs.map +1 -0
  257. package/batteries/vector/surrealdb.mjs +228 -0
  258. package/batteries/vector/surrealdb.mjs.map +1 -0
  259. package/batteries/vector/types.cjs +2 -0
  260. package/batteries/vector/types.d.ts +100 -0
  261. package/batteries/vector/types.mjs +0 -0
  262. package/batteries/vector/typesense/index.d.ts +38 -0
  263. package/batteries/vector/typesense.cjs +272 -0
  264. package/batteries/vector/typesense.cjs.map +1 -0
  265. package/batteries/vector/typesense.mjs +270 -0
  266. package/batteries/vector/typesense.mjs.map +1 -0
  267. package/batteries/vector/validation.cjs +90 -0
  268. package/batteries/vector/validation.cjs.map +1 -0
  269. package/batteries/vector/validation.d.ts +18 -0
  270. package/batteries/vector/validation.mjs +83 -0
  271. package/batteries/vector/validation.mjs.map +1 -0
  272. package/batteries/vector/vector_store_constructor.cjs +56 -0
  273. package/batteries/vector/vector_store_constructor.cjs.map +1 -0
  274. package/batteries/vector/vector_store_constructor.d.ts +30 -0
  275. package/batteries/vector/vector_store_constructor.mjs +53 -0
  276. package/batteries/vector/vector_store_constructor.mjs.map +1 -0
  277. package/batteries/vector/vespa/index.d.ts +39 -0
  278. package/batteries/vector/vespa.cjs +423 -0
  279. package/batteries/vector/vespa.cjs.map +1 -0
  280. package/batteries/vector/vespa.mjs +421 -0
  281. package/batteries/vector/vespa.mjs.map +1 -0
  282. package/batteries/vector/weaviate/index.d.ts +57 -0
  283. package/batteries/vector/weaviate.cjs +325 -0
  284. package/batteries/vector/weaviate.cjs.map +1 -0
  285. package/batteries/vector/weaviate.mjs +322 -0
  286. package/batteries/vector/weaviate.mjs.map +1 -0
  287. package/batteries/vector.cjs +63 -0
  288. package/batteries/vector.mjs +14 -0
  289. package/batteries.cjs +62 -0
  290. package/batteries.mjs +15 -1
  291. package/{chunk-kRvK8_k2.mjs → chunk-Bpcn9VDT.mjs} +5 -1
  292. package/{common-lMrnzoyn.mjs → common-BT0nfCi9.mjs} +8 -8
  293. package/{common-lMrnzoyn.mjs.map → common-BT0nfCi9.mjs.map} +1 -1
  294. package/{common-D_e5zYsG.js → common-Cj8TaQ9U.js} +8 -8
  295. package/{common-D_e5zYsG.js.map → common-Cj8TaQ9U.js.map} +1 -1
  296. package/common.cjs +7 -7
  297. package/common.mjs +7 -7
  298. package/{dispatch_runner-CpuyATj1.js → dispatch_runner-BHBNupqp.js} +2 -2
  299. package/dispatch_runner-BHBNupqp.js.map +1 -0
  300. package/{dispatch_runner-CDF3X0nv.mjs → dispatch_runner-DPcS7Y_M.mjs} +2 -2
  301. package/dispatch_runner-DPcS7Y_M.mjs.map +1 -0
  302. package/dispatch_runner.cjs +1 -1
  303. package/dispatch_runner.mjs +1 -1
  304. package/forge.cjs +4 -4
  305. package/forge.mjs +4 -4
  306. package/guards.cjs +8 -8
  307. package/guards.mjs +8 -8
  308. package/index.cjs +12 -12
  309. package/index.mjs +12 -12
  310. package/lib/classes/tool_registry.d.ts +70 -4
  311. package/mcp/adk-docs-corpus.json +1 -1
  312. package/package.json +424 -88
  313. package/skills/adk-assembly/SKILL.md +2 -2
  314. package/{spooled_artifact-B8gIIn9h.js → spooled_artifact-BTq6Nzfy.js} +4 -4
  315. package/spooled_artifact-BTq6Nzfy.js.map +1 -0
  316. package/{spooled_artifact-CWoKUDEm.mjs → spooled_artifact-CHoZgWwI.mjs} +4 -4
  317. package/spooled_artifact-CHoZgWwI.mjs.map +1 -0
  318. package/spooled_artifact.cjs +2 -2
  319. package/spooled_artifact.mjs +2 -2
  320. package/{spooled_markdown_artifact-DQX0RCdI.js → spooled_markdown_artifact-CALSDxIx.js} +3 -3
  321. package/{spooled_markdown_artifact-DQX0RCdI.js.map → spooled_markdown_artifact-CALSDxIx.js.map} +1 -1
  322. package/{spooled_markdown_artifact-CNle4jXN.mjs → spooled_markdown_artifact-Ci5UL7l4.mjs} +3 -3
  323. package/{spooled_markdown_artifact-CNle4jXN.mjs.map → spooled_markdown_artifact-Ci5UL7l4.mjs.map} +1 -1
  324. package/src/types/evaluatex.d.ts +31 -0
  325. package/{thought-BD6AkkOr.js → thought-BbwhJ1wb.js} +4 -4
  326. package/thought-BbwhJ1wb.js.map +1 -0
  327. package/{thought-B_P8LiB6.mjs → thought-D34QQZZ9.mjs} +4 -4
  328. package/thought-D34QQZZ9.mjs.map +1 -0
  329. package/{tool-CRZSUcdP.mjs → tool-CMhaDRNd.mjs} +3 -3
  330. package/tool-CMhaDRNd.mjs.map +1 -0
  331. package/{tool-CX9vNHAw.js → tool-CVyZkFC7.js} +3 -3
  332. package/tool-CVyZkFC7.js.map +1 -0
  333. package/{tool_call-BUeMuCc6.mjs → tool_call-CV5qVNlb.mjs} +3 -3
  334. package/{tool_call-BUeMuCc6.mjs.map → tool_call-CV5qVNlb.mjs.map} +1 -1
  335. package/{tool_call--7ti-frB.js → tool_call-Db68hB7y.js} +3 -3
  336. package/{tool_call--7ti-frB.js.map → tool_call-Db68hB7y.js.map} +1 -1
  337. package/{tool_registry-BGHg6KTq.mjs → tool_registry-D1pSSlsd.mjs} +109 -22
  338. package/tool_registry-D1pSSlsd.mjs.map +1 -0
  339. package/{tool_registry-CtCQ4Xoz.js → tool_registry-DYUYqXvo.js} +109 -22
  340. package/tool_registry-DYUYqXvo.js.map +1 -0
  341. package/{turn_runner-BJTtAORU.js → turn_runner-DqWHNP80.js} +5 -5
  342. package/turn_runner-DqWHNP80.js.map +1 -0
  343. package/{turn_runner-C02LZHjt.mjs → turn_runner-fg1Wc3dK.mjs} +5 -5
  344. package/turn_runner-fg1Wc3dK.mjs.map +1 -0
  345. package/turn_runner.cjs +1 -1
  346. package/turn_runner.mjs +1 -1
  347. package/dispatch_runner-CDF3X0nv.mjs.map +0 -1
  348. package/dispatch_runner-CpuyATj1.js.map +0 -1
  349. package/spooled_artifact-B8gIIn9h.js.map +0 -1
  350. package/spooled_artifact-CWoKUDEm.mjs.map +0 -1
  351. package/thought-BD6AkkOr.js.map +0 -1
  352. package/thought-B_P8LiB6.mjs.map +0 -1
  353. package/tool-CRZSUcdP.mjs.map +0 -1
  354. package/tool-CX9vNHAw.js.map +0 -1
  355. package/tool_registry-BGHg6KTq.mjs.map +0 -1
  356. package/tool_registry-CtCQ4Xoz.js.map +0 -1
  357. package/turn_runner-BJTtAORU.js.map +0 -1
  358. package/turn_runner-C02LZHjt.mjs.map +0 -1
@@ -0,0 +1,90 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ require("../../chunk-Ble4zEEl.js");
3
+ const require_batteries_vector_filters = require("./filters.cjs");
4
+ const require_batteries_vector_exceptions = require("./exceptions.cjs");
5
+ const require_batteries_vector_vector_store_constructor = require("./vector_store_constructor.cjs");
6
+ let _nhtio_validation = require("@nhtio/validation");
7
+ //#region src/batteries/vector/validation.ts
8
+ /**
9
+ * Runtime validation schemas and throwing wrappers for the vector battery.
10
+ *
11
+ * @module @nhtio/adk/batteries/vector/validation
12
+ */
13
+ var detail = (e) => e.details.map((d) => d.message).join("; ");
14
+ var baseVectorStoreOptionsSchema = _nhtio_validation.validator.object({
15
+ metric: _nhtio_validation.validator.string().valid("cosine", "dot", "euclidean").optional(),
16
+ encoder: _nhtio_validation.validator.custom((value, helpers) => {
17
+ if (value === void 0) return value;
18
+ if (typeof value === "function") return value;
19
+ return helpers.error("any.invalid");
20
+ }).optional(),
21
+ dimensions: _nhtio_validation.validator.number().integer().min(1).optional(),
22
+ defaultCollection: _nhtio_validation.validator.string().optional(),
23
+ consistency: _nhtio_validation.validator.string().valid("strong", "best-effort", "eventual").optional()
24
+ }).unknown(true);
25
+ var vectorRecordSchema = _nhtio_validation.validator.object({
26
+ id: _nhtio_validation.validator.string().min(1).required(),
27
+ vector: _nhtio_validation.validator.array().items(_nhtio_validation.validator.number()).optional(),
28
+ document: _nhtio_validation.validator.string().optional(),
29
+ metadata: _nhtio_validation.validator.object().unknown(true).optional()
30
+ }).unknown(false);
31
+ /**
32
+ * `client` accepts three forms, validated as alternatives:
33
+ * 1. the adapter class itself — a BaseVectorStore subclass constructor
34
+ * 2. a sync resolver `() => Class` — returns the class
35
+ * 3. an async resolver `() => import(…)` — resolves to the class (e.g. a dynamic import)
36
+ * Forms 2 and 3 are both plain functions that are NOT store constructors; the factory awaits
37
+ * them and re-validates the resolved value (see resolveClientCtor).
38
+ */
39
+ var clientSchema = _nhtio_validation.validator.alternatives(_nhtio_validation.validator.custom((v, h) => require_batteries_vector_vector_store_constructor.implementsVectorStoreConstructor(v) ? v : h.error("any.invalid")), _nhtio_validation.validator.custom((v, h) => typeof v === "function" && !require_batteries_vector_vector_store_constructor.implementsVectorStoreConstructor(v) ? v : h.error("any.invalid")));
40
+ var validateCreateConfig = (input) => {
41
+ const { error } = _nhtio_validation.validator.object({
42
+ client: clientSchema.required(),
43
+ options: _nhtio_validation.validator.object().unknown(true).required()
44
+ }).unknown(true).validate(input, {
45
+ abortEarly: false,
46
+ convert: false
47
+ });
48
+ if (error) throw new require_batteries_vector_exceptions.E_INVALID_VECTOR_STORE_CONFIG([detail(error)]);
49
+ };
50
+ /**
51
+ * Resolve the `client` (class | sync resolver | async resolver) down to the adapter constructor,
52
+ * then validate the resolved value is a BaseVectorStore subclass — throwing the same
53
+ * E_INVALID_VECTOR_STORE_CONFIG if a resolver hands back something that isn't one.
54
+ */
55
+ var resolveClientCtor = async (client) => {
56
+ let resolved = client;
57
+ if (typeof client === "function" && !require_batteries_vector_vector_store_constructor.implementsVectorStoreConstructor(client)) {
58
+ try {
59
+ resolved = await client();
60
+ } catch {
61
+ resolved = void 0;
62
+ }
63
+ if (resolved && typeof resolved === "object" && "default" in resolved) {
64
+ const def = resolved.default;
65
+ if (require_batteries_vector_vector_store_constructor.implementsVectorStoreConstructor(def)) resolved = def;
66
+ }
67
+ }
68
+ if (!require_batteries_vector_vector_store_constructor.implementsVectorStoreConstructor(resolved)) throw new require_batteries_vector_exceptions.E_INVALID_VECTOR_STORE_CONFIG(["client must be, or resolve to, a vector store constructor (a BaseVectorStore subclass)"]);
69
+ return resolved;
70
+ };
71
+ var validateRecords = (records) => {
72
+ for (const [i, record] of records.entries()) {
73
+ const { error } = vectorRecordSchema.validate(record, {
74
+ abortEarly: false,
75
+ convert: false
76
+ });
77
+ if (error) throw new require_batteries_vector_exceptions.E_INVALID_VECTOR_RECORD([i, detail(error)]);
78
+ const vec = record.vector;
79
+ if (vec && !vec.every((n) => Number.isFinite(n))) throw new require_batteries_vector_exceptions.E_INVALID_VECTOR_RECORD([i, "vector contains a non-finite number"]);
80
+ }
81
+ };
82
+ //#endregion
83
+ exports.baseVectorStoreOptionsSchema = baseVectorStoreOptionsSchema;
84
+ exports.resolveClientCtor = resolveClientCtor;
85
+ exports.validateCreateConfig = validateCreateConfig;
86
+ exports.validateRecords = validateRecords;
87
+ exports.vectorFilterSchema = require_batteries_vector_filters.vectorFilterSchema;
88
+ exports.vectorRecordSchema = vectorRecordSchema;
89
+
90
+ //# sourceMappingURL=validation.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.cjs","names":[],"sources":["../../../src/batteries/vector/validation.ts"],"sourcesContent":["/**\n * Runtime validation schemas and throwing wrappers for the vector battery.\n *\n * @module @nhtio/adk/batteries/vector/validation\n */\n\nimport { vectorFilterSchema } from './filters'\nimport { validator, ValidationError } from '@nhtio/validation'\nimport { implementsVectorStoreConstructor } from './vector_store_constructor'\nimport { E_INVALID_VECTOR_STORE_CONFIG, E_INVALID_VECTOR_RECORD } from './exceptions'\nimport type { VectorRecord } from './types'\n\nconst detail = (e: ValidationError): string => e.details.map((d) => d.message).join('; ')\n\nexport const baseVectorStoreOptionsSchema = validator\n .object({\n metric: validator.string().valid('cosine', 'dot', 'euclidean').optional(),\n encoder: validator\n .custom((value, helpers) => {\n if (value === undefined) return value\n if (typeof value === 'function') return value\n return helpers.error('any.invalid')\n })\n .optional(),\n dimensions: validator.number().integer().min(1).optional(),\n defaultCollection: validator.string().optional(),\n consistency: validator.string().valid('strong', 'best-effort', 'eventual').optional(),\n })\n .unknown(true)\n\nexport const vectorRecordSchema = validator\n .object({\n id: validator.string().min(1).required(),\n vector: validator.array().items(validator.number()).optional(),\n document: validator.string().optional(),\n metadata: validator.object().unknown(true).optional(),\n })\n .unknown(false)\n\nexport { vectorFilterSchema }\n\n/**\n * `client` accepts three forms, validated as alternatives:\n * 1. the adapter class itself — a BaseVectorStore subclass constructor\n * 2. a sync resolver `() => Class` — returns the class\n * 3. an async resolver `() => import(…)` — resolves to the class (e.g. a dynamic import)\n * Forms 2 and 3 are both plain functions that are NOT store constructors; the factory awaits\n * them and re-validates the resolved value (see resolveClientCtor).\n */\nconst clientSchema = validator.alternatives(\n // form 1: an actual adapter class\n validator.custom((v, h) => (implementsVectorStoreConstructor(v) ? v : h.error('any.invalid'))),\n // forms 2 & 3: a (sync or async) resolver function that is not itself a store class\n validator.custom((v, h) =>\n typeof v === 'function' && !implementsVectorStoreConstructor(v) ? v : h.error('any.invalid')\n )\n)\n\nexport const validateCreateConfig = (input: unknown): void => {\n const schema = validator\n .object({\n client: clientSchema.required(),\n options: validator.object().unknown(true).required(),\n })\n .unknown(true)\n const { error } = schema.validate(input, { abortEarly: false, convert: false })\n if (error) throw new E_INVALID_VECTOR_STORE_CONFIG([detail(error)])\n}\n\n/**\n * Resolve the `client` (class | sync resolver | async resolver) down to the adapter constructor,\n * then validate the resolved value is a BaseVectorStore subclass — throwing the same\n * E_INVALID_VECTOR_STORE_CONFIG if a resolver hands back something that isn't one.\n */\nexport const resolveClientCtor = async (client: unknown): Promise<new (options: any) => any> => {\n let resolved: unknown = client\n // A resolver is a plain function that is not itself a store class; call it (it may be async).\n // A bare non-store class is also a function — invoking it throws \"cannot invoke without new\";\n // we catch that and fall through to the not-a-store rejection below rather than leaking it.\n if (typeof client === 'function' && !implementsVectorStoreConstructor(client)) {\n try {\n resolved = await (client as () => unknown)()\n } catch {\n resolved = undefined\n }\n // A resolver may return a module namespace; unwrap a `.default` export if present.\n if (resolved && typeof resolved === 'object' && 'default' in (resolved as object)) {\n const def = (resolved as { default?: unknown }).default\n if (implementsVectorStoreConstructor(def)) resolved = def\n }\n }\n if (!implementsVectorStoreConstructor(resolved)) {\n throw new E_INVALID_VECTOR_STORE_CONFIG([\n 'client must be, or resolve to, a vector store constructor (a BaseVectorStore subclass)',\n ])\n }\n return resolved as new (options: any) => any\n}\n\nexport const validateRecords = (records: VectorRecord[]): void => {\n for (const [i, record] of records.entries()) {\n const { error } = vectorRecordSchema.validate(record, { abortEarly: false, convert: false })\n if (error) throw new E_INVALID_VECTOR_RECORD([i, detail(error)])\n const vec = record.vector\n if (vec && !vec.every((n) => Number.isFinite(n))) {\n throw new E_INVALID_VECTOR_RECORD([i, 'vector contains a non-finite number'])\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;AAYA,IAAM,UAAU,MAA+B,EAAE,QAAQ,KAAK,MAAM,EAAE,OAAO,EAAE,KAAK,IAAI;AAExF,IAAa,+BAA+B,kBAAA,UACzC,OAAO;CACN,QAAQ,kBAAA,UAAU,OAAO,EAAE,MAAM,UAAU,OAAO,WAAW,EAAE,SAAS;CACxE,SAAS,kBAAA,UACN,QAAQ,OAAO,YAAY;EAC1B,IAAI,UAAU,KAAA,GAAW,OAAO;EAChC,IAAI,OAAO,UAAU,YAAY,OAAO;EACxC,OAAO,QAAQ,MAAM,aAAa;CACpC,CAAC,EACA,SAAS;CACZ,YAAY,kBAAA,UAAU,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,SAAS;CACzD,mBAAmB,kBAAA,UAAU,OAAO,EAAE,SAAS;CAC/C,aAAa,kBAAA,UAAU,OAAO,EAAE,MAAM,UAAU,eAAe,UAAU,EAAE,SAAS;AACtF,CAAC,EACA,QAAQ,IAAI;AAEf,IAAa,qBAAqB,kBAAA,UAC/B,OAAO;CACN,IAAI,kBAAA,UAAU,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS;CACvC,QAAQ,kBAAA,UAAU,MAAM,EAAE,MAAM,kBAAA,UAAU,OAAO,CAAC,EAAE,SAAS;CAC7D,UAAU,kBAAA,UAAU,OAAO,EAAE,SAAS;CACtC,UAAU,kBAAA,UAAU,OAAO,EAAE,QAAQ,IAAI,EAAE,SAAS;AACtD,CAAC,EACA,QAAQ,KAAK;;;;;;;;;AAYhB,IAAM,eAAe,kBAAA,UAAU,aAE7B,kBAAA,UAAU,QAAQ,GAAG,MAAO,kDAAA,iCAAiC,CAAC,IAAI,IAAI,EAAE,MAAM,aAAa,CAAE,GAE7F,kBAAA,UAAU,QAAQ,GAAG,MACnB,OAAO,MAAM,cAAc,CAAC,kDAAA,iCAAiC,CAAC,IAAI,IAAI,EAAE,MAAM,aAAa,CAC7F,CACF;AAEA,IAAa,wBAAwB,UAAyB;CAO5D,MAAM,EAAE,UANO,kBAAA,UACZ,OAAO;EACN,QAAQ,aAAa,SAAS;EAC9B,SAAS,kBAAA,UAAU,OAAO,EAAE,QAAQ,IAAI,EAAE,SAAS;CACrD,CAAC,EACA,QAAQ,IACO,EAAO,SAAS,OAAO;EAAE,YAAY;EAAO,SAAS;CAAM,CAAC;CAC9E,IAAI,OAAO,MAAM,IAAI,oCAAA,8BAA8B,CAAC,OAAO,KAAK,CAAC,CAAC;AACpE;;;;;;AAOA,IAAa,oBAAoB,OAAO,WAAwD;CAC9F,IAAI,WAAoB;CAIxB,IAAI,OAAO,WAAW,cAAc,CAAC,kDAAA,iCAAiC,MAAM,GAAG;EAC7E,IAAI;GACF,WAAW,MAAO,OAAyB;EAC7C,QAAQ;GACN,WAAW,KAAA;EACb;EAEA,IAAI,YAAY,OAAO,aAAa,YAAY,aAAc,UAAqB;GACjF,MAAM,MAAO,SAAmC;GAChD,IAAI,kDAAA,iCAAiC,GAAG,GAAG,WAAW;EACxD;CACF;CACA,IAAI,CAAC,kDAAA,iCAAiC,QAAQ,GAC5C,MAAM,IAAI,oCAAA,8BAA8B,CACtC,wFACF,CAAC;CAEH,OAAO;AACT;AAEA,IAAa,mBAAmB,YAAkC;CAChE,KAAK,MAAM,CAAC,GAAG,WAAW,QAAQ,QAAQ,GAAG;EAC3C,MAAM,EAAE,UAAU,mBAAmB,SAAS,QAAQ;GAAE,YAAY;GAAO,SAAS;EAAM,CAAC;EAC3F,IAAI,OAAO,MAAM,IAAI,oCAAA,wBAAwB,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC;EAC/D,MAAM,MAAM,OAAO;EACnB,IAAI,OAAO,CAAC,IAAI,OAAO,MAAM,OAAO,SAAS,CAAC,CAAC,GAC7C,MAAM,IAAI,oCAAA,wBAAwB,CAAC,GAAG,qCAAqC,CAAC;CAEhF;AACF"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Runtime validation schemas and throwing wrappers for the vector battery.
3
+ *
4
+ * @module @nhtio/adk/batteries/vector/validation
5
+ */
6
+ import { vectorFilterSchema } from "./filters";
7
+ import type { VectorRecord } from "./types";
8
+ export declare const baseVectorStoreOptionsSchema: import("@nhtio/validation").ObjectSchema<any>;
9
+ export declare const vectorRecordSchema: import("@nhtio/validation").ObjectSchema<any>;
10
+ export { vectorFilterSchema };
11
+ export declare const validateCreateConfig: (input: unknown) => void;
12
+ /**
13
+ * Resolve the `client` (class | sync resolver | async resolver) down to the adapter constructor,
14
+ * then validate the resolved value is a BaseVectorStore subclass — throwing the same
15
+ * E_INVALID_VECTOR_STORE_CONFIG if a resolver hands back something that isn't one.
16
+ */
17
+ export declare const resolveClientCtor: (client: unknown) => Promise<new (options: any) => any>;
18
+ export declare const validateRecords: (records: VectorRecord[]) => void;
@@ -0,0 +1,83 @@
1
+ import { vectorFilterSchema } from "./filters.mjs";
2
+ import { E_INVALID_VECTOR_RECORD, E_INVALID_VECTOR_STORE_CONFIG } from "./exceptions.mjs";
3
+ import { implementsVectorStoreConstructor } from "./vector_store_constructor.mjs";
4
+ import { validator } from "@nhtio/validation";
5
+ //#region src/batteries/vector/validation.ts
6
+ /**
7
+ * Runtime validation schemas and throwing wrappers for the vector battery.
8
+ *
9
+ * @module @nhtio/adk/batteries/vector/validation
10
+ */
11
+ var detail = (e) => e.details.map((d) => d.message).join("; ");
12
+ var baseVectorStoreOptionsSchema = validator.object({
13
+ metric: validator.string().valid("cosine", "dot", "euclidean").optional(),
14
+ encoder: validator.custom((value, helpers) => {
15
+ if (value === void 0) return value;
16
+ if (typeof value === "function") return value;
17
+ return helpers.error("any.invalid");
18
+ }).optional(),
19
+ dimensions: validator.number().integer().min(1).optional(),
20
+ defaultCollection: validator.string().optional(),
21
+ consistency: validator.string().valid("strong", "best-effort", "eventual").optional()
22
+ }).unknown(true);
23
+ var vectorRecordSchema = validator.object({
24
+ id: validator.string().min(1).required(),
25
+ vector: validator.array().items(validator.number()).optional(),
26
+ document: validator.string().optional(),
27
+ metadata: validator.object().unknown(true).optional()
28
+ }).unknown(false);
29
+ /**
30
+ * `client` accepts three forms, validated as alternatives:
31
+ * 1. the adapter class itself — a BaseVectorStore subclass constructor
32
+ * 2. a sync resolver `() => Class` — returns the class
33
+ * 3. an async resolver `() => import(…)` — resolves to the class (e.g. a dynamic import)
34
+ * Forms 2 and 3 are both plain functions that are NOT store constructors; the factory awaits
35
+ * them and re-validates the resolved value (see resolveClientCtor).
36
+ */
37
+ var clientSchema = validator.alternatives(validator.custom((v, h) => implementsVectorStoreConstructor(v) ? v : h.error("any.invalid")), validator.custom((v, h) => typeof v === "function" && !implementsVectorStoreConstructor(v) ? v : h.error("any.invalid")));
38
+ var validateCreateConfig = (input) => {
39
+ const { error } = validator.object({
40
+ client: clientSchema.required(),
41
+ options: validator.object().unknown(true).required()
42
+ }).unknown(true).validate(input, {
43
+ abortEarly: false,
44
+ convert: false
45
+ });
46
+ if (error) throw new E_INVALID_VECTOR_STORE_CONFIG([detail(error)]);
47
+ };
48
+ /**
49
+ * Resolve the `client` (class | sync resolver | async resolver) down to the adapter constructor,
50
+ * then validate the resolved value is a BaseVectorStore subclass — throwing the same
51
+ * E_INVALID_VECTOR_STORE_CONFIG if a resolver hands back something that isn't one.
52
+ */
53
+ var resolveClientCtor = async (client) => {
54
+ let resolved = client;
55
+ if (typeof client === "function" && !implementsVectorStoreConstructor(client)) {
56
+ try {
57
+ resolved = await client();
58
+ } catch {
59
+ resolved = void 0;
60
+ }
61
+ if (resolved && typeof resolved === "object" && "default" in resolved) {
62
+ const def = resolved.default;
63
+ if (implementsVectorStoreConstructor(def)) resolved = def;
64
+ }
65
+ }
66
+ if (!implementsVectorStoreConstructor(resolved)) throw new E_INVALID_VECTOR_STORE_CONFIG(["client must be, or resolve to, a vector store constructor (a BaseVectorStore subclass)"]);
67
+ return resolved;
68
+ };
69
+ var validateRecords = (records) => {
70
+ for (const [i, record] of records.entries()) {
71
+ const { error } = vectorRecordSchema.validate(record, {
72
+ abortEarly: false,
73
+ convert: false
74
+ });
75
+ if (error) throw new E_INVALID_VECTOR_RECORD([i, detail(error)]);
76
+ const vec = record.vector;
77
+ if (vec && !vec.every((n) => Number.isFinite(n))) throw new E_INVALID_VECTOR_RECORD([i, "vector contains a non-finite number"]);
78
+ }
79
+ };
80
+ //#endregion
81
+ export { baseVectorStoreOptionsSchema, resolveClientCtor, validateCreateConfig, validateRecords, vectorFilterSchema, vectorRecordSchema };
82
+
83
+ //# sourceMappingURL=validation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.mjs","names":[],"sources":["../../../src/batteries/vector/validation.ts"],"sourcesContent":["/**\n * Runtime validation schemas and throwing wrappers for the vector battery.\n *\n * @module @nhtio/adk/batteries/vector/validation\n */\n\nimport { vectorFilterSchema } from './filters'\nimport { validator, ValidationError } from '@nhtio/validation'\nimport { implementsVectorStoreConstructor } from './vector_store_constructor'\nimport { E_INVALID_VECTOR_STORE_CONFIG, E_INVALID_VECTOR_RECORD } from './exceptions'\nimport type { VectorRecord } from './types'\n\nconst detail = (e: ValidationError): string => e.details.map((d) => d.message).join('; ')\n\nexport const baseVectorStoreOptionsSchema = validator\n .object({\n metric: validator.string().valid('cosine', 'dot', 'euclidean').optional(),\n encoder: validator\n .custom((value, helpers) => {\n if (value === undefined) return value\n if (typeof value === 'function') return value\n return helpers.error('any.invalid')\n })\n .optional(),\n dimensions: validator.number().integer().min(1).optional(),\n defaultCollection: validator.string().optional(),\n consistency: validator.string().valid('strong', 'best-effort', 'eventual').optional(),\n })\n .unknown(true)\n\nexport const vectorRecordSchema = validator\n .object({\n id: validator.string().min(1).required(),\n vector: validator.array().items(validator.number()).optional(),\n document: validator.string().optional(),\n metadata: validator.object().unknown(true).optional(),\n })\n .unknown(false)\n\nexport { vectorFilterSchema }\n\n/**\n * `client` accepts three forms, validated as alternatives:\n * 1. the adapter class itself — a BaseVectorStore subclass constructor\n * 2. a sync resolver `() => Class` — returns the class\n * 3. an async resolver `() => import(…)` — resolves to the class (e.g. a dynamic import)\n * Forms 2 and 3 are both plain functions that are NOT store constructors; the factory awaits\n * them and re-validates the resolved value (see resolveClientCtor).\n */\nconst clientSchema = validator.alternatives(\n // form 1: an actual adapter class\n validator.custom((v, h) => (implementsVectorStoreConstructor(v) ? v : h.error('any.invalid'))),\n // forms 2 & 3: a (sync or async) resolver function that is not itself a store class\n validator.custom((v, h) =>\n typeof v === 'function' && !implementsVectorStoreConstructor(v) ? v : h.error('any.invalid')\n )\n)\n\nexport const validateCreateConfig = (input: unknown): void => {\n const schema = validator\n .object({\n client: clientSchema.required(),\n options: validator.object().unknown(true).required(),\n })\n .unknown(true)\n const { error } = schema.validate(input, { abortEarly: false, convert: false })\n if (error) throw new E_INVALID_VECTOR_STORE_CONFIG([detail(error)])\n}\n\n/**\n * Resolve the `client` (class | sync resolver | async resolver) down to the adapter constructor,\n * then validate the resolved value is a BaseVectorStore subclass — throwing the same\n * E_INVALID_VECTOR_STORE_CONFIG if a resolver hands back something that isn't one.\n */\nexport const resolveClientCtor = async (client: unknown): Promise<new (options: any) => any> => {\n let resolved: unknown = client\n // A resolver is a plain function that is not itself a store class; call it (it may be async).\n // A bare non-store class is also a function — invoking it throws \"cannot invoke without new\";\n // we catch that and fall through to the not-a-store rejection below rather than leaking it.\n if (typeof client === 'function' && !implementsVectorStoreConstructor(client)) {\n try {\n resolved = await (client as () => unknown)()\n } catch {\n resolved = undefined\n }\n // A resolver may return a module namespace; unwrap a `.default` export if present.\n if (resolved && typeof resolved === 'object' && 'default' in (resolved as object)) {\n const def = (resolved as { default?: unknown }).default\n if (implementsVectorStoreConstructor(def)) resolved = def\n }\n }\n if (!implementsVectorStoreConstructor(resolved)) {\n throw new E_INVALID_VECTOR_STORE_CONFIG([\n 'client must be, or resolve to, a vector store constructor (a BaseVectorStore subclass)',\n ])\n }\n return resolved as new (options: any) => any\n}\n\nexport const validateRecords = (records: VectorRecord[]): void => {\n for (const [i, record] of records.entries()) {\n const { error } = vectorRecordSchema.validate(record, { abortEarly: false, convert: false })\n if (error) throw new E_INVALID_VECTOR_RECORD([i, detail(error)])\n const vec = record.vector\n if (vec && !vec.every((n) => Number.isFinite(n))) {\n throw new E_INVALID_VECTOR_RECORD([i, 'vector contains a non-finite number'])\n }\n }\n}\n"],"mappings":";;;;;;;;;;AAYA,IAAM,UAAU,MAA+B,EAAE,QAAQ,KAAK,MAAM,EAAE,OAAO,EAAE,KAAK,IAAI;AAExF,IAAa,+BAA+B,UACzC,OAAO;CACN,QAAQ,UAAU,OAAO,EAAE,MAAM,UAAU,OAAO,WAAW,EAAE,SAAS;CACxE,SAAS,UACN,QAAQ,OAAO,YAAY;EAC1B,IAAI,UAAU,KAAA,GAAW,OAAO;EAChC,IAAI,OAAO,UAAU,YAAY,OAAO;EACxC,OAAO,QAAQ,MAAM,aAAa;CACpC,CAAC,EACA,SAAS;CACZ,YAAY,UAAU,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,SAAS;CACzD,mBAAmB,UAAU,OAAO,EAAE,SAAS;CAC/C,aAAa,UAAU,OAAO,EAAE,MAAM,UAAU,eAAe,UAAU,EAAE,SAAS;AACtF,CAAC,EACA,QAAQ,IAAI;AAEf,IAAa,qBAAqB,UAC/B,OAAO;CACN,IAAI,UAAU,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS;CACvC,QAAQ,UAAU,MAAM,EAAE,MAAM,UAAU,OAAO,CAAC,EAAE,SAAS;CAC7D,UAAU,UAAU,OAAO,EAAE,SAAS;CACtC,UAAU,UAAU,OAAO,EAAE,QAAQ,IAAI,EAAE,SAAS;AACtD,CAAC,EACA,QAAQ,KAAK;;;;;;;;;AAYhB,IAAM,eAAe,UAAU,aAE7B,UAAU,QAAQ,GAAG,MAAO,iCAAiC,CAAC,IAAI,IAAI,EAAE,MAAM,aAAa,CAAE,GAE7F,UAAU,QAAQ,GAAG,MACnB,OAAO,MAAM,cAAc,CAAC,iCAAiC,CAAC,IAAI,IAAI,EAAE,MAAM,aAAa,CAC7F,CACF;AAEA,IAAa,wBAAwB,UAAyB;CAO5D,MAAM,EAAE,UANO,UACZ,OAAO;EACN,QAAQ,aAAa,SAAS;EAC9B,SAAS,UAAU,OAAO,EAAE,QAAQ,IAAI,EAAE,SAAS;CACrD,CAAC,EACA,QAAQ,IACO,EAAO,SAAS,OAAO;EAAE,YAAY;EAAO,SAAS;CAAM,CAAC;CAC9E,IAAI,OAAO,MAAM,IAAI,8BAA8B,CAAC,OAAO,KAAK,CAAC,CAAC;AACpE;;;;;;AAOA,IAAa,oBAAoB,OAAO,WAAwD;CAC9F,IAAI,WAAoB;CAIxB,IAAI,OAAO,WAAW,cAAc,CAAC,iCAAiC,MAAM,GAAG;EAC7E,IAAI;GACF,WAAW,MAAO,OAAyB;EAC7C,QAAQ;GACN,WAAW,KAAA;EACb;EAEA,IAAI,YAAY,OAAO,aAAa,YAAY,aAAc,UAAqB;GACjF,MAAM,MAAO,SAAmC;GAChD,IAAI,iCAAiC,GAAG,GAAG,WAAW;EACxD;CACF;CACA,IAAI,CAAC,iCAAiC,QAAQ,GAC5C,MAAM,IAAI,8BAA8B,CACtC,wFACF,CAAC;CAEH,OAAO;AACT;AAEA,IAAa,mBAAmB,YAAkC;CAChE,KAAK,MAAM,CAAC,GAAG,WAAW,QAAQ,QAAQ,GAAG;EAC3C,MAAM,EAAE,UAAU,mBAAmB,SAAS,QAAQ;GAAE,YAAY;GAAO,SAAS;EAAM,CAAC;EAC3F,IAAI,OAAO,MAAM,IAAI,wBAAwB,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC;EAC/D,MAAM,MAAM,OAAO;EACnB,IAAI,OAAO,CAAC,IAAI,OAAO,MAAM,OAAO,SAAS,CAAC,CAAC,GAC7C,MAAM,IAAI,wBAAwB,CAAC,GAAG,qCAAqC,CAAC;CAEhF;AACF"}
@@ -0,0 +1,56 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ require("../../chunk-Ble4zEEl.js");
3
+ let _nhtio_validation = require("@nhtio/validation");
4
+ //#region src/batteries/vector/vector_store_constructor.ts
5
+ /**
6
+ * @module @nhtio/adk/batteries/vector/vector_store_constructor
7
+ */
8
+ /**
9
+ * The instance methods every {@link BaseVectorStore} subclass carries on its prototype — the
10
+ * data plane (execute*), the schema plane, the connection lifecycle, and `asCallable` (which the
11
+ * factory invokes to build the callable store). A duck-typed value is a valid adapter when its
12
+ * prototype provides all of them.
13
+ */
14
+ var VECTOR_STORE_METHODS = [
15
+ "isAvailable",
16
+ "connect",
17
+ "close",
18
+ "executeSearch",
19
+ "executeUpsert",
20
+ "executeDelete",
21
+ "createCollection",
22
+ "dropCollection",
23
+ "hasCollection",
24
+ "renameCollection",
25
+ "asCallable"
26
+ ];
27
+ /**
28
+ * Validator schema for a {@link VectorStoreConstructorLike} value.
29
+ *
30
+ * @remarks
31
+ * Invoked at validate-time, so inspecting the constructor's prototype is safe. The check is
32
+ * duck-typed: the value must be a function whose `prototype` carries every canonical adapter
33
+ * instance method. This mirrors {@link spooledArtifactConstructorSchema}'s cross-realm-safe
34
+ * pattern — `instanceof BaseVectorStore` would be tighter but would couple this contract to the
35
+ * class value and reject structurally-valid (e.g. cross-realm) adapters.
36
+ */
37
+ var vectorStoreConstructorSchema = _nhtio_validation.validator.any().required().custom((value, helpers) => {
38
+ if (typeof value !== "function") return helpers.error("any.invalid");
39
+ const proto = value.prototype;
40
+ if (proto === void 0 || proto === null) return helpers.error("any.invalid");
41
+ if (VECTOR_STORE_METHODS.every((m) => typeof proto[m] === "function")) return value;
42
+ return helpers.error("any.invalid");
43
+ });
44
+ /**
45
+ * Returns `true` if `value` is a constructor whose prototype carries every canonical
46
+ * {@link BaseVectorStore} instance method. Duck-typed; does not use `instanceof`.
47
+ */
48
+ var implementsVectorStoreConstructor = (value) => {
49
+ const { error } = vectorStoreConstructorSchema.validate(value, { abortEarly: true });
50
+ return !error;
51
+ };
52
+ //#endregion
53
+ exports.implementsVectorStoreConstructor = implementsVectorStoreConstructor;
54
+ exports.vectorStoreConstructorSchema = vectorStoreConstructorSchema;
55
+
56
+ //# sourceMappingURL=vector_store_constructor.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector_store_constructor.cjs","names":[],"sources":["../../../src/batteries/vector/vector_store_constructor.ts"],"sourcesContent":["/**\n * @module @nhtio/adk/batteries/vector/vector_store_constructor\n */\n\nimport { validator } from '@nhtio/validation'\nimport type { BaseVectorStore } from './contract'\nimport type { BaseVectorStoreOptions } from './types'\n\n/**\n * Constructor signature for any {@link BaseVectorStore} adapter (the class itself or a subclass).\n *\n * @remarks\n * Re-declared at the contract level so the factory's `client` resolver can recognise a valid\n * adapter constructor without value-importing {@link BaseVectorStore} into modules where that\n * would be awkward, mirroring `SpooledArtifactConstructorLike`.\n */\nexport type VectorStoreConstructorLike<O extends BaseVectorStoreOptions = BaseVectorStoreOptions> =\n new (options: O) => BaseVectorStore\n\n/**\n * The instance methods every {@link BaseVectorStore} subclass carries on its prototype — the\n * data plane (execute*), the schema plane, the connection lifecycle, and `asCallable` (which the\n * factory invokes to build the callable store). A duck-typed value is a valid adapter when its\n * prototype provides all of them.\n */\nconst VECTOR_STORE_METHODS = [\n 'isAvailable',\n 'connect',\n 'close',\n 'executeSearch',\n 'executeUpsert',\n 'executeDelete',\n 'createCollection',\n 'dropCollection',\n 'hasCollection',\n 'renameCollection',\n 'asCallable',\n] as const\n\n/**\n * Validator schema for a {@link VectorStoreConstructorLike} value.\n *\n * @remarks\n * Invoked at validate-time, so inspecting the constructor's prototype is safe. The check is\n * duck-typed: the value must be a function whose `prototype` carries every canonical adapter\n * instance method. This mirrors {@link spooledArtifactConstructorSchema}'s cross-realm-safe\n * pattern — `instanceof BaseVectorStore` would be tighter but would couple this contract to the\n * class value and reject structurally-valid (e.g. cross-realm) adapters.\n */\nexport const vectorStoreConstructorSchema = validator\n .any()\n .required()\n .custom((value, helpers) => {\n if (typeof value !== 'function') return helpers.error('any.invalid')\n const proto = (value as { prototype?: unknown }).prototype\n if (proto === undefined || proto === null) return helpers.error('any.invalid')\n if (\n VECTOR_STORE_METHODS.every((m) => typeof (proto as Record<string, unknown>)[m] === 'function')\n ) {\n return value\n }\n return helpers.error('any.invalid')\n })\n\n/**\n * Returns `true` if `value` is a constructor whose prototype carries every canonical\n * {@link BaseVectorStore} instance method. Duck-typed; does not use `instanceof`.\n */\nexport const implementsVectorStoreConstructor = (\n value: unknown\n): value is VectorStoreConstructorLike => {\n // `.required()` on the schema makes the validator reject undefined/null itself (without it,\n // `validator.any()` skips `.custom()` for an \"absent\" value and would wrongly pass).\n const { error } = vectorStoreConstructorSchema.validate(value, { abortEarly: true })\n return !error\n}\n"],"mappings":";;;;;;;;;;;;;AAyBA,IAAM,uBAAuB;CAC3B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;;;;;;;;;;AAYA,IAAa,+BAA+B,kBAAA,UACzC,IAAI,EACJ,SAAS,EACT,QAAQ,OAAO,YAAY;CAC1B,IAAI,OAAO,UAAU,YAAY,OAAO,QAAQ,MAAM,aAAa;CACnE,MAAM,QAAS,MAAkC;CACjD,IAAI,UAAU,KAAA,KAAa,UAAU,MAAM,OAAO,QAAQ,MAAM,aAAa;CAC7E,IACE,qBAAqB,OAAO,MAAM,OAAQ,MAAkC,OAAO,UAAU,GAE7F,OAAO;CAET,OAAO,QAAQ,MAAM,aAAa;AACpC,CAAC;;;;;AAMH,IAAa,oCACX,UACwC;CAGxC,MAAM,EAAE,UAAU,6BAA6B,SAAS,OAAO,EAAE,YAAY,KAAK,CAAC;CACnF,OAAO,CAAC;AACV"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @module @nhtio/adk/batteries/vector/vector_store_constructor
3
+ */
4
+ import type { BaseVectorStore } from "./contract";
5
+ import type { BaseVectorStoreOptions } from "./types";
6
+ /**
7
+ * Constructor signature for any {@link BaseVectorStore} adapter (the class itself or a subclass).
8
+ *
9
+ * @remarks
10
+ * Re-declared at the contract level so the factory's `client` resolver can recognise a valid
11
+ * adapter constructor without value-importing {@link BaseVectorStore} into modules where that
12
+ * would be awkward, mirroring `SpooledArtifactConstructorLike`.
13
+ */
14
+ export type VectorStoreConstructorLike<O extends BaseVectorStoreOptions = BaseVectorStoreOptions> = new (options: O) => BaseVectorStore;
15
+ /**
16
+ * Validator schema for a {@link VectorStoreConstructorLike} value.
17
+ *
18
+ * @remarks
19
+ * Invoked at validate-time, so inspecting the constructor's prototype is safe. The check is
20
+ * duck-typed: the value must be a function whose `prototype` carries every canonical adapter
21
+ * instance method. This mirrors {@link spooledArtifactConstructorSchema}'s cross-realm-safe
22
+ * pattern — `instanceof BaseVectorStore` would be tighter but would couple this contract to the
23
+ * class value and reject structurally-valid (e.g. cross-realm) adapters.
24
+ */
25
+ export declare const vectorStoreConstructorSchema: import("@nhtio/validation").AnySchema<any>;
26
+ /**
27
+ * Returns `true` if `value` is a constructor whose prototype carries every canonical
28
+ * {@link BaseVectorStore} instance method. Duck-typed; does not use `instanceof`.
29
+ */
30
+ export declare const implementsVectorStoreConstructor: (value: unknown) => value is VectorStoreConstructorLike;
@@ -0,0 +1,53 @@
1
+ import { validator } from "@nhtio/validation";
2
+ //#region src/batteries/vector/vector_store_constructor.ts
3
+ /**
4
+ * @module @nhtio/adk/batteries/vector/vector_store_constructor
5
+ */
6
+ /**
7
+ * The instance methods every {@link BaseVectorStore} subclass carries on its prototype — the
8
+ * data plane (execute*), the schema plane, the connection lifecycle, and `asCallable` (which the
9
+ * factory invokes to build the callable store). A duck-typed value is a valid adapter when its
10
+ * prototype provides all of them.
11
+ */
12
+ var VECTOR_STORE_METHODS = [
13
+ "isAvailable",
14
+ "connect",
15
+ "close",
16
+ "executeSearch",
17
+ "executeUpsert",
18
+ "executeDelete",
19
+ "createCollection",
20
+ "dropCollection",
21
+ "hasCollection",
22
+ "renameCollection",
23
+ "asCallable"
24
+ ];
25
+ /**
26
+ * Validator schema for a {@link VectorStoreConstructorLike} value.
27
+ *
28
+ * @remarks
29
+ * Invoked at validate-time, so inspecting the constructor's prototype is safe. The check is
30
+ * duck-typed: the value must be a function whose `prototype` carries every canonical adapter
31
+ * instance method. This mirrors {@link spooledArtifactConstructorSchema}'s cross-realm-safe
32
+ * pattern — `instanceof BaseVectorStore` would be tighter but would couple this contract to the
33
+ * class value and reject structurally-valid (e.g. cross-realm) adapters.
34
+ */
35
+ var vectorStoreConstructorSchema = validator.any().required().custom((value, helpers) => {
36
+ if (typeof value !== "function") return helpers.error("any.invalid");
37
+ const proto = value.prototype;
38
+ if (proto === void 0 || proto === null) return helpers.error("any.invalid");
39
+ if (VECTOR_STORE_METHODS.every((m) => typeof proto[m] === "function")) return value;
40
+ return helpers.error("any.invalid");
41
+ });
42
+ /**
43
+ * Returns `true` if `value` is a constructor whose prototype carries every canonical
44
+ * {@link BaseVectorStore} instance method. Duck-typed; does not use `instanceof`.
45
+ */
46
+ var implementsVectorStoreConstructor = (value) => {
47
+ const { error } = vectorStoreConstructorSchema.validate(value, { abortEarly: true });
48
+ return !error;
49
+ };
50
+ //#endregion
51
+ export { implementsVectorStoreConstructor, vectorStoreConstructorSchema };
52
+
53
+ //# sourceMappingURL=vector_store_constructor.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector_store_constructor.mjs","names":[],"sources":["../../../src/batteries/vector/vector_store_constructor.ts"],"sourcesContent":["/**\n * @module @nhtio/adk/batteries/vector/vector_store_constructor\n */\n\nimport { validator } from '@nhtio/validation'\nimport type { BaseVectorStore } from './contract'\nimport type { BaseVectorStoreOptions } from './types'\n\n/**\n * Constructor signature for any {@link BaseVectorStore} adapter (the class itself or a subclass).\n *\n * @remarks\n * Re-declared at the contract level so the factory's `client` resolver can recognise a valid\n * adapter constructor without value-importing {@link BaseVectorStore} into modules where that\n * would be awkward, mirroring `SpooledArtifactConstructorLike`.\n */\nexport type VectorStoreConstructorLike<O extends BaseVectorStoreOptions = BaseVectorStoreOptions> =\n new (options: O) => BaseVectorStore\n\n/**\n * The instance methods every {@link BaseVectorStore} subclass carries on its prototype — the\n * data plane (execute*), the schema plane, the connection lifecycle, and `asCallable` (which the\n * factory invokes to build the callable store). A duck-typed value is a valid adapter when its\n * prototype provides all of them.\n */\nconst VECTOR_STORE_METHODS = [\n 'isAvailable',\n 'connect',\n 'close',\n 'executeSearch',\n 'executeUpsert',\n 'executeDelete',\n 'createCollection',\n 'dropCollection',\n 'hasCollection',\n 'renameCollection',\n 'asCallable',\n] as const\n\n/**\n * Validator schema for a {@link VectorStoreConstructorLike} value.\n *\n * @remarks\n * Invoked at validate-time, so inspecting the constructor's prototype is safe. The check is\n * duck-typed: the value must be a function whose `prototype` carries every canonical adapter\n * instance method. This mirrors {@link spooledArtifactConstructorSchema}'s cross-realm-safe\n * pattern — `instanceof BaseVectorStore` would be tighter but would couple this contract to the\n * class value and reject structurally-valid (e.g. cross-realm) adapters.\n */\nexport const vectorStoreConstructorSchema = validator\n .any()\n .required()\n .custom((value, helpers) => {\n if (typeof value !== 'function') return helpers.error('any.invalid')\n const proto = (value as { prototype?: unknown }).prototype\n if (proto === undefined || proto === null) return helpers.error('any.invalid')\n if (\n VECTOR_STORE_METHODS.every((m) => typeof (proto as Record<string, unknown>)[m] === 'function')\n ) {\n return value\n }\n return helpers.error('any.invalid')\n })\n\n/**\n * Returns `true` if `value` is a constructor whose prototype carries every canonical\n * {@link BaseVectorStore} instance method. Duck-typed; does not use `instanceof`.\n */\nexport const implementsVectorStoreConstructor = (\n value: unknown\n): value is VectorStoreConstructorLike => {\n // `.required()` on the schema makes the validator reject undefined/null itself (without it,\n // `validator.any()` skips `.custom()` for an \"absent\" value and would wrongly pass).\n const { error } = vectorStoreConstructorSchema.validate(value, { abortEarly: true })\n return !error\n}\n"],"mappings":";;;;;;;;;;;AAyBA,IAAM,uBAAuB;CAC3B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;;;;;;;;;;AAYA,IAAa,+BAA+B,UACzC,IAAI,EACJ,SAAS,EACT,QAAQ,OAAO,YAAY;CAC1B,IAAI,OAAO,UAAU,YAAY,OAAO,QAAQ,MAAM,aAAa;CACnE,MAAM,QAAS,MAAkC;CACjD,IAAI,UAAU,KAAA,KAAa,UAAU,MAAM,OAAO,QAAQ,MAAM,aAAa;CAC7E,IACE,qBAAqB,OAAO,MAAM,OAAQ,MAAkC,OAAO,UAAU,GAE7F,OAAO;CAET,OAAO,QAAQ,MAAM,aAAa;AACpC,CAAC;;;;;AAMH,IAAa,oCACX,UACwC;CAGxC,MAAM,EAAE,UAAU,6BAA6B,SAAS,OAAO,EAAE,YAAY,KAAK,CAAC;CACnF,OAAO,CAAC;AACV"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @module @nhtio/adk/batteries/vector/vespa
3
+ *
4
+ * Vespa vector-store adapter. A logical collection maps to a document-type in a deployed
5
+ * application package; the adapter maintains the application-package STATE in memory (the set of
6
+ * live collections + their dims/metric) and redeploys the whole package on each schema change
7
+ * via the config server (dependency-free store-zip). Feed/get/delete/search are performed over
8
+ * the document + search HTTP APIs; scores are recomputed locally (cosineSim/dotProd/euclideanDist)
9
+ * to guarantee the [0,1] contract regardless of backend metric quirks. Metadata is a JSON string
10
+ * field filtered with the neutral filter tree's JS reference evaluator for cross-adapter parity.
11
+ *
12
+ * Vespa has NO runtime "create collection". A collection = a document-type declared in a .sd schema
13
+ * file inside a deployed application package. The adapter maintains the application-package STATE
14
+ * in memory and redeploys the whole package on each schema change via the config server.
15
+ */
16
+ import { BaseVectorStore } from "../contract";
17
+ import type { SearchPlan, UpsertPlan, DeletePlan, CollectionSpec } from "../plan";
18
+ import type { VectorMatch, VectorStoreCapabilities, BaseVectorStoreOptions } from "../types";
19
+ export interface VespaVectorStoreOptions extends BaseVectorStoreOptions {
20
+ connection?: {
21
+ endpoint?: string;
22
+ configUrl?: string;
23
+ };
24
+ }
25
+ export declare class VespaVectorStore extends BaseVectorStore {
26
+ #private;
27
+ readonly capabilities: VectorStoreCapabilities;
28
+ static isAvailable(): boolean;
29
+ isAvailable(): boolean;
30
+ connect(): Promise<void>;
31
+ close(): Promise<void>;
32
+ createCollection(spec: CollectionSpec, ifNotExists: boolean): Promise<void>;
33
+ dropCollection(collection: string, ifExists: boolean): Promise<void>;
34
+ hasCollection(collection: string): Promise<boolean>;
35
+ renameCollection(_from: string, _to: string): Promise<void>;
36
+ executeUpsert(plan: UpsertPlan): Promise<void>;
37
+ executeSearch(plan: SearchPlan): Promise<VectorMatch[]>;
38
+ executeDelete(plan: DeletePlan): Promise<void>;
39
+ }