@qvac/sdk 0.4.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. package/README.md +365 -200
  2. package/bare-imports.json +35 -0
  3. package/dist/client/api/cancel.d.ts +12 -3
  4. package/dist/client/api/cancel.js +12 -3
  5. package/dist/client/api/completion-stream.d.ts +15 -5
  6. package/dist/client/api/completion-stream.js +50 -14
  7. package/dist/client/api/embed.d.ts +17 -3
  8. package/dist/client/api/embed.js +0 -8
  9. package/dist/client/api/get-model-info.d.ts +2 -2
  10. package/dist/client/api/get-model-info.js +2 -2
  11. package/dist/client/api/index.d.ts +2 -2
  12. package/dist/client/api/index.js +2 -2
  13. package/dist/client/api/load-model.d.ts +37 -11
  14. package/dist/client/api/load-model.js +34 -117
  15. package/dist/client/api/logging-stream.d.ts +6 -3
  16. package/dist/client/api/logging-stream.js +6 -3
  17. package/dist/client/api/ocr.d.ts +31 -0
  18. package/dist/client/api/ocr.js +88 -0
  19. package/dist/client/api/rag.d.ts +215 -20
  20. package/dist/client/api/rag.js +382 -23
  21. package/dist/client/api/translate.js +10 -11
  22. package/dist/client/api/unload-model.js +6 -3
  23. package/dist/client/config-loader/config-utils.d.ts +5 -0
  24. package/dist/client/config-loader/config-utils.js +20 -0
  25. package/dist/client/config-loader/resolve-config.bare.d.ts +9 -0
  26. package/dist/client/config-loader/resolve-config.bare.js +87 -0
  27. package/dist/client/config-loader/resolve-config.expo.d.ts +11 -0
  28. package/dist/client/config-loader/resolve-config.expo.js +62 -0
  29. package/dist/client/config-loader/resolve-config.node.d.ts +9 -0
  30. package/dist/client/config-loader/resolve-config.node.js +118 -0
  31. package/dist/client/init-hooks.d.ts +18 -3
  32. package/dist/client/init-hooks.js +57 -29
  33. package/dist/client/logging-stream-registry.d.ts +1 -1
  34. package/dist/client/logging-stream-registry.js +14 -13
  35. package/dist/client/rpc/bare-client.d.ts +3 -184
  36. package/dist/client/rpc/bare-client.js +67 -8
  37. package/dist/client/rpc/expo-rpc-client.d.ts +2 -2
  38. package/dist/client/rpc/expo-rpc-client.js +70 -12
  39. package/dist/client/rpc/node-rpc-client.d.ts +1 -1
  40. package/dist/client/rpc/node-rpc-client.js +14 -7
  41. package/dist/client/rpc/rpc-client.d.ts +1 -1
  42. package/dist/client/rpc/rpc-client.js +13 -58
  43. package/dist/examples/config/blind-relay/blind-relay.config.d.ts +5 -0
  44. package/dist/examples/config/blind-relay/blind-relay.config.js +7 -0
  45. package/dist/examples/config/default/default.config.d.ts +8 -0
  46. package/dist/examples/config/default/default.config.js +6 -0
  47. package/dist/examples/config-reload.d.ts +2 -0
  48. package/dist/examples/config-reload.js +49 -0
  49. package/dist/examples/default-config-usage.d.ts +17 -0
  50. package/dist/examples/default-config-usage.js +47 -0
  51. package/dist/examples/delegated-inference/consumer.js +1 -0
  52. package/dist/examples/download-with-blind-relays.js +22 -21
  53. package/dist/examples/embed-hyperdrive.js +39 -3
  54. package/dist/examples/kv-cache-cleanup.js +1 -1
  55. package/dist/examples/kv-cache-custom-key.js +16 -1
  56. package/dist/examples/kv-cache-example.js +1 -1
  57. package/dist/examples/llamacpp-hyperdrive.js +1 -1
  58. package/dist/examples/llamacpp-sharded.js +13 -4
  59. package/dist/examples/logging-file-transport.d.ts +2 -0
  60. package/dist/examples/{llamacpp-file-logging.js → logging-file-transport.js} +3 -7
  61. package/dist/examples/logging-streaming.d.ts +2 -0
  62. package/dist/examples/logging-streaming.js +75 -0
  63. package/dist/examples/mcp-websearch.d.ts +13 -0
  64. package/dist/examples/mcp-websearch.js +176 -0
  65. package/dist/examples/ocr-fasttext.d.ts +2 -0
  66. package/dist/examples/ocr-fasttext.js +52 -0
  67. package/dist/examples/quickstart.d.ts +2 -0
  68. package/dist/examples/quickstart.js +28 -0
  69. package/dist/examples/rag/rag-hyperdb/cancellation.d.ts +2 -0
  70. package/dist/examples/rag/rag-hyperdb/cancellation.js +75 -0
  71. package/dist/examples/rag/rag-hyperdb/ingest.d.ts +2 -0
  72. package/dist/examples/rag/{rag-hyperdb.js → rag-hyperdb/ingest.js} +10 -4
  73. package/dist/examples/rag/rag-hyperdb/pipeline.d.ts +2 -0
  74. package/dist/examples/rag/rag-hyperdb/pipeline.js +74 -0
  75. package/dist/examples/rag/rag-hyperdb/workspaces.d.ts +2 -0
  76. package/dist/examples/rag/rag-hyperdb/workspaces.js +178 -0
  77. package/dist/examples/translation/translation-bergamot-batch.d.ts +2 -0
  78. package/dist/examples/translation/translation-bergamot-batch.js +49 -0
  79. package/dist/examples/translation/translation-bergamot.d.ts +2 -0
  80. package/dist/examples/translation/translation-bergamot.js +39 -0
  81. package/dist/examples/translation/translation-indic.js +1 -0
  82. package/dist/examples/translation/translation-opus.js +1 -0
  83. package/dist/examples/translation/translation-stream.js +1 -0
  84. package/dist/expo/plugins/withMobileBundle.js +29 -10
  85. package/dist/index.d.ts +5 -4
  86. package/dist/index.js +4 -2
  87. package/dist/logging/addon.d.ts +6 -0
  88. package/dist/logging/addon.js +75 -0
  89. package/dist/logging/base-logger.js +26 -16
  90. package/dist/logging/client-logger.d.ts +3 -0
  91. package/dist/logging/client-logger.js +24 -0
  92. package/dist/logging/index.d.ts +7 -1
  93. package/dist/logging/index.js +7 -1
  94. package/dist/logging/logger.d.ts +0 -2
  95. package/dist/logging/logger.js +11 -6
  96. package/dist/logging/namespaces.d.ts +12 -0
  97. package/dist/logging/namespaces.js +12 -0
  98. package/dist/logging/registry.d.ts +31 -0
  99. package/dist/logging/registry.js +48 -0
  100. package/dist/logging/server-logger.d.ts +3 -0
  101. package/dist/logging/server-logger.js +16 -0
  102. package/dist/logging/stream-logger.d.ts +1 -1
  103. package/dist/logging/stream-logger.js +6 -3
  104. package/dist/logging/transport.js +2 -2
  105. package/dist/logging/types.d.ts +2 -0
  106. package/dist/logging/utils.d.ts +2 -0
  107. package/dist/logging/utils.js +62 -0
  108. package/dist/models/hyperdrive/models.d.ts +1886 -230
  109. package/dist/models/hyperdrive/models.js +2191 -443
  110. package/dist/schemas/archive.d.ts +9 -0
  111. package/dist/schemas/archive.js +17 -0
  112. package/dist/schemas/cancel.d.ts +6 -0
  113. package/dist/schemas/cancel.js +5 -0
  114. package/dist/schemas/common.d.ts +660 -92
  115. package/dist/schemas/common.js +6 -4
  116. package/dist/schemas/delegate.d.ts +1 -0
  117. package/dist/schemas/delegate.js +1 -0
  118. package/dist/schemas/download-asset.d.ts +21 -9
  119. package/dist/schemas/embed.d.ts +3 -3
  120. package/dist/schemas/embed.js +9 -2
  121. package/dist/schemas/get-model-info.d.ts +12 -10
  122. package/dist/schemas/get-model-info.js +9 -1
  123. package/dist/schemas/index.d.ts +9 -1
  124. package/dist/schemas/index.js +12 -1
  125. package/dist/schemas/json-schema.d.ts +16 -0
  126. package/dist/schemas/json-schema.js +2 -0
  127. package/dist/schemas/llamacpp-config.d.ts +117 -12
  128. package/dist/schemas/llamacpp-config.js +46 -12
  129. package/dist/schemas/load-model.d.ts +3669 -481
  130. package/dist/schemas/load-model.js +95 -34
  131. package/dist/schemas/logging-stream.d.ts +11 -4
  132. package/dist/schemas/logging-stream.js +4 -3
  133. package/dist/schemas/mcp-adapter.d.ts +47 -0
  134. package/dist/schemas/mcp-adapter.js +1 -0
  135. package/dist/schemas/model-src-utils.d.ts +38 -14
  136. package/dist/schemas/model-src-utils.js +4 -3
  137. package/dist/schemas/model-types.d.ts +154 -0
  138. package/dist/schemas/model-types.js +140 -0
  139. package/dist/schemas/ocr.d.ts +88 -0
  140. package/dist/schemas/ocr.js +52 -0
  141. package/dist/schemas/rag.d.ts +183 -52
  142. package/dist/schemas/rag.js +148 -23
  143. package/dist/schemas/reload-config.d.ts +356 -0
  144. package/dist/schemas/reload-config.js +44 -0
  145. package/dist/schemas/runtime-context.d.ts +19 -0
  146. package/dist/schemas/runtime-context.js +7 -0
  147. package/dist/schemas/sdk-config.d.ts +717 -0
  148. package/dist/schemas/sdk-config.js +131 -0
  149. package/dist/schemas/sdk-errors-client.d.ts +5 -0
  150. package/dist/schemas/sdk-errors-client.js +25 -0
  151. package/dist/schemas/sdk-errors-server.d.ts +17 -0
  152. package/dist/schemas/sdk-errors-server.js +85 -0
  153. package/dist/schemas/shard.d.ts +21 -0
  154. package/dist/schemas/shard.js +17 -0
  155. package/dist/schemas/tools.d.ts +3 -0
  156. package/dist/schemas/translate.d.ts +68 -23
  157. package/dist/schemas/translate.js +37 -11
  158. package/dist/schemas/translation-config.d.ts +337 -13
  159. package/dist/schemas/translation-config.js +65 -9
  160. package/dist/schemas/whispercpp-config.d.ts +9 -1
  161. package/dist/schemas/whispercpp-config.js +2 -1
  162. package/dist/scripts/run-unit-tests.d.ts +2 -0
  163. package/dist/scripts/run-unit-tests.js +17 -0
  164. package/dist/server/bare/addons/llamacpp-completion/cache-logger.d.ts +6 -0
  165. package/dist/server/bare/addons/llamacpp-completion/cache-logger.js +34 -0
  166. package/dist/server/bare/addons/{llamacpp → llamacpp-completion}/create-model.d.ts +1 -5
  167. package/dist/server/bare/addons/{llamacpp → llamacpp-completion}/create-model.js +6 -20
  168. package/dist/server/bare/addons/{llamacpp → llamacpp-completion}/handlers/completion-stream.js +26 -7
  169. package/dist/server/bare/addons/llamacpp-completion/index.d.ts +4 -0
  170. package/dist/server/bare/addons/llamacpp-completion/index.js +3 -0
  171. package/dist/server/bare/addons/{llamacpp → llamacpp-completion}/kv-cache-utils.d.ts +4 -1
  172. package/dist/server/bare/addons/{llamacpp → llamacpp-completion}/kv-cache-utils.js +49 -14
  173. package/dist/server/bare/addons/llamacpp-embedding/create-model.d.ts +8 -0
  174. package/dist/server/bare/addons/llamacpp-embedding/create-model.js +38 -0
  175. package/dist/server/bare/addons/llamacpp-embedding/handlers/embed.d.ts +12 -0
  176. package/dist/server/bare/addons/{llamacpp → llamacpp-embedding}/handlers/embed.js +18 -4
  177. package/dist/server/bare/addons/llamacpp-embedding/index.d.ts +3 -0
  178. package/dist/server/bare/addons/llamacpp-embedding/index.js +2 -0
  179. package/dist/server/bare/addons/load-model.js +38 -28
  180. package/dist/server/bare/addons/{translation → nmtcpp-translation}/create-model.js +23 -8
  181. package/dist/server/bare/addons/{translation → nmtcpp-translation}/handlers/translate.js +35 -11
  182. package/dist/server/bare/addons/onnx-ocr/create-model.d.ts +10 -0
  183. package/dist/server/bare/addons/onnx-ocr/create-model.js +39 -0
  184. package/dist/server/bare/addons/onnx-ocr/handlers/ocr-stream.d.ts +10 -0
  185. package/dist/server/bare/addons/onnx-ocr/handlers/ocr-stream.js +109 -0
  186. package/dist/server/bare/addons/onnx-ocr/index.d.ts +3 -0
  187. package/dist/server/bare/addons/onnx-ocr/index.js +2 -0
  188. package/dist/server/bare/addons/unload-model.js +6 -3
  189. package/dist/server/bare/addons/{whispercpp → whispercpp-transcription}/create-model.js +2 -1
  190. package/dist/server/bare/addons/whispercpp-transcription/handlers/transcribe-stream.js +82 -0
  191. package/dist/server/bare/delegate-rpc-client.js +31 -11
  192. package/dist/server/bare/hyperswarm.js +7 -5
  193. package/dist/server/bare/rag-hyperdb/handlers/chunk.d.ts +3 -0
  194. package/dist/server/bare/rag-hyperdb/handlers/chunk.js +7 -0
  195. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.d.ts +3 -0
  196. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.js +9 -0
  197. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.d.ts +1 -1
  198. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.js +9 -10
  199. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.d.ts +3 -0
  200. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.js +14 -0
  201. package/dist/server/bare/rag-hyperdb/handlers/ingest.d.ts +9 -0
  202. package/dist/server/bare/rag-hyperdb/handlers/ingest.js +18 -0
  203. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.d.ts +3 -0
  204. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.js +4 -0
  205. package/dist/server/bare/rag-hyperdb/handlers/reindex.d.ts +9 -0
  206. package/dist/server/bare/rag-hyperdb/handlers/reindex.js +16 -0
  207. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.d.ts +7 -4
  208. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.js +13 -14
  209. package/dist/server/bare/rag-hyperdb/handlers/search.js +10 -10
  210. package/dist/server/bare/rag-hyperdb/index.d.ts +8 -1
  211. package/dist/server/bare/rag-hyperdb/index.js +8 -1
  212. package/dist/server/bare/rag-hyperdb/rag-operation-manager.d.ts +7 -0
  213. package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +39 -0
  214. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.d.ts +15 -0
  215. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.js +135 -0
  216. package/dist/server/bare/registry/config-registry.d.ts +13 -4
  217. package/dist/server/bare/registry/config-registry.js +53 -10
  218. package/dist/server/bare/registry/logging-stream-registry.d.ts +24 -7
  219. package/dist/server/bare/registry/logging-stream-registry.js +99 -20
  220. package/dist/server/bare/registry/model-config-registry.d.ts +4 -0
  221. package/dist/server/bare/registry/model-config-registry.js +15 -0
  222. package/dist/server/bare/registry/model-config-utils.d.ts +15 -0
  223. package/dist/server/bare/registry/model-config-utils.js +121 -0
  224. package/dist/server/bare/registry/model-registry.d.ts +6 -26
  225. package/dist/server/bare/registry/model-registry.js +9 -6
  226. package/dist/server/bare/registry/runtime-context-registry.d.ts +7 -0
  227. package/dist/server/bare/registry/runtime-context-registry.js +26 -0
  228. package/dist/server/bare/utils/loader-adapter.d.ts +7 -0
  229. package/dist/server/bare/utils/loader-adapter.js +9 -0
  230. package/dist/server/error-handlers.js +4 -2
  231. package/dist/server/rpc/create-server.js +5 -3
  232. package/dist/server/rpc/handle-request.js +115 -19
  233. package/dist/server/rpc/handlers/cancelHandler.js +13 -2
  234. package/dist/server/rpc/handlers/completion-stream-delegated.js +4 -2
  235. package/dist/server/rpc/handlers/completion-stream.js +1 -1
  236. package/dist/server/rpc/handlers/delete-cache.js +4 -2
  237. package/dist/server/rpc/handlers/download-asset.js +3 -1
  238. package/dist/server/rpc/handlers/embed.js +4 -2
  239. package/dist/server/rpc/handlers/get-model-info.d.ts +1 -1
  240. package/dist/server/rpc/handlers/get-model-info.js +22 -10
  241. package/dist/server/rpc/handlers/index.d.ts +4 -2
  242. package/dist/server/rpc/handlers/index.js +2 -2
  243. package/dist/server/rpc/handlers/load-model/download-manager.d.ts +11 -11
  244. package/dist/server/rpc/handlers/load-model/download-manager.js +40 -28
  245. package/dist/server/rpc/handlers/{load-model.d.ts → load-model/handler.d.ts} +2 -2
  246. package/dist/server/rpc/handlers/load-model/handler.js +179 -0
  247. package/dist/server/rpc/handlers/load-model/http.js +361 -50
  248. package/dist/server/rpc/handlers/load-model/hyperdrive.js +26 -22
  249. package/dist/server/rpc/handlers/load-model/index.d.ts +2 -2
  250. package/dist/server/rpc/handlers/load-model/index.js +2 -2
  251. package/dist/server/rpc/handlers/load-model/resolve.js +39 -8
  252. package/dist/server/rpc/handlers/load-model-delegated.d.ts +2 -2
  253. package/dist/server/rpc/handlers/load-model-delegated.js +15 -10
  254. package/dist/server/rpc/handlers/logging-stream.js +4 -4
  255. package/dist/server/rpc/handlers/ocr-stream.d.ts +3 -0
  256. package/dist/server/rpc/handlers/ocr-stream.js +39 -0
  257. package/dist/server/rpc/handlers/provideHandler/connection.js +12 -10
  258. package/dist/server/rpc/handlers/provideHandler/handler.js +18 -16
  259. package/dist/server/rpc/handlers/provideHandler/proxy.js +8 -6
  260. package/dist/server/rpc/handlers/rag.d.ts +2 -2
  261. package/dist/server/rpc/handlers/rag.js +107 -41
  262. package/dist/server/rpc/handlers/stopProvideHandler.js +3 -1
  263. package/dist/server/rpc/handlers/text-to-speech.js +1 -1
  264. package/dist/server/rpc/handlers/transcribe-stream.js +4 -2
  265. package/dist/server/rpc/handlers/translate.js +9 -16
  266. package/dist/server/rpc/handlers/unload-model.js +4 -2
  267. package/dist/server/utils/archive.d.ts +3 -0
  268. package/dist/server/utils/archive.js +171 -0
  269. package/dist/server/utils/audio/decoder.d.ts +2 -1
  270. package/dist/server/utils/audio/decoder.js +48 -11
  271. package/dist/server/utils/cache.d.ts +5 -5
  272. package/dist/server/utils/cache.js +13 -11
  273. package/dist/server/utils/config-transform.d.ts +3 -0
  274. package/dist/server/utils/config-transform.js +23 -0
  275. package/dist/server/utils/formatting.d.ts +13 -0
  276. package/dist/server/utils/formatting.js +26 -0
  277. package/dist/server/utils/gguf-tensor-extractor.d.ts +15 -0
  278. package/dist/server/utils/gguf-tensor-extractor.js +314 -0
  279. package/dist/server/utils/index.d.ts +4 -1
  280. package/dist/server/utils/index.js +4 -1
  281. package/dist/server/utils/shard-utils.d.ts +42 -16
  282. package/dist/server/utils/shard-utils.js +95 -7
  283. package/dist/server/worker.js +49 -19
  284. package/dist/utils/errors-base.d.ts +1 -1
  285. package/dist/utils/errors-base.js +2 -2
  286. package/dist/utils/errors-client.d.ts +24 -0
  287. package/dist/utils/errors-client.js +40 -0
  288. package/dist/utils/errors-server.d.ts +42 -0
  289. package/dist/utils/errors-server.js +71 -0
  290. package/dist/utils/mcp-adapter.d.ts +12 -0
  291. package/dist/utils/mcp-adapter.js +103 -0
  292. package/dist/utils/object.d.ts +2 -0
  293. package/dist/utils/object.js +3 -0
  294. package/dist/utils/tool-helpers.d.ts +10 -2
  295. package/dist/utils/tool-helpers.js +24 -11
  296. package/package.json +74 -36
  297. package/dist/client/api/set-config.d.ts +0 -7
  298. package/dist/client/api/set-config.js +0 -20
  299. package/dist/client/config-manager.d.ts +0 -4
  300. package/dist/client/config-manager.js +0 -8
  301. package/dist/client/rpc/bare-rpc-client.d.ts +0 -4
  302. package/dist/client/rpc/bare-rpc-client.js +0 -91
  303. package/dist/examples/llamacpp-file-logging.d.ts +0 -2
  304. package/dist/examples/rag/rag-hyperdb-workspaces.d.ts +0 -2
  305. package/dist/examples/rag/rag-hyperdb-workspaces.js +0 -106
  306. package/dist/examples/rag/rag-hyperdb.d.ts +0 -2
  307. package/dist/schemas/set-config.d.ts +0 -21
  308. package/dist/schemas/set-config.js +0 -14
  309. package/dist/server/bare/addons/llamacpp/handlers/embed.d.ts +0 -4
  310. package/dist/server/bare/addons/llamacpp/index.d.ts +0 -4
  311. package/dist/server/bare/addons/llamacpp/index.js +0 -3
  312. package/dist/server/bare/addons/whispercpp/handlers/transcribe-stream.js +0 -63
  313. package/dist/server/bare/rag-hyperdb/rag-manager.d.ts +0 -5
  314. package/dist/server/bare/rag-hyperdb/rag-manager.js +0 -64
  315. package/dist/server/rpc/handlers/load-model.js +0 -59
  316. package/dist/server/rpc/handlers/set-config.d.ts +0 -3
  317. package/dist/server/rpc/handlers/set-config.js +0 -18
  318. package/dist/server/utils/hash.d.ts +0 -5
  319. package/dist/server/utils/hash.js +0 -11
  320. /package/dist/server/bare/addons/{llamacpp → llamacpp-completion}/handlers/completion-stream.d.ts +0 -0
  321. /package/dist/server/bare/addons/{translation → nmtcpp-translation}/create-model.d.ts +0 -0
  322. /package/dist/server/bare/addons/{translation → nmtcpp-translation}/handlers/translate.d.ts +0 -0
  323. /package/dist/server/bare/addons/{translation → nmtcpp-translation}/index.d.ts +0 -0
  324. /package/dist/server/bare/addons/{translation → nmtcpp-translation}/index.js +0 -0
  325. /package/dist/server/bare/addons/{tts → onnx-tts}/create-model.d.ts +0 -0
  326. /package/dist/server/bare/addons/{tts → onnx-tts}/create-model.js +0 -0
  327. /package/dist/server/bare/addons/{tts → onnx-tts}/handlers/text-to-speech.d.ts +0 -0
  328. /package/dist/server/bare/addons/{tts → onnx-tts}/handlers/text-to-speech.js +0 -0
  329. /package/dist/server/bare/addons/{tts → onnx-tts}/index.d.ts +0 -0
  330. /package/dist/server/bare/addons/{tts → onnx-tts}/index.js +0 -0
  331. /package/dist/server/bare/addons/{whispercpp → whispercpp-transcription}/create-model.d.ts +0 -0
  332. /package/dist/server/bare/addons/{whispercpp → whispercpp-transcription}/handlers/transcribe-stream.d.ts +0 -0
  333. /package/dist/server/bare/addons/{whispercpp → whispercpp-transcription}/index.d.ts +0 -0
  334. /package/dist/server/bare/addons/{whispercpp → whispercpp-transcription}/index.js +0 -0
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Config loader for Expo/React Native runtime
3
+ * Only uses expo-file-system - no Node.js or Bare imports
4
+ */
5
+ import { File, Paths } from "expo-file-system";
6
+ import { validateConfig, parseJsonConfig, } from "./config-utils.js";
7
+ import { getClientLogger } from "../../logging/index.js";
8
+ const logger = getClientLogger();
9
+ function fileExists(filePath) {
10
+ try {
11
+ const file = new File(filePath);
12
+ return file.exists;
13
+ }
14
+ catch {
15
+ return false;
16
+ }
17
+ }
18
+ async function readFile(filePath) {
19
+ const file = new File(filePath);
20
+ return await file.text();
21
+ }
22
+ async function loadJsonConfig(filePath) {
23
+ const content = await readFile(filePath);
24
+ const parsed = parseJsonConfig(content, filePath);
25
+ return validateConfig(parsed);
26
+ }
27
+ /**
28
+ * Resolution order for Expo:
29
+ * 1. QVAC_CONFIG_PATH environment variable (if set)
30
+ * 2. Default Expo path: ${Paths.document.uri}qvac.config.json
31
+ * 3. SDK defaults
32
+ *
33
+ * Note: Only JSON config files are supported in React Native
34
+ */
35
+ export async function resolveConfig() {
36
+ // Check environment variable first
37
+ const configPath = typeof process !== "undefined"
38
+ ? process.env?.["QVAC_CONFIG_PATH"]
39
+ : undefined;
40
+ if (configPath) {
41
+ if (fileExists(configPath)) {
42
+ logger.info(`✅ Loaded config from: ${configPath}`);
43
+ return await loadJsonConfig(configPath);
44
+ }
45
+ }
46
+ // Try default Expo document directory path
47
+ try {
48
+ const documentDir = Paths.document.uri;
49
+ if (documentDir) {
50
+ const defaultExpoConfigPath = `${documentDir}qvac.config.json`;
51
+ if (fileExists(defaultExpoConfigPath)) {
52
+ logger.info(`✅ Loaded config from: ${defaultExpoConfigPath}`);
53
+ return await loadJsonConfig(defaultExpoConfigPath);
54
+ }
55
+ }
56
+ }
57
+ catch {
58
+ // Paths not available
59
+ }
60
+ logger.info("ℹ️ No config file found, using SDK defaults");
61
+ return undefined;
62
+ }
@@ -0,0 +1,9 @@
1
+ import { type QvacConfig } from "./config-utils";
2
+ /**
3
+ * Resolution order for Node.js:
4
+ * 1. QVAC_CONFIG_PATH environment variable
5
+ * 2. Config file in project root (qvac.config.ts, qvac.config.js, qvac.config.json)
6
+ * 3. SDK defaults
7
+ */
8
+ export declare function resolveConfig(): Promise<QvacConfig | undefined>;
9
+ //# sourceMappingURL=resolve-config.node.d.ts.map
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Config loader for Node.js runtime
3
+ * Uses Node.js fs/promises and path modules
4
+ */
5
+ import { promises as fs } from "fs";
6
+ import path from "path";
7
+ import { pathToFileURL } from "url";
8
+ import { validateConfig, parseJsonConfig, } from "./config-utils.js";
9
+ import { ConfigFileParseFailedError } from "../../utils/errors-client.js";
10
+ import { getClientLogger } from "../../logging/index.js";
11
+ const logger = getClientLogger();
12
+ async function findProjectRoot() {
13
+ try {
14
+ let currentDir = path.resolve(process.cwd());
15
+ const root = path.parse(currentDir).root;
16
+ while (currentDir !== root) {
17
+ try {
18
+ const packageJsonPath = path.join(currentDir, "package.json");
19
+ await fs.access(packageJsonPath);
20
+ return currentDir;
21
+ }
22
+ catch {
23
+ const parentDir = path.dirname(currentDir);
24
+ if (parentDir === currentDir) {
25
+ break;
26
+ }
27
+ currentDir = parentDir;
28
+ }
29
+ }
30
+ }
31
+ catch {
32
+ // Fall through
33
+ }
34
+ return process.cwd();
35
+ }
36
+ async function fileExists(filePath) {
37
+ try {
38
+ await fs.access(filePath);
39
+ return true;
40
+ }
41
+ catch {
42
+ return false;
43
+ }
44
+ }
45
+ async function readFile(filePath) {
46
+ return await fs.readFile(filePath, { encoding: "utf-8" });
47
+ }
48
+ async function loadJsonConfig(filePath) {
49
+ const content = await readFile(filePath);
50
+ const parsed = parseJsonConfig(content, filePath);
51
+ return validateConfig(parsed);
52
+ }
53
+ async function loadJsConfig(filePath) {
54
+ try {
55
+ let importPath = filePath;
56
+ // Windows requires file:// URLs for dynamic imports
57
+ if (process.platform === "win32" && !process.env["JEST_WORKER_ID"]) {
58
+ importPath = pathToFileURL(filePath).toString();
59
+ }
60
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
61
+ const configModule = await import(importPath);
62
+ return validateConfig(configModule.default || configModule);
63
+ }
64
+ catch (error) {
65
+ throw new ConfigFileParseFailedError(filePath, error instanceof Error ? error.message : String(error), error);
66
+ }
67
+ }
68
+ async function findConfigFile(searchDir) {
69
+ const configFiles = [
70
+ { name: "qvac.config.ts", type: "ts" },
71
+ { name: "qvac.config.js", type: "js" },
72
+ { name: "qvac.config.json", type: "json" },
73
+ ];
74
+ for (const { name, type } of configFiles) {
75
+ const filePath = path.resolve(searchDir, name);
76
+ if (await fileExists(filePath)) {
77
+ return { path: filePath, type };
78
+ }
79
+ }
80
+ return undefined;
81
+ }
82
+ /**
83
+ * Resolution order for Node.js:
84
+ * 1. QVAC_CONFIG_PATH environment variable
85
+ * 2. Config file in project root (qvac.config.ts, qvac.config.js, qvac.config.json)
86
+ * 3. SDK defaults
87
+ */
88
+ export async function resolveConfig() {
89
+ const configPath = process.env["QVAC_CONFIG_PATH"];
90
+ if (configPath) {
91
+ const normalizedPath = path.resolve(configPath);
92
+ if (await fileExists(normalizedPath)) {
93
+ const ext = normalizedPath.endsWith(".json")
94
+ ? "json"
95
+ : normalizedPath.endsWith(".ts")
96
+ ? "ts"
97
+ : "js";
98
+ const config = ext === "json"
99
+ ? await loadJsonConfig(normalizedPath)
100
+ : await loadJsConfig(normalizedPath);
101
+ logger.info(`✅ Loaded config from: ${normalizedPath}`);
102
+ return config;
103
+ }
104
+ }
105
+ const projectRoot = await findProjectRoot();
106
+ if (projectRoot) {
107
+ const configFile = await findConfigFile(projectRoot);
108
+ if (configFile) {
109
+ const config = configFile.type === "json"
110
+ ? await loadJsonConfig(configFile.path)
111
+ : await loadJsConfig(configFile.path);
112
+ logger.info(`✅ Loaded config from: ${configFile.path}`);
113
+ return config;
114
+ }
115
+ }
116
+ logger.info("ℹ️ No config file found, using SDK defaults");
117
+ return undefined;
118
+ }
@@ -1,6 +1,21 @@
1
+ import type { QvacConfig, RuntimeContext } from "../schemas/index";
2
+ type ResolveConfigFn = () => Promise<QvacConfig | undefined>;
3
+ interface RPCClient {
4
+ request(command: number): any;
5
+ }
1
6
  /**
2
- * Replays cached configuration to the worker after initialization.
3
- * This ensures config persists across worker restarts.
7
+ * Initializes SDK configuration and runtime context.
8
+ * Config is loaded once and becomes immutable on the worker side.
9
+ *
10
+ * @param rpc - The RPC client instance
11
+ * @param resolveConfig - Runtime-specific config resolver function
12
+ * @param runtimeContext - Optional runtime context (platform, device info)
4
13
  */
5
- export declare const replayConfigIfCached: (rpc: any) => Promise<void>;
14
+ export declare function initializeConfig(rpc: RPCClient, resolveConfig: ResolveConfigFn, runtimeContext?: RuntimeContext): Promise<void>;
15
+ /**
16
+ * Legacy function for backward compatibility
17
+ * @deprecated Use initializeConfig instead
18
+ */
19
+ export declare function replayConfigIfCached(): void;
20
+ export {};
6
21
  //# sourceMappingURL=init-hooks.d.ts.map
@@ -1,37 +1,65 @@
1
- import { getCachedConfig } from "./config-manager.js";
1
+ import { getClientLogger, setGlobalLogLevel, setGlobalConsoleOutput, } from "../logging/index.js";
2
+ const logger = getClientLogger();
3
+ function applyClientLoggerSettings(config) {
4
+ if (config.loggerLevel !== undefined) {
5
+ setGlobalLogLevel(config.loggerLevel);
6
+ }
7
+ if (config.loggerConsoleOutput !== undefined) {
8
+ setGlobalConsoleOutput(config.loggerConsoleOutput);
9
+ }
10
+ }
11
+ async function sendInitMessage(rpc, config, runtimeContext) {
12
+ const initMessage = {
13
+ type: "__init_config",
14
+ config,
15
+ runtimeContext,
16
+ };
17
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
18
+ const req = rpc.request(1);
19
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
20
+ req.send(JSON.stringify(initMessage), "utf8");
21
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
22
+ const response = await req.reply("utf8");
23
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-argument
24
+ const parsed = JSON.parse(response.toString());
25
+ if (!parsed.success) {
26
+ throw new Error(parsed.error ?? "Unknown error");
27
+ }
28
+ }
2
29
  /**
3
- * Replays cached configuration to the worker after initialization.
4
- * This ensures config persists across worker restarts.
30
+ * Initializes SDK configuration and runtime context.
31
+ * Config is loaded once and becomes immutable on the worker side.
32
+ *
33
+ * @param rpc - The RPC client instance
34
+ * @param resolveConfig - Runtime-specific config resolver function
35
+ * @param runtimeContext - Optional runtime context (platform, device info)
5
36
  */
6
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
- export const replayConfigIfCached = async (rpc) => {
8
- const config = getCachedConfig();
9
- if (!config) {
10
- console.log("No cached config to replay");
37
+ export async function initializeConfig(rpc, resolveConfig, runtimeContext) {
38
+ const config = await resolveConfig();
39
+ // Nothing to initialize
40
+ if (!config && !runtimeContext) {
11
41
  return;
12
42
  }
13
- console.log("🔄 Replaying cached config to worker:", config);
43
+ // Apply client-side logger settings
44
+ if (config) {
45
+ applyClientLoggerSettings(config);
46
+ logger.info("📦 Initializing SDK config");
47
+ }
48
+ if (runtimeContext) {
49
+ logger.info("📱 Runtime context:", runtimeContext);
50
+ }
14
51
  try {
15
- const request = {
16
- type: "setConfig",
17
- config,
18
- };
19
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
20
- const req = rpc.request(1);
21
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
22
- req.send(JSON.stringify(request), "utf8");
23
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
24
- const response = await req.reply("utf8");
25
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
26
- const parsed = JSON.parse(response.toString());
27
- if (parsed.type !== "setConfig" || !parsed.success) {
28
- console.error("Failed to replay config:", parsed.error);
29
- }
30
- else {
31
- console.log("✅ Config successfully replayed to worker");
32
- }
52
+ await sendInitMessage(rpc, config, runtimeContext);
53
+ logger.info("✅ Initialization complete");
33
54
  }
34
55
  catch (error) {
35
- console.error("Error replaying config:", error);
56
+ logger.error("❌ Initialization failed:", error);
36
57
  }
37
- };
58
+ }
59
+ /**
60
+ * Legacy function for backward compatibility
61
+ * @deprecated Use initializeConfig instead
62
+ */
63
+ export function replayConfigIfCached() {
64
+ logger.warn("⚠️ replayConfigIfCached is deprecated and has no effect. Config is now loaded from file during initialization.");
65
+ }
@@ -1,5 +1,5 @@
1
1
  import { type Logger } from "../logging/index";
2
- export declare function startLoggingStreamForModel(modelId: string, logger: Logger): void;
2
+ export declare function startLoggingStreamForModel(modelId: string, modelLogger: Logger): void;
3
3
  export declare function stopLoggingStreamForModel(modelId: string): void;
4
4
  export declare function hasActiveStreamForModel(modelId: string): boolean;
5
5
  //# sourceMappingURL=logging-stream-registry.d.ts.map
@@ -1,13 +1,14 @@
1
- import {} from "../logging/index.js";
1
+ import { getClientLogger } from "../logging/index.js";
2
2
  import { loggingStream } from "./api/logging-stream.js";
3
+ const logger = getClientLogger();
3
4
  const activeStreams = new Map();
4
- export function startLoggingStreamForModel(modelId, logger) {
5
+ export function startLoggingStreamForModel(modelId, modelLogger) {
5
6
  if (activeStreams.has(modelId)) {
6
- console.warn(`Logging stream already active for model ${modelId}`);
7
+ logger.warn(`Logging stream already active for model ${modelId}`);
7
8
  return;
8
9
  }
9
- const streamIterator = loggingStream({ modelId });
10
- activeStreams.set(modelId, { logger, streamIterator });
10
+ const streamIterator = loggingStream({ id: modelId });
11
+ activeStreams.set(modelId, { logger: modelLogger, streamIterator });
11
12
  try {
12
13
  void (async () => {
13
14
  try {
@@ -15,24 +16,24 @@ export function startLoggingStreamForModel(modelId, logger) {
15
16
  const logLevel = logMessage.level;
16
17
  switch (logLevel) {
17
18
  case "error":
18
- logger.error(`[${logMessage.namespace}]`, logMessage.message);
19
+ modelLogger.error(`[${logMessage.namespace}]`, logMessage.message);
19
20
  break;
20
21
  case "warn":
21
- logger.warn(`[${logMessage.namespace}]`, logMessage.message);
22
+ modelLogger.warn(`[${logMessage.namespace}]`, logMessage.message);
22
23
  break;
23
24
  case "info":
24
- logger.info(`[${logMessage.namespace}]`, logMessage.message);
25
+ modelLogger.info(`[${logMessage.namespace}]`, logMessage.message);
25
26
  break;
26
27
  case "debug":
27
- logger.debug(`[${logMessage.namespace}]`, logMessage.message);
28
+ modelLogger.debug(`[${logMessage.namespace}]`, logMessage.message);
28
29
  break;
29
30
  default:
30
- logger.info(`[${logMessage.namespace}]`, logMessage.message);
31
+ modelLogger.info(`[${logMessage.namespace}]`, logMessage.message);
31
32
  }
32
33
  }
33
34
  }
34
35
  catch (error) {
35
- console.error(`Logging stream error for model ${modelId}:`, error);
36
+ logger.error(`Logging stream error for model ${modelId}:`, error);
36
37
  }
37
38
  finally {
38
39
  activeStreams.delete(modelId);
@@ -40,7 +41,7 @@ export function startLoggingStreamForModel(modelId, logger) {
40
41
  })();
41
42
  }
42
43
  catch (error) {
43
- console.error(`Failed to start logging stream for model ${modelId}:`, error);
44
+ logger.error(`Failed to start logging stream for model ${modelId}:`, error);
44
45
  activeStreams.delete(modelId);
45
46
  throw error;
46
47
  }
@@ -52,7 +53,7 @@ export function stopLoggingStreamForModel(modelId) {
52
53
  // Terminate the stream iterator - this will close the RPC connection
53
54
  // and the server-side async generator will automatically terminate
54
55
  void stream.streamIterator.return(undefined);
55
- console.debug(`Stopped logging stream for model ${modelId}`);
56
+ logger.debug(`Stopped logging stream for model ${modelId}`);
56
57
  }
57
58
  }
58
59
  export function hasActiveStreamForModel(modelId) {
@@ -1,190 +1,9 @@
1
- import type { Request, Response } from "../../schemas/index";
2
- export declare function send<T extends Request>(request: T): Promise<Response>;
3
- export declare function stream<T extends Request>(request: T): AsyncGenerator<{
4
- type: "cancel";
5
- success: boolean;
6
- error?: string | undefined;
7
- } | {
8
- type: "completionStream";
9
- token: string;
10
- done?: boolean | undefined;
11
- stats?: {
12
- timeToFirstToken: number;
13
- tokensPerSecond: number;
14
- cacheTokens: number;
15
- } | undefined;
16
- toolCallEvent?: {
17
- type: "toolCall";
18
- call: {
19
- id: string;
20
- name: string;
21
- arguments: Record<string, unknown>;
22
- raw?: string | undefined;
23
- };
24
- } | {
25
- type: "toolCallError";
26
- error: {
27
- code: "PARSE_ERROR" | "VALIDATION_ERROR" | "UNKNOWN_TOOL";
28
- message: string;
29
- raw?: string | undefined;
30
- };
31
- } | undefined;
32
- toolCalls?: {
33
- id: string;
34
- name: string;
35
- arguments: Record<string, unknown>;
36
- raw?: string | undefined;
37
- }[] | undefined;
38
- error?: string | undefined;
39
- } | {
40
- type: "deleteCache";
41
- success: boolean;
42
- error?: string | undefined;
43
- } | {
44
- type: "textToSpeech";
45
- buffer: number[];
46
- done: boolean;
47
- } | {
48
- type: "modelProgress";
49
- downloaded: number;
50
- total: number;
51
- percentage: number;
52
- downloadKey: string;
53
- shardInfo?: {
54
- currentShard: number;
55
- totalShards: number;
56
- shardName: string;
57
- overallDownloaded: number;
58
- overallTotal: number;
59
- overallPercentage: number;
60
- } | undefined;
61
- } | {
62
- type: "loadModel";
63
- success: boolean;
64
- modelId?: string | undefined;
65
- error?: string | undefined;
66
- } | {
67
- type: "downloadAsset";
68
- success: boolean;
69
- assetId?: string | undefined;
70
- error?: string | undefined;
71
- } | {
72
- type: "embed";
73
- success: boolean;
74
- embedding: number[];
75
- error?: string | undefined;
76
- } | {
77
- type: "loggingStream";
78
- modelId: string;
79
- level: "error" | "warn" | "info" | "debug" | "off";
80
- namespace: string;
81
- message: string;
82
- timestamp: number;
83
- } | {
84
- type: "provide";
85
- success: boolean;
86
- error?: string | undefined;
87
- publicKey?: string | undefined;
88
- } | {
89
- type: "stopProvide";
90
- success: boolean;
91
- error?: string | undefined;
92
- } | {
93
- type: "unloadModel";
94
- success: boolean;
95
- error?: string | undefined;
96
- hasActiveModels?: boolean | undefined;
97
- hasActiveProviders?: boolean | undefined;
98
- } | {
99
- type: "pong";
100
- number: number;
101
- } | {
102
- type: "transcribeStream";
103
- text?: string | undefined;
104
- done?: boolean | undefined;
105
- error?: string | undefined;
106
- } | {
107
- type: "translate";
108
- token: string;
109
- done?: boolean | undefined;
110
- stats?: {
111
- processedTokens: number;
112
- processingTime: number;
113
- } | undefined;
114
- error?: string | undefined;
115
- } | {
116
- type: "error";
117
- message: string;
118
- stack?: string | undefined;
119
- timestamp?: string | undefined;
120
- name?: string | undefined;
121
- code?: number | undefined;
122
- cause?: unknown;
123
- } | {
124
- type: "rag";
125
- success: boolean;
126
- operation: "saveEmbeddings";
127
- processed: {
128
- status: "fulfilled" | "rejected";
129
- id?: string | undefined;
130
- error?: string | undefined;
131
- }[];
132
- droppedIndices: number[];
133
- error?: string | undefined;
134
- } | {
135
- type: "rag";
136
- success: boolean;
137
- operation: "search";
138
- results: {
139
- id: string;
140
- content: string;
141
- score: number;
142
- }[];
143
- error?: string | undefined;
144
- } | {
145
- type: "rag";
146
- success: boolean;
147
- operation: "deleteEmbeddings";
148
- error?: string | undefined;
149
- } | {
150
- type: "setConfig";
151
- success: boolean;
152
- error?: string | undefined;
153
- } | {
154
- type: "getModelInfo";
155
- modelInfo: {
156
- name: string;
157
- modelId: string;
158
- hyperdriveKey: string;
159
- hyperbeeKey: string;
160
- expectedSize: number;
161
- sha256Checksum: string;
162
- addon: "llm" | "whisper" | "embeddings" | "nmt" | "vad" | "tts";
163
- isCached: boolean;
164
- isLoaded: boolean;
165
- cacheFiles: {
166
- filename: string;
167
- path: string;
168
- expectedSize: number;
169
- sha256Checksum: string;
170
- isCached: boolean;
171
- actualSize?: number | undefined;
172
- cachedAt?: Date | undefined;
173
- }[];
174
- actualSize?: number | undefined;
175
- cachedAt?: Date | undefined;
176
- loadedInstances?: {
177
- registryId: string;
178
- loadedAt: Date;
179
- config?: unknown;
180
- }[] | undefined;
181
- };
182
- }, void, any>;
183
- export declare function getRPC(): {
1
+ export declare function getRPC(): Promise<{
184
2
  request(): {
185
3
  send(payload: string): void;
186
4
  reply(): Promise<Buffer<ArrayBuffer>>;
187
5
  createResponseStream(): AsyncGenerator<Buffer<ArrayBuffer>, void, unknown>;
188
6
  };
189
- };
7
+ }>;
8
+ export declare function close(): void;
190
9
  //# sourceMappingURL=bare-client.d.ts.map