@qvac/sdk 0.14.0 → 0.15.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 (798) hide show
  1. package/NOTICE +27 -11
  2. package/README.md +34 -35
  3. package/dist/client/api/batch-completion.d.ts +15 -0
  4. package/dist/client/api/batch-completion.js +332 -0
  5. package/dist/client/api/bci-transcribe.d.ts +1 -1
  6. package/dist/client/api/bci-transcribe.js +31 -31
  7. package/dist/client/api/cancel.d.ts +1 -1
  8. package/dist/client/api/cancel.js +18 -18
  9. package/dist/client/api/classify.d.ts +1 -1
  10. package/dist/client/api/classify.js +9 -6
  11. package/dist/client/api/client-request-id.js +1 -1
  12. package/dist/client/api/completion-stream.d.ts +3 -3
  13. package/dist/client/api/completion-stream.js +18 -18
  14. package/dist/client/api/delete-cache.js +9 -9
  15. package/dist/client/api/diffusion.d.ts +1 -1
  16. package/dist/client/api/diffusion.js +17 -11
  17. package/dist/client/api/download-asset.d.ts +1 -1
  18. package/dist/client/api/download-asset.js +11 -11
  19. package/dist/client/api/embed.d.ts +1 -1
  20. package/dist/client/api/embed.js +10 -10
  21. package/dist/client/api/finetune.d.ts +1 -1
  22. package/dist/client/api/finetune.js +25 -27
  23. package/dist/client/api/get-loaded-model-info.d.ts +2 -2
  24. package/dist/client/api/get-loaded-model-info.js +8 -8
  25. package/dist/client/api/get-model-info.d.ts +1 -1
  26. package/dist/client/api/get-model-info.js +7 -7
  27. package/dist/client/api/heartbeat.d.ts +2 -2
  28. package/dist/client/api/heartbeat.js +7 -7
  29. package/dist/client/api/index.d.ts +33 -32
  30. package/dist/client/api/index.js +33 -32
  31. package/dist/client/api/invoke-plugin.d.ts +1 -1
  32. package/dist/client/api/invoke-plugin.js +10 -10
  33. package/dist/client/api/load-model.d.ts +1 -1
  34. package/dist/client/api/load-model.js +32 -32
  35. package/dist/client/api/logging-stream.d.ts +1 -1
  36. package/dist/client/api/logging-stream.js +6 -6
  37. package/dist/client/api/ocr.d.ts +1 -1
  38. package/dist/client/api/ocr.js +11 -11
  39. package/dist/client/api/provide.d.ts +1 -1
  40. package/dist/client/api/provide.js +7 -7
  41. package/dist/client/api/rag.d.ts +1 -1
  42. package/dist/client/api/rag.js +65 -66
  43. package/dist/client/api/registry.d.ts +1 -1
  44. package/dist/client/api/registry.js +8 -8
  45. package/dist/client/api/resume.js +5 -5
  46. package/dist/client/api/state.d.ts +1 -1
  47. package/dist/client/api/state.js +5 -5
  48. package/dist/client/api/stop-provider.js +6 -6
  49. package/dist/client/api/subscribe-logs.d.ts +1 -1
  50. package/dist/client/api/subscribe-logs.js +3 -3
  51. package/dist/client/api/suspend.js +5 -5
  52. package/dist/client/api/text-to-speech.d.ts +1 -1
  53. package/dist/client/api/text-to-speech.js +37 -39
  54. package/dist/client/api/transcribe.d.ts +2 -2
  55. package/dist/client/api/transcribe.js +44 -45
  56. package/dist/client/api/translate.d.ts +1 -1
  57. package/dist/client/api/translate.js +14 -14
  58. package/dist/client/api/unload-model.d.ts +1 -1
  59. package/dist/client/api/unload-model.js +11 -11
  60. package/dist/client/api/upscale.d.ts +1 -1
  61. package/dist/client/api/upscale.js +9 -9
  62. package/dist/client/api/video.d.ts +1 -1
  63. package/dist/client/api/video.js +16 -14
  64. package/dist/client/api/vla-helpers.d.ts +2 -2
  65. package/dist/client/api/vla-helpers.js +6 -11
  66. package/dist/client/api/vla.d.ts +1 -1
  67. package/dist/client/api/vla.js +13 -13
  68. package/dist/client/config-loader/config-utils.d.ts +1 -1
  69. package/dist/client/config-loader/config-utils.js +3 -3
  70. package/dist/client/config-loader/resolve-config.bare.d.ts +1 -1
  71. package/dist/client/config-loader/resolve-config.bare.js +11 -11
  72. package/dist/client/config-loader/resolve-config.expo.d.ts +1 -1
  73. package/dist/client/config-loader/resolve-config.expo.js +6 -6
  74. package/dist/client/config-loader/resolve-config.node.d.ts +1 -1
  75. package/dist/client/config-loader/resolve-config.node.js +27 -27
  76. package/dist/client/index.d.ts +1 -1
  77. package/dist/client/index.js +1 -1
  78. package/dist/client/init-hooks.d.ts +1 -1
  79. package/dist/client/init-hooks.js +12 -12
  80. package/dist/client/logging-stream-registry.d.ts +1 -1
  81. package/dist/client/logging-stream-registry.js +6 -6
  82. package/dist/client/parse-input.d.ts +1 -1
  83. package/dist/client/parse-input.js +3 -3
  84. package/dist/client/plugins-factory.d.ts +2 -2
  85. package/dist/client/plugins-factory.js +2 -2
  86. package/dist/client/rpc/bare-client.d.ts +2 -1
  87. package/dist/client/rpc/bare-client.js +37 -39
  88. package/dist/client/rpc/ensure-worker-ready.js +4 -4
  89. package/dist/client/rpc/expo-device-info.d.ts +1 -1
  90. package/dist/client/rpc/expo-device-info.js +11 -11
  91. package/dist/client/rpc/expo-rpc-client.d.ts +2 -1
  92. package/dist/client/rpc/expo-rpc-client.js +38 -47
  93. package/dist/client/rpc/node-rpc-client.d.ts +2 -1
  94. package/dist/client/rpc/node-rpc-client.js +103 -75
  95. package/dist/client/rpc/profiling/index.d.ts +1 -1
  96. package/dist/client/rpc/profiling/index.js +1 -1
  97. package/dist/client/rpc/profiling/profiler.d.ts +2 -2
  98. package/dist/client/rpc/profiling/profiler.js +31 -34
  99. package/dist/client/rpc/rpc-client.d.ts +2 -2
  100. package/dist/client/rpc/rpc-client.js +113 -72
  101. package/dist/client/rpc/rpc-error.d.ts +1 -1
  102. package/dist/client/rpc/rpc-error.js +14 -14
  103. package/dist/commands/bundle/bare-pack.d.ts +1 -1
  104. package/dist/commands/bundle/bare-pack.js +20 -20
  105. package/dist/commands/bundle/constants.js +21 -21
  106. package/dist/commands/bundle/entry-gen.d.ts +1 -1
  107. package/dist/commands/bundle/entry-gen.js +10 -10
  108. package/dist/commands/bundle/index.js +47 -47
  109. package/dist/commands/bundle/manifest.d.ts +1 -1
  110. package/dist/commands/bundle/manifest.js +44 -46
  111. package/dist/commands/bundle/plugins.d.ts +2 -2
  112. package/dist/commands/bundle/plugins.js +7 -7
  113. package/dist/commands/bundle/resolve-sdk-import.d.ts +6 -0
  114. package/dist/commands/bundle/resolve-sdk-import.js +53 -0
  115. package/dist/commands/index.d.ts +4 -4
  116. package/dist/commands/index.js +2 -2
  117. package/dist/commands/verify/abi.d.ts +9 -9
  118. package/dist/commands/verify/abi.js +31 -31
  119. package/dist/commands/verify/addon-source.d.ts +1 -1
  120. package/dist/commands/verify/addon-source.js +13 -14
  121. package/dist/commands/verify/bundle-source.d.ts +1 -1
  122. package/dist/commands/verify/bundle-source.js +7 -7
  123. package/dist/commands/verify/index.d.ts +3 -3
  124. package/dist/commands/verify/index.js +18 -17
  125. package/dist/commands/verify/node-modules-source.d.ts +1 -1
  126. package/dist/commands/verify/node-modules-source.js +11 -11
  127. package/dist/commands/verify/prebuilds.d.ts +3 -3
  128. package/dist/commands/verify/prebuilds.js +8 -8
  129. package/dist/constants/audio.d.ts +1 -1
  130. package/dist/constants/audio.js +1 -1
  131. package/dist/constants/index.d.ts +2 -2
  132. package/dist/constants/index.js +2 -2
  133. package/dist/constants/registry.js +1 -1
  134. package/dist/examples/audio/mic-input.d.ts +1 -1
  135. package/dist/examples/audio/mic-input.js +31 -31
  136. package/dist/examples/batch-completion.d.ts +38 -0
  137. package/dist/examples/batch-completion.js +100 -0
  138. package/dist/examples/bci/bci-filesystem-streaming.js +20 -20
  139. package/dist/examples/bci/bci-filesystem.js +17 -17
  140. package/dist/examples/cache-management.js +32 -32
  141. package/dist/examples/cancel-by-request-id.js +11 -11
  142. package/dist/examples/classification/classify-image.js +5 -5
  143. package/dist/examples/completion-events.js +16 -18
  144. package/dist/examples/completion-stop-reason.js +13 -13
  145. package/dist/examples/concurrent-completion-collision.js +20 -20
  146. package/dist/examples/config/blind-relay/blind-relay.config.js +4 -4
  147. package/dist/examples/config/default/default.config.js +2 -2
  148. package/dist/examples/config/plugins/plugins.config.js +2 -2
  149. package/dist/examples/config-reload.js +14 -14
  150. package/dist/examples/default-config-usage.js +10 -13
  151. package/dist/examples/delegated-inference/composite.js +23 -23
  152. package/dist/examples/delegated-inference/consumer-profiled.js +19 -19
  153. package/dist/examples/delegated-inference/consumer.js +11 -11
  154. package/dist/examples/delegated-inference/provider.js +24 -24
  155. package/dist/examples/diffusion-esrgan-upscale.js +19 -19
  156. package/dist/examples/diffusion-flux2-klein-img2img.js +17 -17
  157. package/dist/examples/diffusion-flux2-klein.js +14 -14
  158. package/dist/examples/diffusion-img2img.js +13 -13
  159. package/dist/examples/diffusion-img2vid.js +22 -23
  160. package/dist/examples/diffusion-simple.js +7 -7
  161. package/dist/examples/diffusion-txt2img.js +13 -14
  162. package/dist/examples/diffusion-txt2vid.js +18 -18
  163. package/dist/examples/download-with-blind-relays.js +7 -8
  164. package/dist/examples/download-with-cancel.js +9 -9
  165. package/dist/examples/embed-multi-gpu.js +9 -9
  166. package/dist/examples/embed-p2p.js +24 -24
  167. package/dist/examples/finetune/llamacpp-finetune.js +21 -21
  168. package/dist/examples/kv-cache-cleanup.js +34 -34
  169. package/dist/examples/kv-cache-custom-key.js +30 -30
  170. package/dist/examples/kv-cache-example.js +18 -20
  171. package/dist/examples/llamacpp-cache.js +33 -33
  172. package/dist/examples/llamacpp-dynamic-tools.js +38 -38
  173. package/dist/examples/llamacpp-filesystem.js +13 -15
  174. package/dist/examples/llamacpp-http.js +12 -14
  175. package/dist/examples/llamacpp-multi-gpu.js +12 -12
  176. package/dist/examples/llamacpp-multimodal.js +16 -16
  177. package/dist/examples/llamacpp-p2p.js +11 -11
  178. package/dist/examples/llamacpp-sharded.js +12 -12
  179. package/dist/examples/llamacpp-structured-output.js +37 -37
  180. package/dist/examples/logging-file-transport.js +19 -21
  181. package/dist/examples/logging-global.js +8 -8
  182. package/dist/examples/logging-streaming.js +16 -18
  183. package/dist/examples/mcp-websearch.js +44 -44
  184. package/dist/examples/multi-model-demo.js +33 -33
  185. package/dist/examples/ocr-fasttext.js +17 -17
  186. package/dist/examples/parallel-download.js +11 -13
  187. package/dist/examples/plugins.js +43 -43
  188. package/dist/examples/profiling/basic.js +34 -36
  189. package/dist/examples/profiling/per-call.js +16 -16
  190. package/dist/examples/quickstart.bare.js +4 -6
  191. package/dist/examples/quickstart.js +7 -7
  192. package/dist/examples/rag/rag-chromadb.js +26 -26
  193. package/dist/examples/rag/rag-hyperdb/cancellation.js +19 -20
  194. package/dist/examples/rag/rag-hyperdb/ingest.js +19 -19
  195. package/dist/examples/rag/rag-hyperdb/pipeline.js +26 -26
  196. package/dist/examples/rag/rag-hyperdb/workspaces.js +46 -46
  197. package/dist/examples/rag/rag-lancedb.js +29 -32
  198. package/dist/examples/rag/rag-sqlite.js +25 -25
  199. package/dist/examples/registry-query.js +15 -15
  200. package/dist/examples/seed-p2p.js +8 -8
  201. package/dist/examples/suspend-resume.js +20 -20
  202. package/dist/examples/tools/llamacpp-native-tools.js +25 -25
  203. package/dist/examples/tools/llamacpp-tools-gemma4.js +14 -14
  204. package/dist/examples/tools/llamacpp-tools-harmony-multiturn.js +15 -15
  205. package/dist/examples/tools/llamacpp-tools-pythonic.js +15 -15
  206. package/dist/examples/tools/llamacpp-tools-qwen35.js +14 -14
  207. package/dist/examples/tools/shared.d.ts +2 -2
  208. package/dist/examples/tools/shared.js +17 -17
  209. package/dist/examples/transcription/parakeet-ctc-filesystem.js +12 -12
  210. package/dist/examples/transcription/parakeet-microphone-record.js +19 -19
  211. package/dist/examples/transcription/parakeet-microphone-stream.js +23 -23
  212. package/dist/examples/transcription/parakeet-sortformer-streaming.js +18 -28
  213. package/dist/examples/transcription/parakeet-sortformer.js +21 -21
  214. package/dist/examples/transcription/parakeet-tdt-filesystem.js +13 -13
  215. package/dist/examples/transcription/whispercpp-filesystem-streaming.js +34 -34
  216. package/dist/examples/transcription/whispercpp-filesystem.js +19 -19
  217. package/dist/examples/transcription/whispercpp-microphone-conversation.js +27 -27
  218. package/dist/examples/transcription/whispercpp-microphone-record.js +21 -21
  219. package/dist/examples/transcription/whispercpp-prompt.js +18 -18
  220. package/dist/examples/translation/translation-bergamot-batch.js +17 -17
  221. package/dist/examples/translation/translation-bergamot-pivot.js +16 -16
  222. package/dist/examples/translation/translation-bergamot.js +11 -11
  223. package/dist/examples/translation/translation-indic.js +10 -10
  224. package/dist/examples/translation/translation-llm-afriquegemma.js +10 -10
  225. package/dist/examples/translation/translation-llm-context.js +10 -10
  226. package/dist/examples/translation/translation-llm.js +13 -13
  227. package/dist/examples/translation/translation-stream.js +11 -11
  228. package/dist/examples/tts/chatterbox-enhanced.d.ts +2 -0
  229. package/dist/examples/tts/chatterbox-enhanced.js +55 -0
  230. package/dist/examples/tts/chatterbox-multilingual.d.ts +2 -0
  231. package/dist/examples/tts/chatterbox-multilingual.js +54 -0
  232. package/dist/examples/tts/chatterbox.js +18 -18
  233. package/dist/examples/tts/llm-to-tts-streaming.js +30 -30
  234. package/dist/examples/tts/supertonic-enhanced.d.ts +2 -0
  235. package/dist/examples/tts/supertonic-enhanced.js +57 -0
  236. package/dist/examples/tts/supertonic-multilingual.js +19 -19
  237. package/dist/examples/tts/supertonic.js +18 -18
  238. package/dist/examples/tts/utils.js +24 -32
  239. package/dist/examples/vla-pi05.js +14 -14
  240. package/dist/examples/vla-smolvla.js +14 -14
  241. package/dist/examples/voice-assistant/voice-assistant.js +46 -46
  242. package/dist/expo/plugins/find-in-ancestor-node-modules.js +3 -3
  243. package/dist/expo/plugins/get-project-root.d.ts +2 -2
  244. package/dist/expo/plugins/get-project-root.js +1 -1
  245. package/dist/expo/plugins/index.d.ts +11 -11
  246. package/dist/expo/plugins/index.js +10 -10
  247. package/dist/expo/plugins/resolve-sdk-package-dir.js +7 -11
  248. package/dist/expo/plugins/withAndroidArchitecture.d.ts +1 -1
  249. package/dist/expo/plugins/withAndroidArchitecture.js +12 -12
  250. package/dist/expo/plugins/withAndroidNdkVersion.d.ts +1 -1
  251. package/dist/expo/plugins/withAndroidNdkVersion.js +9 -9
  252. package/dist/expo/plugins/withDeviceInfo.d.ts +1 -1
  253. package/dist/expo/plugins/withDeviceInfo.js +13 -13
  254. package/dist/expo/plugins/withMobileBundle.d.ts +1 -1
  255. package/dist/expo/plugins/withMobileBundle.js +34 -42
  256. package/dist/expo/plugins/withOpenCL.d.ts +1 -1
  257. package/dist/expo/plugins/withOpenCL.js +14 -16
  258. package/dist/expo/plugins/withQvacSDK.d.ts +1 -1
  259. package/dist/expo/plugins/withQvacSDK.js +12 -12
  260. package/dist/index.d.ts +16 -16
  261. package/dist/index.js +16 -17
  262. package/dist/logging/addon.d.ts +1 -1
  263. package/dist/logging/addon.js +13 -13
  264. package/dist/logging/base-logger.d.ts +2 -2
  265. package/dist/logging/base-logger.js +6 -6
  266. package/dist/logging/client-logger.d.ts +1 -1
  267. package/dist/logging/client-logger.js +3 -3
  268. package/dist/logging/index.d.ts +9 -9
  269. package/dist/logging/index.js +8 -8
  270. package/dist/logging/logger.d.ts +1 -1
  271. package/dist/logging/logger.js +4 -4
  272. package/dist/logging/namespaces.d.ts +1 -1
  273. package/dist/logging/namespaces.js +5 -5
  274. package/dist/logging/registry.d.ts +2 -2
  275. package/dist/logging/registry.js +3 -3
  276. package/dist/logging/server-logger.d.ts +1 -1
  277. package/dist/logging/server-logger.js +2 -2
  278. package/dist/logging/stream-logger.d.ts +1 -1
  279. package/dist/logging/stream-logger.js +4 -4
  280. package/dist/logging/transport.d.ts +1 -1
  281. package/dist/logging/types.d.ts +1 -1
  282. package/dist/logging/utils.d.ts +2 -2
  283. package/dist/logging/utils.js +40 -41
  284. package/dist/models/registry/index.d.ts +1 -1
  285. package/dist/models/registry/index.js +5 -5
  286. package/dist/models/registry/models.d.ts +429 -122
  287. package/dist/models/registry/models.js +13693 -13369
  288. package/dist/models/update-models/codegen.d.ts +1 -1
  289. package/dist/models/update-models/codegen.js +8 -8
  290. package/dist/models/update-models/companions.d.ts +6 -1
  291. package/dist/models/update-models/companions.js +104 -39
  292. package/dist/models/update-models/history.d.ts +1 -1
  293. package/dist/models/update-models/history.js +11 -11
  294. package/dist/models/update-models/index.js +32 -34
  295. package/dist/models/update-models/naming.d.ts +2 -2
  296. package/dist/models/update-models/naming.js +177 -186
  297. package/dist/models/update-models/processing.d.ts +2 -2
  298. package/dist/models/update-models/processing.js +17 -19
  299. package/dist/models/update-models/registry.d.ts +2 -2
  300. package/dist/models/update-models/registry.js +9 -9
  301. package/dist/models/update-models/shards.d.ts +1 -1
  302. package/dist/models/update-models/shards.js +3 -3
  303. package/dist/models/update-models/types.d.ts +1 -1
  304. package/dist/models/update-models/utils.js +5 -5
  305. package/dist/pear/pre.js +84 -84
  306. package/dist/profiling/aggregator.d.ts +1 -1
  307. package/dist/profiling/aggregator.js +6 -6
  308. package/dist/profiling/clock.d.ts +1 -1
  309. package/dist/profiling/clock.js +10 -10
  310. package/dist/profiling/controller.d.ts +2 -2
  311. package/dist/profiling/controller.js +11 -12
  312. package/dist/profiling/envelope.d.ts +1 -1
  313. package/dist/profiling/envelope.js +4 -6
  314. package/dist/profiling/events.d.ts +2 -2
  315. package/dist/profiling/events.js +8 -10
  316. package/dist/profiling/exporters.d.ts +1 -1
  317. package/dist/profiling/exporters.js +81 -79
  318. package/dist/profiling/index.d.ts +8 -8
  319. package/dist/profiling/index.js +7 -7
  320. package/dist/profiling/model-execution.js +2 -1
  321. package/dist/profiling/ring-buffer.js +2 -2
  322. package/dist/profiling/types.d.ts +3 -3
  323. package/dist/schemas/archive.d.ts +1 -1
  324. package/dist/schemas/archive.js +8 -14
  325. package/dist/schemas/batch-completion-stream.d.ts +463 -0
  326. package/dist/schemas/batch-completion-stream.js +124 -0
  327. package/dist/schemas/bci-config.d.ts +1 -1
  328. package/dist/schemas/bci-config.js +7 -7
  329. package/dist/schemas/bci.d.ts +3 -3
  330. package/dist/schemas/bci.js +25 -31
  331. package/dist/schemas/cancel.d.ts +6 -1
  332. package/dist/schemas/cancel.js +33 -34
  333. package/dist/schemas/classification.d.ts +1 -1
  334. package/dist/schemas/classification.js +7 -7
  335. package/dist/schemas/common.d.ts +194 -25
  336. package/dist/schemas/common.js +40 -37
  337. package/dist/schemas/completion-event.d.ts +11 -8
  338. package/dist/schemas/completion-event.js +27 -26
  339. package/dist/schemas/completion-stream.d.ts +4 -3
  340. package/dist/schemas/completion-stream.js +51 -67
  341. package/dist/schemas/delegate.d.ts +1 -1
  342. package/dist/schemas/delegate.js +7 -7
  343. package/dist/schemas/delete-cache.d.ts +1 -1
  344. package/dist/schemas/delete-cache.js +8 -8
  345. package/dist/schemas/download-asset.d.ts +2 -2
  346. package/dist/schemas/download-asset.js +21 -21
  347. package/dist/schemas/embed.d.ts +3 -3
  348. package/dist/schemas/embed.js +16 -27
  349. package/dist/schemas/engine-addon-map.d.ts +2 -2
  350. package/dist/schemas/engine-addon-map.js +24 -24
  351. package/dist/schemas/error.d.ts +1 -1
  352. package/dist/schemas/error.js +12 -13
  353. package/dist/schemas/finetune.d.ts +1 -1
  354. package/dist/schemas/finetune.js +35 -41
  355. package/dist/schemas/get-loaded-model-info.d.ts +1 -1
  356. package/dist/schemas/get-loaded-model-info.js +10 -10
  357. package/dist/schemas/get-model-info.d.ts +1 -1
  358. package/dist/schemas/get-model-info.js +48 -91
  359. package/dist/schemas/heartbeat.d.ts +1 -1
  360. package/dist/schemas/heartbeat.js +6 -6
  361. package/dist/schemas/index.d.ts +52 -51
  362. package/dist/schemas/index.js +52 -51
  363. package/dist/schemas/json-schema.d.ts +1 -1
  364. package/dist/schemas/llamacpp-config.d.ts +33 -25
  365. package/dist/schemas/llamacpp-config.js +43 -30
  366. package/dist/schemas/load-model.d.ts +160 -128
  367. package/dist/schemas/load-model.js +120 -126
  368. package/dist/schemas/logging-stream.d.ts +1 -1
  369. package/dist/schemas/logging-stream.js +6 -12
  370. package/dist/schemas/mcp-adapter.d.ts +1 -1
  371. package/dist/schemas/model-src-utils.d.ts +1 -1
  372. package/dist/schemas/model-src-utils.js +13 -13
  373. package/dist/schemas/model-types.d.ts +1 -1
  374. package/dist/schemas/model-types.js +27 -27
  375. package/dist/schemas/ocr.d.ts +1 -1
  376. package/dist/schemas/ocr.js +18 -18
  377. package/dist/schemas/path-validation.d.ts +1 -1
  378. package/dist/schemas/path-validation.js +4 -4
  379. package/dist/schemas/plugin.d.ts +9 -10
  380. package/dist/schemas/plugin.js +47 -47
  381. package/dist/schemas/profiling.d.ts +1 -1
  382. package/dist/schemas/profiling.js +16 -16
  383. package/dist/schemas/provide.d.ts +1 -1
  384. package/dist/schemas/provide.js +8 -8
  385. package/dist/schemas/rag.d.ts +3 -3
  386. package/dist/schemas/rag.js +65 -70
  387. package/dist/schemas/registry.d.ts +1 -1
  388. package/dist/schemas/registry.js +44 -66
  389. package/dist/schemas/reload-config.d.ts +1 -1
  390. package/dist/schemas/reload-config.js +14 -18
  391. package/dist/schemas/resume.d.ts +1 -1
  392. package/dist/schemas/resume.js +3 -3
  393. package/dist/schemas/runtime-context.d.ts +1 -1
  394. package/dist/schemas/runtime-context.js +4 -4
  395. package/dist/schemas/sdcpp-config.d.ts +9 -9
  396. package/dist/schemas/sdcpp-config.js +298 -300
  397. package/dist/schemas/sdk-config.d.ts +55 -43
  398. package/dist/schemas/sdk-config.js +25 -29
  399. package/dist/schemas/sdk-errors-client.d.ts +1 -1
  400. package/dist/schemas/sdk-errors-client.js +80 -80
  401. package/dist/schemas/sdk-errors-registry.js +1 -1
  402. package/dist/schemas/sdk-errors-server.d.ts +1 -1
  403. package/dist/schemas/sdk-errors-server.js +200 -199
  404. package/dist/schemas/shard.d.ts +1 -1
  405. package/dist/schemas/shard.js +4 -4
  406. package/dist/schemas/state.d.ts +1 -1
  407. package/dist/schemas/state.js +5 -10
  408. package/dist/schemas/stop-provide.d.ts +1 -1
  409. package/dist/schemas/stop-provide.js +4 -4
  410. package/dist/schemas/suspend.d.ts +1 -1
  411. package/dist/schemas/suspend.js +3 -3
  412. package/dist/schemas/text-to-speech.d.ts +455 -3
  413. package/dist/schemas/text-to-speech.js +146 -110
  414. package/dist/schemas/tools.d.ts +1 -1
  415. package/dist/schemas/tools.js +17 -24
  416. package/dist/schemas/transcription-config.d.ts +1 -1
  417. package/dist/schemas/transcription-config.js +18 -18
  418. package/dist/schemas/transcription.d.ts +5 -5
  419. package/dist/schemas/transcription.js +31 -33
  420. package/dist/schemas/translate.d.ts +3 -3
  421. package/dist/schemas/translate.js +38 -67
  422. package/dist/schemas/translation-config.d.ts +1 -1
  423. package/dist/schemas/translation-config.js +116 -123
  424. package/dist/schemas/unload-model.d.ts +1 -1
  425. package/dist/schemas/unload-model.js +6 -6
  426. package/dist/schemas/vla.d.ts +1 -1
  427. package/dist/schemas/vla.js +30 -30
  428. package/dist/scripts/run-security-tests.js +9 -10
  429. package/dist/scripts/run-unit-tests.js +11 -12
  430. package/dist/server/bare/delegate-connect-diagnostics.js +13 -19
  431. package/dist/server/bare/delegate-rpc-client.d.ts +2 -2
  432. package/dist/server/bare/delegate-rpc-client.js +32 -34
  433. package/dist/server/bare/hyperswarm.d.ts +3 -3
  434. package/dist/server/bare/hyperswarm.js +14 -14
  435. package/dist/server/bare/ops/bci-transcribe.d.ts +1 -1
  436. package/dist/server/bare/ops/bci-transcribe.js +44 -44
  437. package/dist/server/bare/ops/cancel.d.ts +2 -2
  438. package/dist/server/bare/ops/cancel.js +6 -6
  439. package/dist/server/bare/ops/embed.d.ts +1 -1
  440. package/dist/server/bare/ops/embed.js +26 -16
  441. package/dist/server/bare/ops/kv-cache-utils.d.ts +1 -1
  442. package/dist/server/bare/ops/kv-cache-utils.js +17 -19
  443. package/dist/server/bare/ops/load-model.d.ts +2 -2
  444. package/dist/server/bare/ops/load-model.js +14 -18
  445. package/dist/server/bare/ops/transcribe.d.ts +3 -3
  446. package/dist/server/bare/ops/transcribe.js +62 -62
  447. package/dist/server/bare/ops/translate.d.ts +1 -1
  448. package/dist/server/bare/ops/translate.js +39 -30
  449. package/dist/server/bare/ops/unload-model.d.ts +1 -1
  450. package/dist/server/bare/ops/unload-model.js +12 -12
  451. package/dist/server/bare/plugins/bci-whispercpp-transcription/args.d.ts +2 -2
  452. package/dist/server/bare/plugins/bci-whispercpp-transcription/args.js +3 -3
  453. package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.d.ts +2 -2
  454. package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.js +33 -33
  455. package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.d.ts +1 -1
  456. package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.js +1 -1
  457. package/dist/server/bare/plugins/ggml-classification/ops/classify.d.ts +1 -1
  458. package/dist/server/bare/plugins/ggml-classification/ops/classify.js +8 -8
  459. package/dist/server/bare/plugins/ggml-classification/plugin.d.ts +1 -1
  460. package/dist/server/bare/plugins/ggml-classification/plugin.js +14 -14
  461. package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.d.ts +1 -1
  462. package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.js +27 -26
  463. package/dist/server/bare/plugins/ggml-ocr/plugin.d.ts +1 -1
  464. package/dist/server/bare/plugins/ggml-ocr/plugin.js +38 -38
  465. package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.d.ts +1 -1
  466. package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.js +3 -3
  467. package/dist/server/bare/plugins/ggml-vla/ops/vla-run.d.ts +1 -1
  468. package/dist/server/bare/plugins/ggml-vla/ops/vla-run.js +23 -23
  469. package/dist/server/bare/plugins/ggml-vla/plugin.d.ts +1 -1
  470. package/dist/server/bare/plugins/ggml-vla/plugin.js +15 -15
  471. package/dist/server/bare/plugins/index.d.ts +11 -11
  472. package/dist/server/bare/plugins/index.js +11 -11
  473. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-cancelled.d.ts +23 -0
  474. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-cancelled.js +30 -0
  475. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.d.ts +32 -0
  476. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.js +99 -0
  477. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.d.ts +1 -1
  478. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.js +8 -8
  479. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.d.ts +3 -2
  480. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.js +4 -1
  481. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.d.ts +22 -4
  482. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.js +55 -59
  483. package/dist/server/bare/plugins/llamacpp-completion/ops/context-overflow.js +5 -5
  484. package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.d.ts +2 -2
  485. package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.js +34 -34
  486. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.d.ts +7 -7
  487. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.js +19 -23
  488. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.js +4 -6
  489. package/dist/server/bare/plugins/llamacpp-completion/plugin.d.ts +186 -17
  490. package/dist/server/bare/plugins/llamacpp-completion/plugin.js +235 -70
  491. package/dist/server/bare/plugins/llamacpp-completion/transform.d.ts +1 -1
  492. package/dist/server/bare/plugins/llamacpp-completion/transform.js +15 -15
  493. package/dist/server/bare/plugins/llamacpp-embedding/plugin.d.ts +3 -3
  494. package/dist/server/bare/plugins/llamacpp-embedding/plugin.js +27 -29
  495. package/dist/server/bare/plugins/nmtcpp-translation/plugin.d.ts +1 -1
  496. package/dist/server/bare/plugins/nmtcpp-translation/plugin.js +38 -39
  497. package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.d.ts +1 -1
  498. package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.js +19 -22
  499. package/dist/server/bare/plugins/parakeet-transcription/plugin.d.ts +1 -1
  500. package/dist/server/bare/plugins/parakeet-transcription/plugin.js +36 -36
  501. package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.d.ts +1 -1
  502. package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.js +15 -17
  503. package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.d.ts +1 -1
  504. package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.js +11 -11
  505. package/dist/server/bare/plugins/sdcpp-generation/ops/video.d.ts +1 -1
  506. package/dist/server/bare/plugins/sdcpp-generation/ops/video.js +42 -44
  507. package/dist/server/bare/plugins/sdcpp-generation/plugin.d.ts +4 -4
  508. package/dist/server/bare/plugins/sdcpp-generation/plugin.js +69 -63
  509. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.d.ts +2 -2
  510. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.js +19 -21
  511. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.d.ts +2 -2
  512. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.js +22 -24
  513. package/dist/server/bare/plugins/tts-ggml/plugin.d.ts +3 -2
  514. package/dist/server/bare/plugins/tts-ggml/plugin.js +95 -49
  515. package/dist/server/bare/plugins/whispercpp-transcription/plugin.d.ts +1 -1
  516. package/dist/server/bare/plugins/whispercpp-transcription/plugin.js +52 -52
  517. package/dist/server/bare/rag-hyperdb/handlers/chunk.d.ts +1 -1
  518. package/dist/server/bare/rag-hyperdb/handlers/chunk.js +2 -2
  519. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.d.ts +1 -1
  520. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.js +2 -2
  521. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.d.ts +1 -1
  522. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.js +4 -4
  523. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.d.ts +1 -1
  524. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.js +3 -3
  525. package/dist/server/bare/rag-hyperdb/handlers/ingest.d.ts +2 -2
  526. package/dist/server/bare/rag-hyperdb/handlers/ingest.js +4 -4
  527. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.d.ts +1 -1
  528. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.js +1 -1
  529. package/dist/server/bare/rag-hyperdb/handlers/reindex.d.ts +2 -2
  530. package/dist/server/bare/rag-hyperdb/handlers/reindex.js +5 -5
  531. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.d.ts +2 -2
  532. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.js +3 -3
  533. package/dist/server/bare/rag-hyperdb/handlers/search.d.ts +1 -1
  534. package/dist/server/bare/rag-hyperdb/handlers/search.js +3 -3
  535. package/dist/server/bare/rag-hyperdb/index.d.ts +11 -11
  536. package/dist/server/bare/rag-hyperdb/index.js +11 -11
  537. package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +3 -3
  538. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.d.ts +1 -1
  539. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.js +20 -20
  540. package/dist/server/bare/registry/config-registry.d.ts +1 -1
  541. package/dist/server/bare/registry/config-registry.js +13 -16
  542. package/dist/server/bare/registry/logging-stream-registry.d.ts +1 -1
  543. package/dist/server/bare/registry/logging-stream-registry.js +2 -2
  544. package/dist/server/bare/registry/model-config-registry.d.ts +2 -2
  545. package/dist/server/bare/registry/model-config-registry.js +6 -6
  546. package/dist/server/bare/registry/model-config-utils.d.ts +2 -2
  547. package/dist/server/bare/registry/model-config-utils.js +35 -35
  548. package/dist/server/bare/registry/model-registry.d.ts +3 -3
  549. package/dist/server/bare/registry/model-registry.js +11 -11
  550. package/dist/server/bare/registry/registry-client.d.ts +1 -1
  551. package/dist/server/bare/registry/registry-client.js +18 -18
  552. package/dist/server/bare/registry/runtime-context-registry.d.ts +1 -1
  553. package/dist/server/bare/registry/runtime-context-registry.js +3 -3
  554. package/dist/server/bare/runtime/disposable-scope.js +3 -3
  555. package/dist/server/bare/runtime/index.d.ts +7 -7
  556. package/dist/server/bare/runtime/index.js +3 -3
  557. package/dist/server/bare/runtime/request-context.d.ts +4 -4
  558. package/dist/server/bare/runtime/request-id.js +1 -1
  559. package/dist/server/bare/runtime/request-registry-singleton.d.ts +1 -1
  560. package/dist/server/bare/runtime/request-registry-singleton.js +23 -4
  561. package/dist/server/bare/runtime/request-registry.d.ts +27 -12
  562. package/dist/server/bare/runtime/request-registry.js +39 -34
  563. package/dist/server/bare/runtime/with-request-context.d.ts +1 -1
  564. package/dist/server/bare/runtime/with-request-context.js +11 -11
  565. package/dist/server/bare/runtime-lifecycle.d.ts +1 -1
  566. package/dist/server/bare/runtime-lifecycle.js +27 -31
  567. package/dist/server/bare/types/addon-responses.d.ts +5 -4
  568. package/dist/server/bare/utils/audio-input.d.ts +2 -2
  569. package/dist/server/bare/utils/audio-input.js +7 -7
  570. package/dist/server/bare/utils/transcribe-metadata.d.ts +1 -1
  571. package/dist/server/bare/utils/transcribe-metadata.js +4 -4
  572. package/dist/server/bare/utils/tts-stats.d.ts +1 -1
  573. package/dist/server/bare/utils/tts-stats.js +3 -3
  574. package/dist/server/env.js +8 -8
  575. package/dist/server/error-handlers.d.ts +3 -3
  576. package/dist/server/error-handlers.js +11 -11
  577. package/dist/server/plugins/index.d.ts +1 -1
  578. package/dist/server/plugins/index.js +1 -1
  579. package/dist/server/plugins/registry.d.ts +1 -1
  580. package/dist/server/plugins/registry.js +12 -14
  581. package/dist/server/rpc/create-server.d.ts +1 -1
  582. package/dist/server/rpc/create-server.js +11 -12
  583. package/dist/server/rpc/delegate-transport.d.ts +3 -3
  584. package/dist/server/rpc/delegate-transport.js +43 -44
  585. package/dist/server/rpc/handle-request.d.ts +1 -1
  586. package/dist/server/rpc/handle-request.js +28 -30
  587. package/dist/server/rpc/handler-registry.d.ts +1 -1
  588. package/dist/server/rpc/handler-registry.js +97 -92
  589. package/dist/server/rpc/handler-selection.d.ts +3 -3
  590. package/dist/server/rpc/handler-selection.js +3 -3
  591. package/dist/server/rpc/handler-utils.d.ts +7 -7
  592. package/dist/server/rpc/handler-utils.js +32 -35
  593. package/dist/server/rpc/handlers/batch-completion-stream.d.ts +78 -0
  594. package/dist/server/rpc/handlers/batch-completion-stream.js +4 -0
  595. package/dist/server/rpc/handlers/bci-transcribe-stream.d.ts +1 -1
  596. package/dist/server/rpc/handlers/bci-transcribe-stream.js +2 -2
  597. package/dist/server/rpc/handlers/bci-transcribe.d.ts +1 -1
  598. package/dist/server/rpc/handlers/bci-transcribe.js +2 -2
  599. package/dist/server/rpc/handlers/cancel-delegated.d.ts +2 -2
  600. package/dist/server/rpc/handlers/cancel-delegated.js +13 -13
  601. package/dist/server/rpc/handlers/cancelHandler.d.ts +1 -1
  602. package/dist/server/rpc/handlers/cancelHandler.js +11 -11
  603. package/dist/server/rpc/handlers/classify.d.ts +1 -1
  604. package/dist/server/rpc/handlers/classify.js +2 -2
  605. package/dist/server/rpc/handlers/completion-stream-delegated.d.ts +2 -2
  606. package/dist/server/rpc/handlers/completion-stream-delegated.js +14 -14
  607. package/dist/server/rpc/handlers/completion-stream.d.ts +1 -1
  608. package/dist/server/rpc/handlers/completion-stream.js +2 -2
  609. package/dist/server/rpc/handlers/delete-cache.d.ts +1 -1
  610. package/dist/server/rpc/handlers/delete-cache.js +10 -10
  611. package/dist/server/rpc/handlers/diffusion-stream.d.ts +1 -1
  612. package/dist/server/rpc/handlers/diffusion-stream.js +2 -2
  613. package/dist/server/rpc/handlers/download-asset.d.ts +1 -1
  614. package/dist/server/rpc/handlers/download-asset.js +20 -20
  615. package/dist/server/rpc/handlers/embed.d.ts +1 -1
  616. package/dist/server/rpc/handlers/embed.js +2 -2
  617. package/dist/server/rpc/handlers/finetune.d.ts +1 -1
  618. package/dist/server/rpc/handlers/finetune.js +8 -6
  619. package/dist/server/rpc/handlers/get-loaded-model-info.d.ts +1 -1
  620. package/dist/server/rpc/handlers/get-loaded-model-info.js +9 -9
  621. package/dist/server/rpc/handlers/get-model-info.d.ts +1 -1
  622. package/dist/server/rpc/handlers/get-model-info.js +20 -20
  623. package/dist/server/rpc/handlers/heartbeat-delegated.d.ts +2 -2
  624. package/dist/server/rpc/handlers/heartbeat-delegated.js +7 -7
  625. package/dist/server/rpc/handlers/heartbeat.d.ts +1 -1
  626. package/dist/server/rpc/handlers/heartbeat.js +1 -1
  627. package/dist/server/rpc/handlers/index.d.ts +33 -31
  628. package/dist/server/rpc/handlers/index.js +34 -32
  629. package/dist/server/rpc/handlers/load-model/download-manager.d.ts +4 -4
  630. package/dist/server/rpc/handlers/load-model/download-manager.js +19 -17
  631. package/dist/server/rpc/handlers/load-model/download-stats.d.ts +4 -3
  632. package/dist/server/rpc/handlers/load-model/download-stats.js +9 -11
  633. package/dist/server/rpc/handlers/load-model/handler.d.ts +1 -1
  634. package/dist/server/rpc/handlers/load-model/handler.js +42 -43
  635. package/dist/server/rpc/handlers/load-model/http.d.ts +2 -2
  636. package/dist/server/rpc/handlers/load-model/http.js +100 -107
  637. package/dist/server/rpc/handlers/load-model/hyperdrive.d.ts +2 -2
  638. package/dist/server/rpc/handlers/load-model/hyperdrive.js +72 -74
  639. package/dist/server/rpc/handlers/load-model/index.d.ts +2 -2
  640. package/dist/server/rpc/handlers/load-model/index.js +2 -2
  641. package/dist/server/rpc/handlers/load-model/registry-client-options.d.ts +2 -2
  642. package/dist/server/rpc/handlers/load-model/registry-client-options.js +2 -3
  643. package/dist/server/rpc/handlers/load-model/registry-companion-set.d.ts +5 -5
  644. package/dist/server/rpc/handlers/load-model/registry-companion-set.js +19 -21
  645. package/dist/server/rpc/handlers/load-model/registry-download-utils.d.ts +6 -6
  646. package/dist/server/rpc/handlers/load-model/registry-download-utils.js +16 -18
  647. package/dist/server/rpc/handlers/load-model/registry-metadata.d.ts +11 -0
  648. package/dist/server/rpc/handlers/load-model/registry-metadata.js +23 -0
  649. package/dist/server/rpc/handlers/load-model/registry.d.ts +4 -3
  650. package/dist/server/rpc/handlers/load-model/registry.js +50 -56
  651. package/dist/server/rpc/handlers/load-model/resolve-session.d.ts +3 -3
  652. package/dist/server/rpc/handlers/load-model/resolve-session.js +7 -7
  653. package/dist/server/rpc/handlers/load-model/resolve.d.ts +3 -3
  654. package/dist/server/rpc/handlers/load-model/resolve.js +36 -35
  655. package/dist/server/rpc/handlers/load-model/types.d.ts +3 -3
  656. package/dist/server/rpc/handlers/load-model/types.js +7 -7
  657. package/dist/server/rpc/handlers/load-model-delegated.d.ts +2 -2
  658. package/dist/server/rpc/handlers/load-model-delegated.js +31 -30
  659. package/dist/server/rpc/handlers/logging-stream.d.ts +1 -1
  660. package/dist/server/rpc/handlers/logging-stream.js +3 -3
  661. package/dist/server/rpc/handlers/ocr-stream.d.ts +1 -1
  662. package/dist/server/rpc/handlers/ocr-stream.js +2 -2
  663. package/dist/server/rpc/handlers/plugin-dispatch.js +9 -9
  664. package/dist/server/rpc/handlers/plugin-invoke.d.ts +1 -1
  665. package/dist/server/rpc/handlers/plugin-invoke.js +16 -16
  666. package/dist/server/rpc/handlers/provideHandler/connection.d.ts +1 -1
  667. package/dist/server/rpc/handlers/provideHandler/connection.js +16 -16
  668. package/dist/server/rpc/handlers/provideHandler/handler.d.ts +1 -1
  669. package/dist/server/rpc/handlers/provideHandler/handler.js +18 -18
  670. package/dist/server/rpc/handlers/provideHandler/proxy.d.ts +1 -1
  671. package/dist/server/rpc/handlers/provideHandler/proxy.js +11 -11
  672. package/dist/server/rpc/handlers/provideHandler.d.ts +1 -1
  673. package/dist/server/rpc/handlers/provideHandler.js +1 -1
  674. package/dist/server/rpc/handlers/rag.d.ts +1 -1
  675. package/dist/server/rpc/handlers/rag.js +50 -50
  676. package/dist/server/rpc/handlers/registry.d.ts +1 -1
  677. package/dist/server/rpc/handlers/registry.js +34 -36
  678. package/dist/server/rpc/handlers/resume.d.ts +1 -1
  679. package/dist/server/rpc/handlers/resume.js +3 -3
  680. package/dist/server/rpc/handlers/state.d.ts +1 -1
  681. package/dist/server/rpc/handlers/state.js +3 -3
  682. package/dist/server/rpc/handlers/stopProvideHandler.d.ts +1 -1
  683. package/dist/server/rpc/handlers/stopProvideHandler.js +7 -7
  684. package/dist/server/rpc/handlers/suspend.d.ts +1 -1
  685. package/dist/server/rpc/handlers/suspend.js +3 -3
  686. package/dist/server/rpc/handlers/text-to-speech-stream.d.ts +1 -1
  687. package/dist/server/rpc/handlers/text-to-speech-stream.js +2 -2
  688. package/dist/server/rpc/handlers/text-to-speech.d.ts +1 -1
  689. package/dist/server/rpc/handlers/text-to-speech.js +2 -2
  690. package/dist/server/rpc/handlers/transcribe-stream.d.ts +1 -1
  691. package/dist/server/rpc/handlers/transcribe-stream.js +2 -2
  692. package/dist/server/rpc/handlers/transcribe.d.ts +1 -1
  693. package/dist/server/rpc/handlers/transcribe.js +2 -2
  694. package/dist/server/rpc/handlers/translate.d.ts +1 -1
  695. package/dist/server/rpc/handlers/translate.js +2 -2
  696. package/dist/server/rpc/handlers/unload-model-delegated.d.ts +1 -1
  697. package/dist/server/rpc/handlers/unload-model-delegated.js +10 -10
  698. package/dist/server/rpc/handlers/unload-model.d.ts +1 -1
  699. package/dist/server/rpc/handlers/unload-model.js +10 -10
  700. package/dist/server/rpc/handlers/upscale-stream.d.ts +1 -1
  701. package/dist/server/rpc/handlers/upscale-stream.js +2 -2
  702. package/dist/server/rpc/handlers/video-stream.d.ts +1 -1
  703. package/dist/server/rpc/handlers/video-stream.js +2 -2
  704. package/dist/server/rpc/index.d.ts +2 -2
  705. package/dist/server/rpc/index.js +2 -2
  706. package/dist/server/rpc/profiling/context.d.ts +1 -1
  707. package/dist/server/rpc/profiling/context.js +9 -10
  708. package/dist/server/rpc/profiling/delegation-profiler.d.ts +2 -2
  709. package/dist/server/rpc/profiling/delegation-profiler.js +23 -24
  710. package/dist/server/rpc/profiling/index.d.ts +4 -4
  711. package/dist/server/rpc/profiling/index.js +4 -4
  712. package/dist/server/rpc/profiling/operation-metrics.d.ts +2 -2
  713. package/dist/server/rpc/profiling/operation-metrics.js +102 -102
  714. package/dist/server/rpc/profiling/operation-wrappers.d.ts +1 -1
  715. package/dist/server/rpc/profiling/operation-wrappers.js +16 -14
  716. package/dist/server/rpc/profiling/profiler.d.ts +2 -2
  717. package/dist/server/rpc/profiling/profiler.js +9 -13
  718. package/dist/server/rpc/rpc-utils.js +1 -4
  719. package/dist/server/rpc/transport-selector.d.ts +1 -1
  720. package/dist/server/rpc/transport-selector.js +4 -4
  721. package/dist/server/utils/archive.js +27 -29
  722. package/dist/server/utils/audio/decoder.d.ts +2 -2
  723. package/dist/server/utils/audio/decoder.js +11 -11
  724. package/dist/server/utils/cache/auto-history.d.ts +1 -1
  725. package/dist/server/utils/cache/auto-history.js +5 -5
  726. package/dist/server/utils/cache/paths.d.ts +2 -2
  727. package/dist/server/utils/cache/paths.js +14 -14
  728. package/dist/server/utils/checksum.d.ts +1 -1
  729. package/dist/server/utils/checksum.js +10 -12
  730. package/dist/server/utils/clear-storage.d.ts +1 -1
  731. package/dist/server/utils/clear-storage.js +8 -11
  732. package/dist/server/utils/completion-normalizer.d.ts +1 -1
  733. package/dist/server/utils/completion-normalizer.js +106 -113
  734. package/dist/server/utils/config-transform.d.ts +1 -1
  735. package/dist/server/utils/config-transform.js +2 -2
  736. package/dist/server/utils/expand-gguf-shards.js +4 -4
  737. package/dist/server/utils/formatting.js +6 -12
  738. package/dist/server/utils/gguf-tensor-extractor.js +17 -21
  739. package/dist/server/utils/index.d.ts +11 -11
  740. package/dist/server/utils/index.js +11 -11
  741. package/dist/server/utils/multi-gpu-mobile.js +1 -1
  742. package/dist/server/utils/path-security.d.ts +1 -1
  743. package/dist/server/utils/path-security.js +6 -6
  744. package/dist/server/utils/qvac-paths.js +3 -3
  745. package/dist/server/utils/response-format.d.ts +1 -1
  746. package/dist/server/utils/response-format.js +4 -4
  747. package/dist/server/utils/shard-utils.d.ts +1 -1
  748. package/dist/server/utils/shard-utils.js +14 -16
  749. package/dist/server/utils/tool-integration.d.ts +1 -1
  750. package/dist/server/utils/tool-integration.js +5 -9
  751. package/dist/server/utils/tools/dialect.d.ts +1 -1
  752. package/dist/server/utils/tools/dialect.js +7 -7
  753. package/dist/server/utils/tools/index.d.ts +2 -2
  754. package/dist/server/utils/tools/index.js +2 -2
  755. package/dist/server/utils/tools/parser.d.ts +1 -1
  756. package/dist/server/utils/tools/parser.js +14 -14
  757. package/dist/server/utils/tools/parsers/gemma4native.d.ts +2 -2
  758. package/dist/server/utils/tools/parsers/gemma4native.js +13 -8
  759. package/dist/server/utils/tools/parsers/harmony.d.ts +2 -2
  760. package/dist/server/utils/tools/parsers/harmony.js +9 -11
  761. package/dist/server/utils/tools/parsers/hermes.d.ts +2 -2
  762. package/dist/server/utils/tools/parsers/hermes.js +16 -16
  763. package/dist/server/utils/tools/parsers/json.d.ts +2 -2
  764. package/dist/server/utils/tools/parsers/json.js +14 -14
  765. package/dist/server/utils/tools/parsers/pythonic.d.ts +2 -2
  766. package/dist/server/utils/tools/parsers/pythonic.js +43 -43
  767. package/dist/server/utils/tools/parsers/qwen35.d.ts +2 -2
  768. package/dist/server/utils/tools/parsers/qwen35.js +20 -20
  769. package/dist/server/utils/tools/shared.d.ts +1 -1
  770. package/dist/server/utils/tools/shared.js +10 -12
  771. package/dist/server/utils/worker-lock.js +10 -10
  772. package/dist/server/worker-core.d.ts +1 -1
  773. package/dist/server/worker-core.js +44 -43
  774. package/dist/server/worker.js +9 -9
  775. package/dist/utils/aggregate-events.d.ts +2 -2
  776. package/dist/utils/aggregate-events.js +17 -19
  777. package/dist/utils/cache-normalize.js +1 -4
  778. package/dist/utils/encoding.js +1 -1
  779. package/dist/utils/errors-base.d.ts +1 -1
  780. package/dist/utils/errors-base.js +1 -1
  781. package/dist/utils/errors-client.d.ts +1 -1
  782. package/dist/utils/errors-client.js +5 -5
  783. package/dist/utils/errors-server.d.ts +3 -3
  784. package/dist/utils/errors-server.js +19 -18
  785. package/dist/utils/load-model-validation.js +3 -3
  786. package/dist/utils/mcp-adapter.d.ts +4 -4
  787. package/dist/utils/mcp-adapter.js +31 -38
  788. package/dist/utils/path-sanitize.js +14 -17
  789. package/dist/utils/tool-helpers.d.ts +2 -2
  790. package/dist/utils/tool-helpers.js +25 -26
  791. package/dist/utils/withTimeout.d.ts +7 -0
  792. package/dist/utils/withTimeout.js +11 -1
  793. package/dist/utils/zod-error.d.ts +1 -1
  794. package/dist/utils/zod-error.js +1 -1
  795. package/electron-forge/index.cjs +274 -317
  796. package/expo/plugins/patches/android-link.mjs +25 -30
  797. package/expo/plugins/patches/ios-link.mjs +25 -30
  798. package/package.json +17 -16
@@ -1,18 +1,18 @@
1
- import { z } from "zod";
1
+ import { z } from 'zod';
2
2
  export const unloadModelParamsSchema = z.object({
3
3
  modelId: z.string(),
4
4
  clearStorage: z.boolean().default(false),
5
- autoClose: z.boolean().optional(),
5
+ autoClose: z.boolean().optional()
6
6
  });
7
7
  export const unloadModelRequestSchema = z.object({
8
- type: z.literal("unloadModel"),
8
+ type: z.literal('unloadModel'),
9
9
  modelId: z.string(),
10
- clearStorage: z.boolean().default(false),
10
+ clearStorage: z.boolean().default(false)
11
11
  });
12
12
  export const unloadModelResponseSchema = z.object({
13
- type: z.literal("unloadModel"),
13
+ type: z.literal('unloadModel'),
14
14
  success: z.boolean(),
15
15
  error: z.string().optional(),
16
16
  hasActiveModels: z.boolean().optional(),
17
- hasActiveProviders: z.boolean().optional(),
17
+ hasActiveProviders: z.boolean().optional()
18
18
  });
@@ -1,4 +1,4 @@
1
- import { z } from "zod";
1
+ import { z } from 'zod';
2
2
  export declare const vlaConfigSchema: z.ZodObject<{
3
3
  backend: z.ZodOptional<z.ZodEnum<{
4
4
  cpu: "cpu";
@@ -1,20 +1,20 @@
1
- import { z } from "zod";
1
+ import { z } from 'zod';
2
2
  const BASE64_PATTERN = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;
3
3
  // ============================================
4
4
  // Load-time config
5
5
  // ============================================
6
6
  export const vlaConfigSchema = z.object({
7
7
  backend: z
8
- .enum(["auto", "cpu"])
8
+ .enum(['auto', 'cpu'])
9
9
  .optional()
10
- .describe("Backend selection passed to `VlaModel.load({ backend })`. " +
10
+ .describe('Backend selection passed to `VlaModel.load({ backend })`. ' +
11
11
  "`'auto'` (default) prefers an accepted GPU (Vulkan / Metal / OpenCL) and falls back to CPU. " +
12
12
  "`'cpu'` forces CPU regardless of available accelerators."),
13
13
  verbosity: z
14
14
  .number()
15
15
  .int()
16
16
  .optional()
17
- .describe("Native log verbosity forwarded to the addon (0=ERROR, 1=WARN, 2=INFO, 3=DEBUG)."),
17
+ .describe('Native log verbosity forwarded to the addon (0=ERROR, 1=WARN, 2=INFO, 3=DEBUG).')
18
18
  });
19
19
  // ============================================
20
20
  // Hparams (returned by the addon after load)
@@ -31,16 +31,16 @@ export const vlaHparamsSchema = z.object({
31
31
  .int()
32
32
  .positive()
33
33
  .optional()
34
- .describe("Number of camera views the model expects (2 for SmolVLA, 3 for π₀.₅). " +
35
- "Pass exactly this many preprocessed frames in `images`. Optional for " +
36
- "back-compat — older addon builds may omit it."),
34
+ .describe('Number of camera views the model expects (2 for SmolVLA, 3 for π₀.₅). ' +
35
+ 'Pass exactly this many preprocessed frames in `images`. Optional for ' +
36
+ 'back-compat — older addon builds may omit it.'),
37
37
  stateInputMode: z
38
- .enum(["continuous", "discrete"])
38
+ .enum(['continuous', 'discrete'])
39
39
  .optional()
40
40
  .describe("How the robot state is consumed. `'continuous'` (SmolVLA): the `state` " +
41
41
  "Float32Array is projected by an in-model linear layer. `'discrete'` " +
42
- "(π₀.₅): the state is tokenised into the language prompt and the `state` " +
43
- "buffer is ignored — pass an empty `Float32Array(0)`. Optional for back-compat."),
42
+ '(π₀.₅): the state is tokenised into the language prompt and the `state` ' +
43
+ 'buffer is ignored — pass an empty `Float32Array(0)`. Optional for back-compat.')
44
44
  });
45
45
  // ============================================
46
46
  // Stats
@@ -59,7 +59,7 @@ export const vlaStatsSchema = z.object({
59
59
  backendDevice: z
60
60
  .number()
61
61
  .optional()
62
- .describe("0 = CPU backend, 1 = GPU backend (Vulkan / Metal / OpenCL)."),
62
+ .describe('0 = CPU backend, 1 = GPU backend (Vulkan / Metal / OpenCL).')
63
63
  });
64
64
  // ============================================
65
65
  // Run request / response (wire format)
@@ -70,62 +70,62 @@ export const vlaStatsSchema = z.object({
70
70
  // and handle the encoding internally.
71
71
  // ============================================
72
72
  export const vlaRunRequestSchema = z.object({
73
- type: z.literal("vlaRun"),
73
+ type: z.literal('vlaRun'),
74
74
  modelId: z.string(),
75
75
  images: z
76
76
  .array(z.string().min(1).regex(BASE64_PATTERN))
77
77
  .min(1)
78
- .describe("Base64-encoded preprocessed images. Each entry is the underlying " +
79
- "ArrayBuffer of a `Float32Array` produced by `vlaPreprocessImage(...)`. " +
80
- "Length per image must equal `3 * imgWidth * imgHeight`."),
78
+ .describe('Base64-encoded preprocessed images. Each entry is the underlying ' +
79
+ 'ArrayBuffer of a `Float32Array` produced by `vlaPreprocessImage(...)`. ' +
80
+ 'Length per image must equal `3 * imgWidth * imgHeight`.'),
81
81
  imgWidth: z.number().int().positive(),
82
82
  imgHeight: z.number().int().positive(),
83
83
  state: z
84
84
  .string()
85
85
  .regex(BASE64_PATTERN)
86
- .describe("Base64-encoded `Float32Array`. For continuous-state models (SmolVLA) " +
87
- "this is length `hparams.maxStateDim` — use " +
88
- "`vlaPadState(state, hparams.maxStateDim)` to zero-pad. For " +
86
+ .describe('Base64-encoded `Float32Array`. For continuous-state models (SmolVLA) ' +
87
+ 'this is length `hparams.maxStateDim` — use ' +
88
+ '`vlaPadState(state, hparams.maxStateDim)` to zero-pad. For ' +
89
89
  "discrete-state models (π₀.₅, `stateInputMode: 'discrete'`) the state " +
90
- "is tokenised into the prompt and this buffer is ignored — encode an " +
91
- "empty `Float32Array(0)` (which is the empty string)."),
90
+ 'is tokenised into the prompt and this buffer is ignored — encode an ' +
91
+ 'empty `Float32Array(0)` (which is the empty string).'),
92
92
  tokens: z
93
93
  .string()
94
94
  .min(1)
95
95
  .regex(BASE64_PATTERN)
96
- .describe("Base64-encoded `Int32Array` of length `hparams.tokenizerMaxLength`."),
96
+ .describe('Base64-encoded `Int32Array` of length `hparams.tokenizerMaxLength`.'),
97
97
  mask: z
98
98
  .string()
99
99
  .min(1)
100
100
  .regex(BASE64_PATTERN)
101
- .describe("Base64-encoded `Uint8Array` of length `hparams.tokenizerMaxLength`."),
101
+ .describe('Base64-encoded `Uint8Array` of length `hparams.tokenizerMaxLength`.'),
102
102
  noise: z
103
103
  .string()
104
104
  .min(1)
105
105
  .regex(BASE64_PATTERN)
106
106
  .optional()
107
- .describe("Optional base64-encoded `Float32Array` of length " +
108
- "`hparams.chunkSize * hparams.maxActionDim`. When omitted the addon " +
109
- "samples its own prior."),
107
+ .describe('Optional base64-encoded `Float32Array` of length ' +
108
+ '`hparams.chunkSize * hparams.maxActionDim`. When omitted the addon ' +
109
+ 'samples its own prior.')
110
110
  });
111
111
  export const vlaRunResponseSchema = z.object({
112
112
  actions: z
113
113
  .string()
114
114
  .min(1)
115
115
  .regex(BASE64_PATTERN)
116
- .describe("Base64-encoded `Float32Array` of length `hparams.chunkSize * hparams.actionDim`."),
116
+ .describe('Base64-encoded `Float32Array` of length `hparams.chunkSize * hparams.actionDim`.'),
117
117
  actionDim: z.number().int().positive(),
118
118
  chunkSize: z.number().int().positive(),
119
- stats: vlaStatsSchema.optional(),
119
+ stats: vlaStatsSchema.optional()
120
120
  });
121
121
  // ============================================
122
122
  // Hparams request / response (plugin handler)
123
123
  // ============================================
124
124
  export const vlaHparamsRequestSchema = z.object({
125
- type: z.literal("vlaHparams"),
126
- modelId: z.string(),
125
+ type: z.literal('vlaHparams'),
126
+ modelId: z.string()
127
127
  });
128
128
  export const vlaHparamsResponseSchema = z.object({
129
129
  hparams: vlaHparamsSchema,
130
- backendName: z.string().nullable(),
130
+ backendName: z.string().nullable()
131
131
  });
@@ -1,19 +1,18 @@
1
- import { readdirSync } from "fs";
2
- import { join, dirname } from "path";
3
- import { spawnSync } from "child_process";
4
- import { fileURLToPath } from "url";
1
+ import { readdirSync } from 'fs';
2
+ import { join, dirname } from 'path';
3
+ import { spawnSync } from 'child_process';
4
+ import { fileURLToPath } from 'url';
5
5
  const __dirname = dirname(fileURLToPath(import.meta.url));
6
- const testDir = join(__dirname, "..", "test", "unit");
7
- const testFiles = readdirSync(testDir).filter((f) => (f.startsWith("path-traversal") || f.startsWith("path-security")) &&
8
- f.endsWith(".test.ts"));
6
+ const testDir = join(__dirname, '..', 'test', 'unit');
7
+ const testFiles = readdirSync(testDir).filter((f) => (f.startsWith('path-traversal') || f.startsWith('path-security')) && f.endsWith('.test.ts'));
9
8
  if (testFiles.length === 0) {
10
- console.log("No security tests found.");
9
+ console.log('No security tests found.');
11
10
  process.exit(0);
12
11
  }
13
12
  let hasFailure = false;
14
13
  for (const file of testFiles) {
15
- const result = spawnSync("bun", ["run", join(testDir, file)], {
16
- stdio: "inherit",
14
+ const result = spawnSync('bun', ['run', join(testDir, file)], {
15
+ stdio: 'inherit'
17
16
  });
18
17
  if (result.status !== 0) {
19
18
  hasFailure = true;
@@ -1,9 +1,9 @@
1
- import { readFileSync, readdirSync } from "fs";
2
- import { join, dirname } from "path";
3
- import { spawnSync } from "child_process";
4
- import { fileURLToPath } from "url";
1
+ import { readFileSync, readdirSync } from 'fs';
2
+ import { join, dirname } from 'path';
3
+ import { spawnSync } from 'child_process';
4
+ import { fileURLToPath } from 'url';
5
5
  const __dirname = dirname(fileURLToPath(import.meta.url));
6
- const testDir = join(__dirname, "..", "test", "unit");
6
+ const testDir = join(__dirname, '..', 'test', 'unit');
7
7
  function collectTestFiles(dir) {
8
8
  const files = [];
9
9
  for (const entry of readdirSync(dir, { withFileTypes: true })) {
@@ -11,7 +11,7 @@ function collectTestFiles(dir) {
11
11
  if (entry.isDirectory()) {
12
12
  files.push(...collectTestFiles(fullPath));
13
13
  }
14
- else if (entry.isFile() && entry.name.endsWith(".test.ts")) {
14
+ else if (entry.isFile() && entry.name.endsWith('.test.ts')) {
15
15
  files.push(fullPath);
16
16
  }
17
17
  }
@@ -20,14 +20,13 @@ function collectTestFiles(dir) {
20
20
  const testFiles = collectTestFiles(testDir);
21
21
  let hasFailure = false;
22
22
  function usesNodeTestRunner(filePath) {
23
- const source = readFileSync(filePath, "utf8");
24
- return (source.includes("from 'node:test'") ||
25
- source.includes('from "node:test"'));
23
+ const source = readFileSync(filePath, 'utf8');
24
+ return source.includes("from 'node:test'") || source.includes('from "node:test"');
26
25
  }
27
26
  for (const file of testFiles) {
28
- const args = usesNodeTestRunner(file) ? ["test", file] : ["run", file];
29
- const result = spawnSync("bun", args, {
30
- stdio: "inherit",
27
+ const args = usesNodeTestRunner(file) ? ['test', file] : ['run', file];
28
+ const result = spawnSync('bun', args, {
29
+ stdio: 'inherit'
31
30
  });
32
31
  if (result.status !== 0) {
33
32
  hasFailure = true;
@@ -1,5 +1,5 @@
1
- import { withTimeout } from "../../utils/withTimeout.js";
2
- import { getServerLogger } from "../../logging/index.js";
1
+ import { withTimeout } from '../../utils/withTimeout.js';
2
+ import { getServerLogger } from '../../logging/index.js';
3
3
  const logger = getServerLogger();
4
4
  export const DHT_BOOTSTRAP_WAIT_CAP_MS = 5000;
5
5
  // A cold routing table makes findPeer return empty -> spurious PEER_NOT_FOUND,
@@ -7,9 +7,7 @@ export const DHT_BOOTSTRAP_WAIT_CAP_MS = 5000;
7
7
  export async function ensureDhtBootstrapped(dht, timeout) {
8
8
  if (dht.bootstrapped)
9
9
  return;
10
- const cap = timeout === undefined
11
- ? DHT_BOOTSTRAP_WAIT_CAP_MS
12
- : Math.min(timeout, DHT_BOOTSTRAP_WAIT_CAP_MS);
10
+ const cap = timeout === undefined ? DHT_BOOTSTRAP_WAIT_CAP_MS : Math.min(timeout, DHT_BOOTSTRAP_WAIT_CAP_MS);
13
11
  try {
14
12
  await withTimeout(dht.fullyBootstrapped(), cap);
15
13
  }
@@ -21,22 +19,18 @@ export async function ensureDhtBootstrapped(dht, timeout) {
21
19
  // on the DHT vs found-but-un-holepunchable. Relays only bridge after a peer is
22
20
  // found, so they can never resolve a PEER_NOT_FOUND.
23
21
  export function describeConnectFailure(error, publicKey, relayCount) {
24
- const code = typeof error === "object" && error !== null && "code" in error
25
- ? String(error.code)
26
- : undefined;
27
- const relayNote = relayCount > 0
28
- ? `${relayCount} swarm relay(s) configured`
29
- : "no swarm relays configured";
22
+ const code = typeof error === 'object' && error !== null && 'code' in error ? String(error.code) : undefined;
23
+ const relayNote = relayCount > 0 ? `${relayCount} swarm relay(s) configured` : 'no swarm relays configured';
30
24
  switch (code) {
31
- case "PEER_NOT_FOUND":
25
+ case 'PEER_NOT_FOUND':
32
26
  return `provider ${publicKey} was not found on the DHT — it may be offline, still bootstrapping, or unreachable from this network. Relays bridge a connection only after the provider is located, so they cannot find an unannounced provider (${relayNote}).`;
33
- case "PEER_CONNECTION_FAILED":
34
- case "CANNOT_HOLEPUNCH":
35
- case "REMOTE_NOT_HOLEPUNCHABLE":
36
- case "REMOTE_NOT_HOLEPUNCHING":
37
- case "HOLEPUNCH_ABORTED":
38
- case "HOLEPUNCH_PROBE_TIMEOUT":
39
- case "HOLEPUNCH_DOUBLE_RANDOMIZED_NATS":
27
+ case 'PEER_CONNECTION_FAILED':
28
+ case 'CANNOT_HOLEPUNCH':
29
+ case 'REMOTE_NOT_HOLEPUNCHABLE':
30
+ case 'REMOTE_NOT_HOLEPUNCHING':
31
+ case 'HOLEPUNCH_ABORTED':
32
+ case 'HOLEPUNCH_PROBE_TIMEOUT':
33
+ case 'HOLEPUNCH_DOUBLE_RANDOMIZED_NATS':
40
34
  return `provider ${publicKey} was found but a connection could not be established (NAT/holepunch failure: ${code}; ${relayNote}).`;
41
35
  default:
42
36
  return error instanceof Error ? error.message : String(error);
@@ -1,5 +1,5 @@
1
- import RPC from "bare-rpc";
2
- import type { RPCOptions } from "../../schemas/index";
1
+ import RPC from 'bare-rpc';
2
+ import type { RPCOptions } from '../../schemas/index';
3
3
  export declare function getRPC(publicKey: string, options?: RPCOptions): Promise<RPC>;
4
4
  /**
5
5
  * Remove a stale RPC connection for a peer.
@@ -1,14 +1,14 @@
1
- import { getSwarm } from "./hyperswarm.js";
2
- import { getSDKConfig } from "./registry/config-registry.js";
3
- import { ensureDhtBootstrapped, describeConnectFailure, } from "./delegate-connect-diagnostics.js";
4
- import RPC from "bare-rpc";
5
- import { withTimeout } from "../../utils/withTimeout.js";
6
- import { DelegateConnectionFailedError } from "../../utils/errors-server.js";
7
- import { getServerLogger } from "../../logging/index.js";
8
- import { nowMs } from "../../profiling/index.js";
9
- import { cacheDelegationConnectionTime, clearPeerConnectionTracking, } from "../rpc/profiling/delegation-profiler.js";
10
- import { getNextCommandId } from "../rpc/rpc-utils.js";
11
- import { Buffer } from "bare-buffer";
1
+ import { getSwarm } from './hyperswarm.js';
2
+ import { getSDKConfig } from './registry/config-registry.js';
3
+ import { ensureDhtBootstrapped, describeConnectFailure } from './delegate-connect-diagnostics.js';
4
+ import RPC from 'bare-rpc';
5
+ import { withTimeout } from '../../utils/withTimeout.js';
6
+ import { DelegateConnectionFailedError } from '../../utils/errors-server.js';
7
+ import { getServerLogger } from '../../logging/index.js';
8
+ import { nowMs } from '../../profiling/index.js';
9
+ import { cacheDelegationConnectionTime, clearPeerConnectionTracking } from '../rpc/profiling/delegation-profiler.js';
10
+ import { getNextCommandId } from '../rpc/rpc-utils.js';
11
+ import { Buffer } from 'bare-buffer';
12
12
  const logger = getServerLogger();
13
13
  const activeRPCs = new Map();
14
14
  const activeConnections = new Map();
@@ -22,27 +22,27 @@ function getConfiguredRelayCount() {
22
22
  return getSDKConfig().swarmRelays?.length ?? 0;
23
23
  }
24
24
  function isHeartbeatResponse(payload) {
25
- return (typeof payload === "object" &&
25
+ return (typeof payload === 'object' &&
26
26
  payload !== null &&
27
- payload["type"] === "heartbeat");
27
+ payload['type'] === 'heartbeat');
28
28
  }
29
29
  async function isRPCConnectionHealthy(rpc, timeout = HEALTH_CHECK_TIMEOUT_MS) {
30
30
  try {
31
31
  const req = rpc.request(getNextCommandId());
32
- req.send(JSON.stringify({ type: "heartbeat" }), "utf-8");
33
- const response = await withTimeout(req.reply("utf-8"), timeout);
34
- const payload = JSON.parse(response?.toString() || "{}");
32
+ req.send(JSON.stringify({ type: 'heartbeat' }), 'utf-8');
33
+ const response = await withTimeout(req.reply('utf-8'), timeout);
34
+ const payload = JSON.parse(response?.toString() || '{}');
35
35
  return isHeartbeatResponse(payload);
36
36
  }
37
37
  catch (error) {
38
- logger.debug("RPC health check failed", { error });
38
+ logger.debug('RPC health check failed', { error });
39
39
  return false;
40
40
  }
41
41
  }
42
42
  function trackConnection(publicKey, conn, rpc) {
43
43
  activeRPCs.set(publicKey, rpc);
44
44
  activeConnections.set(publicKey, conn);
45
- conn.on("close", () => {
45
+ conn.on('close', () => {
46
46
  logger.debug(`Connection closed for peer: ${publicKey}`);
47
47
  if (activeConnections.get(publicKey) === conn) {
48
48
  activeConnections.delete(publicKey);
@@ -50,7 +50,7 @@ function trackConnection(publicKey, conn, rpc) {
50
50
  clearPeerConnectionTracking(publicKey);
51
51
  }
52
52
  });
53
- conn.on("error", (err) => {
53
+ conn.on('error', (err) => {
54
54
  logger.error(`Connection error for peer ${publicKey}:`, err);
55
55
  if (activeConnections.get(publicKey) === conn) {
56
56
  activeConnections.delete(publicKey);
@@ -67,7 +67,7 @@ async function closeConnection(publicKey) {
67
67
  // Wait for the close event before returning so any pending cleanup
68
68
  // in the underlying DHT stream completes before we reconnect.
69
69
  await new Promise((resolve) => {
70
- existingConnection.once("close", () => resolve());
70
+ existingConnection.once('close', () => resolve());
71
71
  existingConnection.destroy();
72
72
  });
73
73
  if (activeConnections.get(publicKey) === existingConnection) {
@@ -81,12 +81,10 @@ async function closeConnection(publicKey) {
81
81
  // swarm.join()/flush() and let the DHT route by public key.
82
82
  function openDhtConnection(publicKey) {
83
83
  const swarm = getSwarm();
84
- const relayThrough = swarm.relayThrough
85
- ? swarm.relayThrough(false, swarm)
86
- : null;
87
- return swarm.dht.connect(Buffer.from(publicKey, "hex"), {
84
+ const relayThrough = swarm.relayThrough ? swarm.relayThrough(false, swarm) : null;
85
+ return swarm.dht.connect(Buffer.from(publicKey, 'hex'), {
88
86
  keyPair: swarm.keyPair,
89
- relayThrough,
87
+ relayThrough
90
88
  });
91
89
  }
92
90
  // Resolve when the DHT connection emits "open"; reject promptly on "error"
@@ -95,9 +93,9 @@ function openDhtConnection(publicKey) {
95
93
  function waitForOpen(conn, timeout) {
96
94
  const opened = new Promise((resolve, reject) => {
97
95
  const cleanup = () => {
98
- conn.removeListener("open", onOpen);
99
- conn.removeListener("error", onError);
100
- conn.removeListener("close", onClose);
96
+ conn.removeListener('open', onOpen);
97
+ conn.removeListener('error', onError);
98
+ conn.removeListener('close', onClose);
101
99
  };
102
100
  const onOpen = () => {
103
101
  cleanup();
@@ -109,11 +107,11 @@ function waitForOpen(conn, timeout) {
109
107
  };
110
108
  const onClose = () => {
111
109
  cleanup();
112
- reject(new DelegateConnectionFailedError("Connection closed before open (peer unreachable or rejected by firewall)"));
110
+ reject(new DelegateConnectionFailedError('Connection closed before open (peer unreachable or rejected by firewall)'));
113
111
  };
114
- conn.once("open", onOpen);
115
- conn.once("error", onError);
116
- conn.once("close", onClose);
112
+ conn.once('open', onOpen);
113
+ conn.once('error', onError);
114
+ conn.once('close', onClose);
117
115
  });
118
116
  return withTimeout(opened, timeout);
119
117
  }
@@ -142,7 +140,7 @@ async function ensureRPCConnection(publicKey, timeout, healthCheckTimeout) {
142
140
  let conn;
143
141
  const relayCount = getConfiguredRelayCount();
144
142
  try {
145
- logger.info(`🔗 Establishing direct DHT connection to peer: ${publicKey}${timeout ? `, timeout: ${timeout}ms` : ""} (${relayCount} swarm relay(s) configured)`);
143
+ logger.info(`🔗 Establishing direct DHT connection to peer: ${publicKey}${timeout ? `, timeout: ${timeout}ms` : ''} (${relayCount} swarm relay(s) configured)`);
146
144
  await ensureDhtBootstrapped(getSwarm().dht, getRemainingTimeout());
147
145
  conn = openDhtConnection(publicKey);
148
146
  await waitForOpen(conn, getRemainingTimeout());
@@ -160,7 +158,7 @@ async function ensureRPCConnection(publicKey, timeout, healthCheckTimeout) {
160
158
  conn.destroy();
161
159
  }
162
160
  cleanupStaleConnection(publicKey);
163
- logger.error("Failed to establish RPC connection:", error);
161
+ logger.error('Failed to establish RPC connection:', error);
164
162
  throw new DelegateConnectionFailedError(`RPC connection failed: ${describeConnectFailure(error, publicKey, relayCount)}`, error);
165
163
  }
166
164
  }
@@ -1,6 +1,6 @@
1
- import Hyperswarm from "hyperswarm";
2
- import { type FirewallConfig } from "../../schemas/provide";
3
- export declare function getSwarm({ firewallConfig, }?: {
1
+ import Hyperswarm from 'hyperswarm';
2
+ import { type FirewallConfig } from '../../schemas/provide';
3
+ export declare function getSwarm({ firewallConfig }?: {
4
4
  firewallConfig?: FirewallConfig | undefined;
5
5
  }): Hyperswarm;
6
6
  export declare function registerProvider(): void;
@@ -1,16 +1,16 @@
1
- import env from "bare-env";
2
- import Hyperswarm from "hyperswarm";
3
- import crypto from "bare-crypto";
4
- import { envSchema } from "../../schemas/provide.js";
5
- import { getSDKConfig } from "./registry/config-registry.js";
6
- import { registerSwarm, unregisterSwarm, } from "./runtime-lifecycle.js";
7
- import { getServerLogger } from "../../logging/index.js";
8
- import { Buffer } from "bare-buffer";
1
+ import env from 'bare-env';
2
+ import Hyperswarm from 'hyperswarm';
3
+ import crypto from 'bare-crypto';
4
+ import { envSchema } from '../../schemas/provide.js';
5
+ import { getSDKConfig } from './registry/config-registry.js';
6
+ import { registerSwarm, unregisterSwarm } from './runtime-lifecycle.js';
7
+ import { getServerLogger } from '../../logging/index.js';
8
+ import { Buffer } from 'bare-buffer';
9
9
  const logger = getServerLogger();
10
10
  function getHyperswarmSeedBuffer() {
11
11
  const parsedEnv = envSchema.safeParse(env);
12
12
  if (parsedEnv.success) {
13
- return Buffer.from(parsedEnv.data.QVAC_HYPERSWARM_SEED, "hex");
13
+ return Buffer.from(parsedEnv.data.QVAC_HYPERSWARM_SEED, 'hex');
14
14
  }
15
15
  else {
16
16
  logger.info(`🎲 No seed provided, generating random seed (provider will have random identity)`);
@@ -24,8 +24,8 @@ function createFirewallFunction(config) {
24
24
  const { mode, publicKeys } = config;
25
25
  const publicKeySet = new Set(publicKeys);
26
26
  return (remotePublicKey) => {
27
- const remoteKeyHex = remotePublicKey.toString("hex");
28
- if (mode === "allow") {
27
+ const remoteKeyHex = remotePublicKey.toString('hex');
28
+ if (mode === 'allow') {
29
29
  const allowed = publicKeySet.has(remoteKeyHex);
30
30
  if (!allowed) {
31
31
  logger.debug(`🚫 Firewall: Denied connection from ${remoteKeyHex.substring(0, 16)}... (not in allowlist)`);
@@ -56,7 +56,7 @@ function createSwarm(firewallConfig) {
56
56
  if (!relayPublicKeys || relayPublicKeys.length === 0) {
57
57
  return null;
58
58
  }
59
- return relayPublicKeys.map((key) => Buffer.from(key, "hex"));
59
+ return relayPublicKeys.map((key) => Buffer.from(key, 'hex'));
60
60
  };
61
61
  const swarmOptions = { seed, firewall, relayThrough: getRelays };
62
62
  return new Hyperswarm(swarmOptions);
@@ -67,12 +67,12 @@ let swarm = null;
67
67
  // calls and to avoid ever reporting "no active providers" while one is still
68
68
  // running.
69
69
  let activeProviderCount = 0;
70
- export function getSwarm({ firewallConfig, } = {}) {
70
+ export function getSwarm({ firewallConfig } = {}) {
71
71
  if (swarm) {
72
72
  return swarm;
73
73
  }
74
74
  swarm = createSwarm(firewallConfig);
75
- registerSwarm(swarm, { label: "shared-swarm", createdAt: Date.now() });
75
+ registerSwarm(swarm, { label: 'shared-swarm', createdAt: Date.now() });
76
76
  return swarm;
77
77
  }
78
78
  export function registerProvider() {
@@ -1,4 +1,4 @@
1
- import { type BciStreamOpts, type BciTranscribeParams, type TranscribeSegment, type TranscribeStats } from "../../../schemas/index";
1
+ import { type BciStreamOpts, type BciTranscribeParams, type TranscribeSegment, type TranscribeStats } from '../../../schemas/index';
2
2
  type BciTranscribeReturn = {
3
3
  modelExecutionMs: number;
4
4
  stats?: TranscribeStats;