@qvac/sdk 0.14.1 → 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 (796) 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.js +4 -4
  107. package/dist/commands/bundle/index.js +45 -47
  108. package/dist/commands/bundle/manifest.d.ts +1 -1
  109. package/dist/commands/bundle/manifest.js +44 -46
  110. package/dist/commands/bundle/plugins.d.ts +2 -2
  111. package/dist/commands/bundle/plugins.js +7 -7
  112. package/dist/commands/bundle/resolve-sdk-import.js +6 -13
  113. package/dist/commands/index.d.ts +4 -4
  114. package/dist/commands/index.js +2 -2
  115. package/dist/commands/verify/abi.d.ts +9 -9
  116. package/dist/commands/verify/abi.js +31 -31
  117. package/dist/commands/verify/addon-source.d.ts +1 -1
  118. package/dist/commands/verify/addon-source.js +13 -14
  119. package/dist/commands/verify/bundle-source.d.ts +1 -1
  120. package/dist/commands/verify/bundle-source.js +7 -7
  121. package/dist/commands/verify/index.d.ts +3 -3
  122. package/dist/commands/verify/index.js +18 -17
  123. package/dist/commands/verify/node-modules-source.d.ts +1 -1
  124. package/dist/commands/verify/node-modules-source.js +11 -11
  125. package/dist/commands/verify/prebuilds.d.ts +3 -3
  126. package/dist/commands/verify/prebuilds.js +8 -8
  127. package/dist/constants/audio.d.ts +1 -1
  128. package/dist/constants/audio.js +1 -1
  129. package/dist/constants/index.d.ts +2 -2
  130. package/dist/constants/index.js +2 -2
  131. package/dist/constants/registry.js +1 -1
  132. package/dist/examples/audio/mic-input.d.ts +1 -1
  133. package/dist/examples/audio/mic-input.js +31 -31
  134. package/dist/examples/batch-completion.d.ts +38 -0
  135. package/dist/examples/batch-completion.js +100 -0
  136. package/dist/examples/bci/bci-filesystem-streaming.js +20 -20
  137. package/dist/examples/bci/bci-filesystem.js +17 -17
  138. package/dist/examples/cache-management.js +32 -32
  139. package/dist/examples/cancel-by-request-id.js +11 -11
  140. package/dist/examples/classification/classify-image.js +5 -5
  141. package/dist/examples/completion-events.js +16 -18
  142. package/dist/examples/completion-stop-reason.js +13 -13
  143. package/dist/examples/concurrent-completion-collision.js +20 -20
  144. package/dist/examples/config/blind-relay/blind-relay.config.js +4 -4
  145. package/dist/examples/config/default/default.config.js +2 -2
  146. package/dist/examples/config/plugins/plugins.config.js +2 -2
  147. package/dist/examples/config-reload.js +14 -14
  148. package/dist/examples/default-config-usage.js +10 -13
  149. package/dist/examples/delegated-inference/composite.js +23 -23
  150. package/dist/examples/delegated-inference/consumer-profiled.js +19 -19
  151. package/dist/examples/delegated-inference/consumer.js +11 -11
  152. package/dist/examples/delegated-inference/provider.js +24 -24
  153. package/dist/examples/diffusion-esrgan-upscale.js +19 -19
  154. package/dist/examples/diffusion-flux2-klein-img2img.js +17 -17
  155. package/dist/examples/diffusion-flux2-klein.js +14 -14
  156. package/dist/examples/diffusion-img2img.js +13 -13
  157. package/dist/examples/diffusion-img2vid.js +22 -23
  158. package/dist/examples/diffusion-simple.js +7 -7
  159. package/dist/examples/diffusion-txt2img.js +13 -14
  160. package/dist/examples/diffusion-txt2vid.js +18 -18
  161. package/dist/examples/download-with-blind-relays.js +7 -8
  162. package/dist/examples/download-with-cancel.js +9 -9
  163. package/dist/examples/embed-multi-gpu.js +9 -9
  164. package/dist/examples/embed-p2p.js +24 -24
  165. package/dist/examples/finetune/llamacpp-finetune.js +21 -21
  166. package/dist/examples/kv-cache-cleanup.js +34 -34
  167. package/dist/examples/kv-cache-custom-key.js +30 -30
  168. package/dist/examples/kv-cache-example.js +18 -20
  169. package/dist/examples/llamacpp-cache.js +33 -33
  170. package/dist/examples/llamacpp-dynamic-tools.js +38 -38
  171. package/dist/examples/llamacpp-filesystem.js +13 -15
  172. package/dist/examples/llamacpp-http.js +12 -14
  173. package/dist/examples/llamacpp-multi-gpu.js +12 -12
  174. package/dist/examples/llamacpp-multimodal.js +16 -16
  175. package/dist/examples/llamacpp-p2p.js +11 -11
  176. package/dist/examples/llamacpp-sharded.js +12 -12
  177. package/dist/examples/llamacpp-structured-output.js +37 -37
  178. package/dist/examples/logging-file-transport.js +19 -21
  179. package/dist/examples/logging-global.js +8 -8
  180. package/dist/examples/logging-streaming.js +16 -18
  181. package/dist/examples/mcp-websearch.js +44 -44
  182. package/dist/examples/multi-model-demo.js +33 -33
  183. package/dist/examples/ocr-fasttext.js +17 -17
  184. package/dist/examples/parallel-download.js +11 -13
  185. package/dist/examples/plugins.js +43 -43
  186. package/dist/examples/profiling/basic.js +34 -36
  187. package/dist/examples/profiling/per-call.js +16 -16
  188. package/dist/examples/quickstart.bare.js +4 -6
  189. package/dist/examples/quickstart.js +7 -7
  190. package/dist/examples/rag/rag-chromadb.js +26 -26
  191. package/dist/examples/rag/rag-hyperdb/cancellation.js +19 -20
  192. package/dist/examples/rag/rag-hyperdb/ingest.js +19 -19
  193. package/dist/examples/rag/rag-hyperdb/pipeline.js +26 -26
  194. package/dist/examples/rag/rag-hyperdb/workspaces.js +46 -46
  195. package/dist/examples/rag/rag-lancedb.js +29 -32
  196. package/dist/examples/rag/rag-sqlite.js +25 -25
  197. package/dist/examples/registry-query.js +15 -15
  198. package/dist/examples/seed-p2p.js +8 -8
  199. package/dist/examples/suspend-resume.js +20 -20
  200. package/dist/examples/tools/llamacpp-native-tools.js +25 -25
  201. package/dist/examples/tools/llamacpp-tools-gemma4.js +14 -14
  202. package/dist/examples/tools/llamacpp-tools-harmony-multiturn.js +15 -15
  203. package/dist/examples/tools/llamacpp-tools-pythonic.js +15 -15
  204. package/dist/examples/tools/llamacpp-tools-qwen35.js +14 -14
  205. package/dist/examples/tools/shared.d.ts +2 -2
  206. package/dist/examples/tools/shared.js +17 -17
  207. package/dist/examples/transcription/parakeet-ctc-filesystem.js +12 -12
  208. package/dist/examples/transcription/parakeet-microphone-record.js +19 -19
  209. package/dist/examples/transcription/parakeet-microphone-stream.js +23 -23
  210. package/dist/examples/transcription/parakeet-sortformer-streaming.js +18 -28
  211. package/dist/examples/transcription/parakeet-sortformer.js +21 -21
  212. package/dist/examples/transcription/parakeet-tdt-filesystem.js +13 -13
  213. package/dist/examples/transcription/whispercpp-filesystem-streaming.js +34 -34
  214. package/dist/examples/transcription/whispercpp-filesystem.js +19 -19
  215. package/dist/examples/transcription/whispercpp-microphone-conversation.js +27 -27
  216. package/dist/examples/transcription/whispercpp-microphone-record.js +21 -21
  217. package/dist/examples/transcription/whispercpp-prompt.js +18 -18
  218. package/dist/examples/translation/translation-bergamot-batch.js +17 -17
  219. package/dist/examples/translation/translation-bergamot-pivot.js +16 -16
  220. package/dist/examples/translation/translation-bergamot.js +11 -11
  221. package/dist/examples/translation/translation-indic.js +10 -10
  222. package/dist/examples/translation/translation-llm-afriquegemma.js +10 -10
  223. package/dist/examples/translation/translation-llm-context.js +10 -10
  224. package/dist/examples/translation/translation-llm.js +13 -13
  225. package/dist/examples/translation/translation-stream.js +11 -11
  226. package/dist/examples/tts/chatterbox-enhanced.d.ts +2 -0
  227. package/dist/examples/tts/chatterbox-enhanced.js +55 -0
  228. package/dist/examples/tts/chatterbox-multilingual.d.ts +2 -0
  229. package/dist/examples/tts/chatterbox-multilingual.js +54 -0
  230. package/dist/examples/tts/chatterbox.js +18 -18
  231. package/dist/examples/tts/llm-to-tts-streaming.js +30 -30
  232. package/dist/examples/tts/supertonic-enhanced.d.ts +2 -0
  233. package/dist/examples/tts/supertonic-enhanced.js +57 -0
  234. package/dist/examples/tts/supertonic-multilingual.js +19 -19
  235. package/dist/examples/tts/supertonic.js +18 -18
  236. package/dist/examples/tts/utils.js +24 -32
  237. package/dist/examples/vla-pi05.js +14 -14
  238. package/dist/examples/vla-smolvla.js +14 -14
  239. package/dist/examples/voice-assistant/voice-assistant.js +46 -46
  240. package/dist/expo/plugins/find-in-ancestor-node-modules.js +3 -3
  241. package/dist/expo/plugins/get-project-root.d.ts +2 -2
  242. package/dist/expo/plugins/get-project-root.js +1 -1
  243. package/dist/expo/plugins/index.d.ts +11 -11
  244. package/dist/expo/plugins/index.js +10 -10
  245. package/dist/expo/plugins/resolve-sdk-package-dir.js +7 -11
  246. package/dist/expo/plugins/withAndroidArchitecture.d.ts +1 -1
  247. package/dist/expo/plugins/withAndroidArchitecture.js +12 -12
  248. package/dist/expo/plugins/withAndroidNdkVersion.d.ts +1 -1
  249. package/dist/expo/plugins/withAndroidNdkVersion.js +9 -9
  250. package/dist/expo/plugins/withDeviceInfo.d.ts +1 -1
  251. package/dist/expo/plugins/withDeviceInfo.js +13 -13
  252. package/dist/expo/plugins/withMobileBundle.d.ts +1 -1
  253. package/dist/expo/plugins/withMobileBundle.js +34 -42
  254. package/dist/expo/plugins/withOpenCL.d.ts +1 -1
  255. package/dist/expo/plugins/withOpenCL.js +14 -16
  256. package/dist/expo/plugins/withQvacSDK.d.ts +1 -1
  257. package/dist/expo/plugins/withQvacSDK.js +12 -12
  258. package/dist/index.d.ts +16 -16
  259. package/dist/index.js +16 -17
  260. package/dist/logging/addon.d.ts +1 -1
  261. package/dist/logging/addon.js +13 -13
  262. package/dist/logging/base-logger.d.ts +2 -2
  263. package/dist/logging/base-logger.js +6 -6
  264. package/dist/logging/client-logger.d.ts +1 -1
  265. package/dist/logging/client-logger.js +3 -3
  266. package/dist/logging/index.d.ts +9 -9
  267. package/dist/logging/index.js +8 -8
  268. package/dist/logging/logger.d.ts +1 -1
  269. package/dist/logging/logger.js +4 -4
  270. package/dist/logging/namespaces.d.ts +1 -1
  271. package/dist/logging/namespaces.js +5 -5
  272. package/dist/logging/registry.d.ts +2 -2
  273. package/dist/logging/registry.js +3 -3
  274. package/dist/logging/server-logger.d.ts +1 -1
  275. package/dist/logging/server-logger.js +2 -2
  276. package/dist/logging/stream-logger.d.ts +1 -1
  277. package/dist/logging/stream-logger.js +4 -4
  278. package/dist/logging/transport.d.ts +1 -1
  279. package/dist/logging/types.d.ts +1 -1
  280. package/dist/logging/utils.d.ts +2 -2
  281. package/dist/logging/utils.js +40 -41
  282. package/dist/models/registry/index.d.ts +1 -1
  283. package/dist/models/registry/index.js +5 -5
  284. package/dist/models/registry/models.d.ts +429 -122
  285. package/dist/models/registry/models.js +13693 -13369
  286. package/dist/models/update-models/codegen.d.ts +1 -1
  287. package/dist/models/update-models/codegen.js +8 -8
  288. package/dist/models/update-models/companions.d.ts +6 -1
  289. package/dist/models/update-models/companions.js +104 -39
  290. package/dist/models/update-models/history.d.ts +1 -1
  291. package/dist/models/update-models/history.js +11 -11
  292. package/dist/models/update-models/index.js +32 -34
  293. package/dist/models/update-models/naming.d.ts +2 -2
  294. package/dist/models/update-models/naming.js +177 -186
  295. package/dist/models/update-models/processing.d.ts +2 -2
  296. package/dist/models/update-models/processing.js +17 -19
  297. package/dist/models/update-models/registry.d.ts +2 -2
  298. package/dist/models/update-models/registry.js +9 -9
  299. package/dist/models/update-models/shards.d.ts +1 -1
  300. package/dist/models/update-models/shards.js +3 -3
  301. package/dist/models/update-models/types.d.ts +1 -1
  302. package/dist/models/update-models/utils.js +5 -5
  303. package/dist/pear/pre.js +84 -84
  304. package/dist/profiling/aggregator.d.ts +1 -1
  305. package/dist/profiling/aggregator.js +6 -6
  306. package/dist/profiling/clock.d.ts +1 -1
  307. package/dist/profiling/clock.js +10 -10
  308. package/dist/profiling/controller.d.ts +2 -2
  309. package/dist/profiling/controller.js +11 -12
  310. package/dist/profiling/envelope.d.ts +1 -1
  311. package/dist/profiling/envelope.js +4 -6
  312. package/dist/profiling/events.d.ts +2 -2
  313. package/dist/profiling/events.js +8 -10
  314. package/dist/profiling/exporters.d.ts +1 -1
  315. package/dist/profiling/exporters.js +81 -79
  316. package/dist/profiling/index.d.ts +8 -8
  317. package/dist/profiling/index.js +7 -7
  318. package/dist/profiling/model-execution.js +2 -1
  319. package/dist/profiling/ring-buffer.js +2 -2
  320. package/dist/profiling/types.d.ts +3 -3
  321. package/dist/schemas/archive.d.ts +1 -1
  322. package/dist/schemas/archive.js +8 -14
  323. package/dist/schemas/batch-completion-stream.d.ts +463 -0
  324. package/dist/schemas/batch-completion-stream.js +124 -0
  325. package/dist/schemas/bci-config.d.ts +1 -1
  326. package/dist/schemas/bci-config.js +7 -7
  327. package/dist/schemas/bci.d.ts +3 -3
  328. package/dist/schemas/bci.js +25 -31
  329. package/dist/schemas/cancel.d.ts +6 -1
  330. package/dist/schemas/cancel.js +33 -34
  331. package/dist/schemas/classification.d.ts +1 -1
  332. package/dist/schemas/classification.js +7 -7
  333. package/dist/schemas/common.d.ts +194 -25
  334. package/dist/schemas/common.js +40 -37
  335. package/dist/schemas/completion-event.d.ts +11 -8
  336. package/dist/schemas/completion-event.js +27 -26
  337. package/dist/schemas/completion-stream.d.ts +4 -3
  338. package/dist/schemas/completion-stream.js +51 -67
  339. package/dist/schemas/delegate.d.ts +1 -1
  340. package/dist/schemas/delegate.js +7 -7
  341. package/dist/schemas/delete-cache.d.ts +1 -1
  342. package/dist/schemas/delete-cache.js +8 -8
  343. package/dist/schemas/download-asset.d.ts +2 -2
  344. package/dist/schemas/download-asset.js +21 -21
  345. package/dist/schemas/embed.d.ts +3 -3
  346. package/dist/schemas/embed.js +16 -27
  347. package/dist/schemas/engine-addon-map.d.ts +2 -2
  348. package/dist/schemas/engine-addon-map.js +24 -24
  349. package/dist/schemas/error.d.ts +1 -1
  350. package/dist/schemas/error.js +12 -13
  351. package/dist/schemas/finetune.d.ts +1 -1
  352. package/dist/schemas/finetune.js +35 -41
  353. package/dist/schemas/get-loaded-model-info.d.ts +1 -1
  354. package/dist/schemas/get-loaded-model-info.js +10 -10
  355. package/dist/schemas/get-model-info.d.ts +1 -1
  356. package/dist/schemas/get-model-info.js +48 -91
  357. package/dist/schemas/heartbeat.d.ts +1 -1
  358. package/dist/schemas/heartbeat.js +6 -6
  359. package/dist/schemas/index.d.ts +52 -51
  360. package/dist/schemas/index.js +52 -51
  361. package/dist/schemas/json-schema.d.ts +1 -1
  362. package/dist/schemas/llamacpp-config.d.ts +33 -25
  363. package/dist/schemas/llamacpp-config.js +43 -30
  364. package/dist/schemas/load-model.d.ts +160 -128
  365. package/dist/schemas/load-model.js +120 -126
  366. package/dist/schemas/logging-stream.d.ts +1 -1
  367. package/dist/schemas/logging-stream.js +6 -12
  368. package/dist/schemas/mcp-adapter.d.ts +1 -1
  369. package/dist/schemas/model-src-utils.d.ts +1 -1
  370. package/dist/schemas/model-src-utils.js +13 -13
  371. package/dist/schemas/model-types.d.ts +1 -1
  372. package/dist/schemas/model-types.js +27 -27
  373. package/dist/schemas/ocr.d.ts +1 -1
  374. package/dist/schemas/ocr.js +18 -18
  375. package/dist/schemas/path-validation.d.ts +1 -1
  376. package/dist/schemas/path-validation.js +4 -4
  377. package/dist/schemas/plugin.d.ts +9 -10
  378. package/dist/schemas/plugin.js +47 -47
  379. package/dist/schemas/profiling.d.ts +1 -1
  380. package/dist/schemas/profiling.js +16 -16
  381. package/dist/schemas/provide.d.ts +1 -1
  382. package/dist/schemas/provide.js +8 -8
  383. package/dist/schemas/rag.d.ts +3 -3
  384. package/dist/schemas/rag.js +65 -70
  385. package/dist/schemas/registry.d.ts +1 -1
  386. package/dist/schemas/registry.js +44 -66
  387. package/dist/schemas/reload-config.d.ts +1 -1
  388. package/dist/schemas/reload-config.js +14 -18
  389. package/dist/schemas/resume.d.ts +1 -1
  390. package/dist/schemas/resume.js +3 -3
  391. package/dist/schemas/runtime-context.d.ts +1 -1
  392. package/dist/schemas/runtime-context.js +4 -4
  393. package/dist/schemas/sdcpp-config.d.ts +9 -9
  394. package/dist/schemas/sdcpp-config.js +298 -300
  395. package/dist/schemas/sdk-config.d.ts +55 -43
  396. package/dist/schemas/sdk-config.js +25 -29
  397. package/dist/schemas/sdk-errors-client.d.ts +1 -1
  398. package/dist/schemas/sdk-errors-client.js +80 -80
  399. package/dist/schemas/sdk-errors-registry.js +1 -1
  400. package/dist/schemas/sdk-errors-server.d.ts +1 -1
  401. package/dist/schemas/sdk-errors-server.js +200 -199
  402. package/dist/schemas/shard.d.ts +1 -1
  403. package/dist/schemas/shard.js +4 -4
  404. package/dist/schemas/state.d.ts +1 -1
  405. package/dist/schemas/state.js +5 -10
  406. package/dist/schemas/stop-provide.d.ts +1 -1
  407. package/dist/schemas/stop-provide.js +4 -4
  408. package/dist/schemas/suspend.d.ts +1 -1
  409. package/dist/schemas/suspend.js +3 -3
  410. package/dist/schemas/text-to-speech.d.ts +455 -3
  411. package/dist/schemas/text-to-speech.js +146 -110
  412. package/dist/schemas/tools.d.ts +1 -1
  413. package/dist/schemas/tools.js +17 -24
  414. package/dist/schemas/transcription-config.d.ts +1 -1
  415. package/dist/schemas/transcription-config.js +18 -18
  416. package/dist/schemas/transcription.d.ts +5 -5
  417. package/dist/schemas/transcription.js +31 -33
  418. package/dist/schemas/translate.d.ts +3 -3
  419. package/dist/schemas/translate.js +38 -67
  420. package/dist/schemas/translation-config.d.ts +1 -1
  421. package/dist/schemas/translation-config.js +116 -123
  422. package/dist/schemas/unload-model.d.ts +1 -1
  423. package/dist/schemas/unload-model.js +6 -6
  424. package/dist/schemas/vla.d.ts +1 -1
  425. package/dist/schemas/vla.js +30 -30
  426. package/dist/scripts/run-security-tests.js +9 -10
  427. package/dist/scripts/run-unit-tests.js +11 -12
  428. package/dist/server/bare/delegate-connect-diagnostics.js +13 -19
  429. package/dist/server/bare/delegate-rpc-client.d.ts +2 -2
  430. package/dist/server/bare/delegate-rpc-client.js +32 -34
  431. package/dist/server/bare/hyperswarm.d.ts +3 -3
  432. package/dist/server/bare/hyperswarm.js +14 -14
  433. package/dist/server/bare/ops/bci-transcribe.d.ts +1 -1
  434. package/dist/server/bare/ops/bci-transcribe.js +44 -44
  435. package/dist/server/bare/ops/cancel.d.ts +2 -2
  436. package/dist/server/bare/ops/cancel.js +6 -6
  437. package/dist/server/bare/ops/embed.d.ts +1 -1
  438. package/dist/server/bare/ops/embed.js +26 -16
  439. package/dist/server/bare/ops/kv-cache-utils.d.ts +1 -1
  440. package/dist/server/bare/ops/kv-cache-utils.js +17 -19
  441. package/dist/server/bare/ops/load-model.d.ts +2 -2
  442. package/dist/server/bare/ops/load-model.js +14 -18
  443. package/dist/server/bare/ops/transcribe.d.ts +3 -3
  444. package/dist/server/bare/ops/transcribe.js +62 -62
  445. package/dist/server/bare/ops/translate.d.ts +1 -1
  446. package/dist/server/bare/ops/translate.js +39 -30
  447. package/dist/server/bare/ops/unload-model.d.ts +1 -1
  448. package/dist/server/bare/ops/unload-model.js +12 -12
  449. package/dist/server/bare/plugins/bci-whispercpp-transcription/args.d.ts +2 -2
  450. package/dist/server/bare/plugins/bci-whispercpp-transcription/args.js +3 -3
  451. package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.d.ts +2 -2
  452. package/dist/server/bare/plugins/bci-whispercpp-transcription/plugin.js +33 -33
  453. package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.d.ts +1 -1
  454. package/dist/server/bare/plugins/bci-whispercpp-transcription/resolve-config.js +1 -1
  455. package/dist/server/bare/plugins/ggml-classification/ops/classify.d.ts +1 -1
  456. package/dist/server/bare/plugins/ggml-classification/ops/classify.js +8 -8
  457. package/dist/server/bare/plugins/ggml-classification/plugin.d.ts +1 -1
  458. package/dist/server/bare/plugins/ggml-classification/plugin.js +14 -14
  459. package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.d.ts +1 -1
  460. package/dist/server/bare/plugins/ggml-ocr/ops/ocr-stream.js +27 -26
  461. package/dist/server/bare/plugins/ggml-ocr/plugin.d.ts +1 -1
  462. package/dist/server/bare/plugins/ggml-ocr/plugin.js +38 -38
  463. package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.d.ts +1 -1
  464. package/dist/server/bare/plugins/ggml-vla/ops/vla-hparams.js +3 -3
  465. package/dist/server/bare/plugins/ggml-vla/ops/vla-run.d.ts +1 -1
  466. package/dist/server/bare/plugins/ggml-vla/ops/vla-run.js +23 -23
  467. package/dist/server/bare/plugins/ggml-vla/plugin.d.ts +1 -1
  468. package/dist/server/bare/plugins/ggml-vla/plugin.js +15 -15
  469. package/dist/server/bare/plugins/index.d.ts +11 -11
  470. package/dist/server/bare/plugins/index.js +11 -11
  471. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-cancelled.d.ts +23 -0
  472. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-cancelled.js +30 -0
  473. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.d.ts +32 -0
  474. package/dist/server/bare/plugins/llamacpp-completion/ops/batch-completion-stream.js +99 -0
  475. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.d.ts +1 -1
  476. package/dist/server/bare/plugins/llamacpp-completion/ops/cache-logger.js +8 -8
  477. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.d.ts +3 -2
  478. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stats.js +4 -1
  479. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.d.ts +22 -4
  480. package/dist/server/bare/plugins/llamacpp-completion/ops/completion-stream.js +55 -59
  481. package/dist/server/bare/plugins/llamacpp-completion/ops/context-overflow.js +5 -5
  482. package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.d.ts +2 -2
  483. package/dist/server/bare/plugins/llamacpp-completion/ops/finetune.js +34 -34
  484. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.d.ts +7 -7
  485. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-session.js +19 -23
  486. package/dist/server/bare/plugins/llamacpp-completion/ops/kv-cache-state.js +4 -6
  487. package/dist/server/bare/plugins/llamacpp-completion/plugin.d.ts +186 -17
  488. package/dist/server/bare/plugins/llamacpp-completion/plugin.js +235 -70
  489. package/dist/server/bare/plugins/llamacpp-completion/transform.d.ts +1 -1
  490. package/dist/server/bare/plugins/llamacpp-completion/transform.js +15 -15
  491. package/dist/server/bare/plugins/llamacpp-embedding/plugin.d.ts +3 -3
  492. package/dist/server/bare/plugins/llamacpp-embedding/plugin.js +27 -29
  493. package/dist/server/bare/plugins/nmtcpp-translation/plugin.d.ts +1 -1
  494. package/dist/server/bare/plugins/nmtcpp-translation/plugin.js +38 -39
  495. package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.d.ts +1 -1
  496. package/dist/server/bare/plugins/nmtcpp-translation/resolve-vocab.js +19 -22
  497. package/dist/server/bare/plugins/parakeet-transcription/plugin.d.ts +1 -1
  498. package/dist/server/bare/plugins/parakeet-transcription/plugin.js +36 -36
  499. package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.d.ts +1 -1
  500. package/dist/server/bare/plugins/sdcpp-generation/ops/diffusion.js +15 -17
  501. package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.d.ts +1 -1
  502. package/dist/server/bare/plugins/sdcpp-generation/ops/upscale.js +11 -11
  503. package/dist/server/bare/plugins/sdcpp-generation/ops/video.d.ts +1 -1
  504. package/dist/server/bare/plugins/sdcpp-generation/ops/video.js +42 -44
  505. package/dist/server/bare/plugins/sdcpp-generation/plugin.d.ts +4 -4
  506. package/dist/server/bare/plugins/sdcpp-generation/plugin.js +69 -63
  507. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.d.ts +2 -2
  508. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech-stream.js +19 -21
  509. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.d.ts +2 -2
  510. package/dist/server/bare/plugins/tts-ggml/ops/text-to-speech.js +22 -24
  511. package/dist/server/bare/plugins/tts-ggml/plugin.d.ts +3 -2
  512. package/dist/server/bare/plugins/tts-ggml/plugin.js +95 -49
  513. package/dist/server/bare/plugins/whispercpp-transcription/plugin.d.ts +1 -1
  514. package/dist/server/bare/plugins/whispercpp-transcription/plugin.js +52 -52
  515. package/dist/server/bare/rag-hyperdb/handlers/chunk.d.ts +1 -1
  516. package/dist/server/bare/rag-hyperdb/handlers/chunk.js +2 -2
  517. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.d.ts +1 -1
  518. package/dist/server/bare/rag-hyperdb/handlers/close-workspace.js +2 -2
  519. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.d.ts +1 -1
  520. package/dist/server/bare/rag-hyperdb/handlers/delete-embeddings.js +4 -4
  521. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.d.ts +1 -1
  522. package/dist/server/bare/rag-hyperdb/handlers/delete-workspace.js +3 -3
  523. package/dist/server/bare/rag-hyperdb/handlers/ingest.d.ts +2 -2
  524. package/dist/server/bare/rag-hyperdb/handlers/ingest.js +4 -4
  525. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.d.ts +1 -1
  526. package/dist/server/bare/rag-hyperdb/handlers/list-workspaces.js +1 -1
  527. package/dist/server/bare/rag-hyperdb/handlers/reindex.d.ts +2 -2
  528. package/dist/server/bare/rag-hyperdb/handlers/reindex.js +5 -5
  529. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.d.ts +2 -2
  530. package/dist/server/bare/rag-hyperdb/handlers/save-embeddings.js +3 -3
  531. package/dist/server/bare/rag-hyperdb/handlers/search.d.ts +1 -1
  532. package/dist/server/bare/rag-hyperdb/handlers/search.js +3 -3
  533. package/dist/server/bare/rag-hyperdb/index.d.ts +11 -11
  534. package/dist/server/bare/rag-hyperdb/index.js +11 -11
  535. package/dist/server/bare/rag-hyperdb/rag-operation-manager.js +3 -3
  536. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.d.ts +1 -1
  537. package/dist/server/bare/rag-hyperdb/rag-workspace-manager.js +20 -20
  538. package/dist/server/bare/registry/config-registry.d.ts +1 -1
  539. package/dist/server/bare/registry/config-registry.js +13 -16
  540. package/dist/server/bare/registry/logging-stream-registry.d.ts +1 -1
  541. package/dist/server/bare/registry/logging-stream-registry.js +2 -2
  542. package/dist/server/bare/registry/model-config-registry.d.ts +2 -2
  543. package/dist/server/bare/registry/model-config-registry.js +6 -6
  544. package/dist/server/bare/registry/model-config-utils.d.ts +2 -2
  545. package/dist/server/bare/registry/model-config-utils.js +35 -35
  546. package/dist/server/bare/registry/model-registry.d.ts +3 -3
  547. package/dist/server/bare/registry/model-registry.js +11 -11
  548. package/dist/server/bare/registry/registry-client.d.ts +1 -1
  549. package/dist/server/bare/registry/registry-client.js +18 -18
  550. package/dist/server/bare/registry/runtime-context-registry.d.ts +1 -1
  551. package/dist/server/bare/registry/runtime-context-registry.js +3 -3
  552. package/dist/server/bare/runtime/disposable-scope.js +3 -3
  553. package/dist/server/bare/runtime/index.d.ts +7 -7
  554. package/dist/server/bare/runtime/index.js +3 -3
  555. package/dist/server/bare/runtime/request-context.d.ts +4 -4
  556. package/dist/server/bare/runtime/request-id.js +1 -1
  557. package/dist/server/bare/runtime/request-registry-singleton.d.ts +1 -1
  558. package/dist/server/bare/runtime/request-registry-singleton.js +23 -4
  559. package/dist/server/bare/runtime/request-registry.d.ts +27 -12
  560. package/dist/server/bare/runtime/request-registry.js +39 -34
  561. package/dist/server/bare/runtime/with-request-context.d.ts +1 -1
  562. package/dist/server/bare/runtime/with-request-context.js +11 -11
  563. package/dist/server/bare/runtime-lifecycle.d.ts +1 -1
  564. package/dist/server/bare/runtime-lifecycle.js +27 -31
  565. package/dist/server/bare/types/addon-responses.d.ts +5 -4
  566. package/dist/server/bare/utils/audio-input.d.ts +2 -2
  567. package/dist/server/bare/utils/audio-input.js +7 -7
  568. package/dist/server/bare/utils/transcribe-metadata.d.ts +1 -1
  569. package/dist/server/bare/utils/transcribe-metadata.js +4 -4
  570. package/dist/server/bare/utils/tts-stats.d.ts +1 -1
  571. package/dist/server/bare/utils/tts-stats.js +3 -3
  572. package/dist/server/env.js +8 -8
  573. package/dist/server/error-handlers.d.ts +3 -3
  574. package/dist/server/error-handlers.js +11 -11
  575. package/dist/server/plugins/index.d.ts +1 -1
  576. package/dist/server/plugins/index.js +1 -1
  577. package/dist/server/plugins/registry.d.ts +1 -1
  578. package/dist/server/plugins/registry.js +12 -14
  579. package/dist/server/rpc/create-server.d.ts +1 -1
  580. package/dist/server/rpc/create-server.js +11 -12
  581. package/dist/server/rpc/delegate-transport.d.ts +3 -3
  582. package/dist/server/rpc/delegate-transport.js +43 -44
  583. package/dist/server/rpc/handle-request.d.ts +1 -1
  584. package/dist/server/rpc/handle-request.js +28 -30
  585. package/dist/server/rpc/handler-registry.d.ts +1 -1
  586. package/dist/server/rpc/handler-registry.js +97 -92
  587. package/dist/server/rpc/handler-selection.d.ts +3 -3
  588. package/dist/server/rpc/handler-selection.js +3 -3
  589. package/dist/server/rpc/handler-utils.d.ts +7 -7
  590. package/dist/server/rpc/handler-utils.js +32 -35
  591. package/dist/server/rpc/handlers/batch-completion-stream.d.ts +78 -0
  592. package/dist/server/rpc/handlers/batch-completion-stream.js +4 -0
  593. package/dist/server/rpc/handlers/bci-transcribe-stream.d.ts +1 -1
  594. package/dist/server/rpc/handlers/bci-transcribe-stream.js +2 -2
  595. package/dist/server/rpc/handlers/bci-transcribe.d.ts +1 -1
  596. package/dist/server/rpc/handlers/bci-transcribe.js +2 -2
  597. package/dist/server/rpc/handlers/cancel-delegated.d.ts +2 -2
  598. package/dist/server/rpc/handlers/cancel-delegated.js +13 -13
  599. package/dist/server/rpc/handlers/cancelHandler.d.ts +1 -1
  600. package/dist/server/rpc/handlers/cancelHandler.js +11 -11
  601. package/dist/server/rpc/handlers/classify.d.ts +1 -1
  602. package/dist/server/rpc/handlers/classify.js +2 -2
  603. package/dist/server/rpc/handlers/completion-stream-delegated.d.ts +2 -2
  604. package/dist/server/rpc/handlers/completion-stream-delegated.js +14 -14
  605. package/dist/server/rpc/handlers/completion-stream.d.ts +1 -1
  606. package/dist/server/rpc/handlers/completion-stream.js +2 -2
  607. package/dist/server/rpc/handlers/delete-cache.d.ts +1 -1
  608. package/dist/server/rpc/handlers/delete-cache.js +10 -10
  609. package/dist/server/rpc/handlers/diffusion-stream.d.ts +1 -1
  610. package/dist/server/rpc/handlers/diffusion-stream.js +2 -2
  611. package/dist/server/rpc/handlers/download-asset.d.ts +1 -1
  612. package/dist/server/rpc/handlers/download-asset.js +20 -20
  613. package/dist/server/rpc/handlers/embed.d.ts +1 -1
  614. package/dist/server/rpc/handlers/embed.js +2 -2
  615. package/dist/server/rpc/handlers/finetune.d.ts +1 -1
  616. package/dist/server/rpc/handlers/finetune.js +8 -6
  617. package/dist/server/rpc/handlers/get-loaded-model-info.d.ts +1 -1
  618. package/dist/server/rpc/handlers/get-loaded-model-info.js +9 -9
  619. package/dist/server/rpc/handlers/get-model-info.d.ts +1 -1
  620. package/dist/server/rpc/handlers/get-model-info.js +20 -20
  621. package/dist/server/rpc/handlers/heartbeat-delegated.d.ts +2 -2
  622. package/dist/server/rpc/handlers/heartbeat-delegated.js +7 -7
  623. package/dist/server/rpc/handlers/heartbeat.d.ts +1 -1
  624. package/dist/server/rpc/handlers/heartbeat.js +1 -1
  625. package/dist/server/rpc/handlers/index.d.ts +33 -31
  626. package/dist/server/rpc/handlers/index.js +34 -32
  627. package/dist/server/rpc/handlers/load-model/download-manager.d.ts +4 -4
  628. package/dist/server/rpc/handlers/load-model/download-manager.js +19 -17
  629. package/dist/server/rpc/handlers/load-model/download-stats.d.ts +4 -3
  630. package/dist/server/rpc/handlers/load-model/download-stats.js +9 -11
  631. package/dist/server/rpc/handlers/load-model/handler.d.ts +1 -1
  632. package/dist/server/rpc/handlers/load-model/handler.js +42 -43
  633. package/dist/server/rpc/handlers/load-model/http.d.ts +2 -2
  634. package/dist/server/rpc/handlers/load-model/http.js +100 -107
  635. package/dist/server/rpc/handlers/load-model/hyperdrive.d.ts +2 -2
  636. package/dist/server/rpc/handlers/load-model/hyperdrive.js +72 -74
  637. package/dist/server/rpc/handlers/load-model/index.d.ts +2 -2
  638. package/dist/server/rpc/handlers/load-model/index.js +2 -2
  639. package/dist/server/rpc/handlers/load-model/registry-client-options.d.ts +2 -2
  640. package/dist/server/rpc/handlers/load-model/registry-client-options.js +2 -3
  641. package/dist/server/rpc/handlers/load-model/registry-companion-set.d.ts +5 -5
  642. package/dist/server/rpc/handlers/load-model/registry-companion-set.js +19 -21
  643. package/dist/server/rpc/handlers/load-model/registry-download-utils.d.ts +6 -6
  644. package/dist/server/rpc/handlers/load-model/registry-download-utils.js +16 -18
  645. package/dist/server/rpc/handlers/load-model/registry-metadata.d.ts +11 -0
  646. package/dist/server/rpc/handlers/load-model/registry-metadata.js +23 -0
  647. package/dist/server/rpc/handlers/load-model/registry.d.ts +4 -3
  648. package/dist/server/rpc/handlers/load-model/registry.js +50 -56
  649. package/dist/server/rpc/handlers/load-model/resolve-session.d.ts +3 -3
  650. package/dist/server/rpc/handlers/load-model/resolve-session.js +7 -7
  651. package/dist/server/rpc/handlers/load-model/resolve.d.ts +3 -3
  652. package/dist/server/rpc/handlers/load-model/resolve.js +36 -35
  653. package/dist/server/rpc/handlers/load-model/types.d.ts +3 -3
  654. package/dist/server/rpc/handlers/load-model/types.js +7 -7
  655. package/dist/server/rpc/handlers/load-model-delegated.d.ts +2 -2
  656. package/dist/server/rpc/handlers/load-model-delegated.js +31 -30
  657. package/dist/server/rpc/handlers/logging-stream.d.ts +1 -1
  658. package/dist/server/rpc/handlers/logging-stream.js +3 -3
  659. package/dist/server/rpc/handlers/ocr-stream.d.ts +1 -1
  660. package/dist/server/rpc/handlers/ocr-stream.js +2 -2
  661. package/dist/server/rpc/handlers/plugin-dispatch.js +9 -9
  662. package/dist/server/rpc/handlers/plugin-invoke.d.ts +1 -1
  663. package/dist/server/rpc/handlers/plugin-invoke.js +16 -16
  664. package/dist/server/rpc/handlers/provideHandler/connection.d.ts +1 -1
  665. package/dist/server/rpc/handlers/provideHandler/connection.js +16 -16
  666. package/dist/server/rpc/handlers/provideHandler/handler.d.ts +1 -1
  667. package/dist/server/rpc/handlers/provideHandler/handler.js +18 -18
  668. package/dist/server/rpc/handlers/provideHandler/proxy.d.ts +1 -1
  669. package/dist/server/rpc/handlers/provideHandler/proxy.js +11 -11
  670. package/dist/server/rpc/handlers/provideHandler.d.ts +1 -1
  671. package/dist/server/rpc/handlers/provideHandler.js +1 -1
  672. package/dist/server/rpc/handlers/rag.d.ts +1 -1
  673. package/dist/server/rpc/handlers/rag.js +50 -50
  674. package/dist/server/rpc/handlers/registry.d.ts +1 -1
  675. package/dist/server/rpc/handlers/registry.js +34 -36
  676. package/dist/server/rpc/handlers/resume.d.ts +1 -1
  677. package/dist/server/rpc/handlers/resume.js +3 -3
  678. package/dist/server/rpc/handlers/state.d.ts +1 -1
  679. package/dist/server/rpc/handlers/state.js +3 -3
  680. package/dist/server/rpc/handlers/stopProvideHandler.d.ts +1 -1
  681. package/dist/server/rpc/handlers/stopProvideHandler.js +7 -7
  682. package/dist/server/rpc/handlers/suspend.d.ts +1 -1
  683. package/dist/server/rpc/handlers/suspend.js +3 -3
  684. package/dist/server/rpc/handlers/text-to-speech-stream.d.ts +1 -1
  685. package/dist/server/rpc/handlers/text-to-speech-stream.js +2 -2
  686. package/dist/server/rpc/handlers/text-to-speech.d.ts +1 -1
  687. package/dist/server/rpc/handlers/text-to-speech.js +2 -2
  688. package/dist/server/rpc/handlers/transcribe-stream.d.ts +1 -1
  689. package/dist/server/rpc/handlers/transcribe-stream.js +2 -2
  690. package/dist/server/rpc/handlers/transcribe.d.ts +1 -1
  691. package/dist/server/rpc/handlers/transcribe.js +2 -2
  692. package/dist/server/rpc/handlers/translate.d.ts +1 -1
  693. package/dist/server/rpc/handlers/translate.js +2 -2
  694. package/dist/server/rpc/handlers/unload-model-delegated.d.ts +1 -1
  695. package/dist/server/rpc/handlers/unload-model-delegated.js +10 -10
  696. package/dist/server/rpc/handlers/unload-model.d.ts +1 -1
  697. package/dist/server/rpc/handlers/unload-model.js +10 -10
  698. package/dist/server/rpc/handlers/upscale-stream.d.ts +1 -1
  699. package/dist/server/rpc/handlers/upscale-stream.js +2 -2
  700. package/dist/server/rpc/handlers/video-stream.d.ts +1 -1
  701. package/dist/server/rpc/handlers/video-stream.js +2 -2
  702. package/dist/server/rpc/index.d.ts +2 -2
  703. package/dist/server/rpc/index.js +2 -2
  704. package/dist/server/rpc/profiling/context.d.ts +1 -1
  705. package/dist/server/rpc/profiling/context.js +9 -10
  706. package/dist/server/rpc/profiling/delegation-profiler.d.ts +2 -2
  707. package/dist/server/rpc/profiling/delegation-profiler.js +23 -24
  708. package/dist/server/rpc/profiling/index.d.ts +4 -4
  709. package/dist/server/rpc/profiling/index.js +4 -4
  710. package/dist/server/rpc/profiling/operation-metrics.d.ts +2 -2
  711. package/dist/server/rpc/profiling/operation-metrics.js +102 -102
  712. package/dist/server/rpc/profiling/operation-wrappers.d.ts +1 -1
  713. package/dist/server/rpc/profiling/operation-wrappers.js +16 -14
  714. package/dist/server/rpc/profiling/profiler.d.ts +2 -2
  715. package/dist/server/rpc/profiling/profiler.js +9 -13
  716. package/dist/server/rpc/rpc-utils.js +1 -4
  717. package/dist/server/rpc/transport-selector.d.ts +1 -1
  718. package/dist/server/rpc/transport-selector.js +4 -4
  719. package/dist/server/utils/archive.js +27 -29
  720. package/dist/server/utils/audio/decoder.d.ts +2 -2
  721. package/dist/server/utils/audio/decoder.js +11 -11
  722. package/dist/server/utils/cache/auto-history.d.ts +1 -1
  723. package/dist/server/utils/cache/auto-history.js +5 -5
  724. package/dist/server/utils/cache/paths.d.ts +2 -2
  725. package/dist/server/utils/cache/paths.js +14 -14
  726. package/dist/server/utils/checksum.d.ts +1 -1
  727. package/dist/server/utils/checksum.js +10 -12
  728. package/dist/server/utils/clear-storage.d.ts +1 -1
  729. package/dist/server/utils/clear-storage.js +8 -11
  730. package/dist/server/utils/completion-normalizer.d.ts +1 -1
  731. package/dist/server/utils/completion-normalizer.js +106 -113
  732. package/dist/server/utils/config-transform.d.ts +1 -1
  733. package/dist/server/utils/config-transform.js +2 -2
  734. package/dist/server/utils/expand-gguf-shards.js +4 -4
  735. package/dist/server/utils/formatting.js +6 -12
  736. package/dist/server/utils/gguf-tensor-extractor.js +17 -21
  737. package/dist/server/utils/index.d.ts +11 -11
  738. package/dist/server/utils/index.js +11 -11
  739. package/dist/server/utils/multi-gpu-mobile.js +1 -1
  740. package/dist/server/utils/path-security.d.ts +1 -1
  741. package/dist/server/utils/path-security.js +6 -6
  742. package/dist/server/utils/qvac-paths.js +3 -3
  743. package/dist/server/utils/response-format.d.ts +1 -1
  744. package/dist/server/utils/response-format.js +4 -4
  745. package/dist/server/utils/shard-utils.d.ts +1 -1
  746. package/dist/server/utils/shard-utils.js +14 -16
  747. package/dist/server/utils/tool-integration.d.ts +1 -1
  748. package/dist/server/utils/tool-integration.js +5 -9
  749. package/dist/server/utils/tools/dialect.d.ts +1 -1
  750. package/dist/server/utils/tools/dialect.js +7 -7
  751. package/dist/server/utils/tools/index.d.ts +2 -2
  752. package/dist/server/utils/tools/index.js +2 -2
  753. package/dist/server/utils/tools/parser.d.ts +1 -1
  754. package/dist/server/utils/tools/parser.js +14 -14
  755. package/dist/server/utils/tools/parsers/gemma4native.d.ts +2 -2
  756. package/dist/server/utils/tools/parsers/gemma4native.js +13 -8
  757. package/dist/server/utils/tools/parsers/harmony.d.ts +2 -2
  758. package/dist/server/utils/tools/parsers/harmony.js +9 -11
  759. package/dist/server/utils/tools/parsers/hermes.d.ts +2 -2
  760. package/dist/server/utils/tools/parsers/hermes.js +16 -16
  761. package/dist/server/utils/tools/parsers/json.d.ts +2 -2
  762. package/dist/server/utils/tools/parsers/json.js +14 -14
  763. package/dist/server/utils/tools/parsers/pythonic.d.ts +2 -2
  764. package/dist/server/utils/tools/parsers/pythonic.js +43 -43
  765. package/dist/server/utils/tools/parsers/qwen35.d.ts +2 -2
  766. package/dist/server/utils/tools/parsers/qwen35.js +20 -20
  767. package/dist/server/utils/tools/shared.d.ts +1 -1
  768. package/dist/server/utils/tools/shared.js +10 -12
  769. package/dist/server/utils/worker-lock.js +10 -10
  770. package/dist/server/worker-core.d.ts +1 -1
  771. package/dist/server/worker-core.js +44 -43
  772. package/dist/server/worker.js +9 -9
  773. package/dist/utils/aggregate-events.d.ts +2 -2
  774. package/dist/utils/aggregate-events.js +17 -19
  775. package/dist/utils/cache-normalize.js +1 -4
  776. package/dist/utils/encoding.js +1 -1
  777. package/dist/utils/errors-base.d.ts +1 -1
  778. package/dist/utils/errors-base.js +1 -1
  779. package/dist/utils/errors-client.d.ts +1 -1
  780. package/dist/utils/errors-client.js +5 -5
  781. package/dist/utils/errors-server.d.ts +3 -3
  782. package/dist/utils/errors-server.js +19 -18
  783. package/dist/utils/load-model-validation.js +3 -3
  784. package/dist/utils/mcp-adapter.d.ts +4 -4
  785. package/dist/utils/mcp-adapter.js +31 -38
  786. package/dist/utils/path-sanitize.js +14 -17
  787. package/dist/utils/tool-helpers.d.ts +2 -2
  788. package/dist/utils/tool-helpers.js +25 -26
  789. package/dist/utils/withTimeout.d.ts +7 -0
  790. package/dist/utils/withTimeout.js +11 -1
  791. package/dist/utils/zod-error.d.ts +1 -1
  792. package/dist/utils/zod-error.js +1 -1
  793. package/electron-forge/index.cjs +274 -317
  794. package/expo/plugins/patches/android-link.mjs +25 -30
  795. package/expo/plugins/patches/ios-link.mjs +25 -30
  796. package/package.json +17 -16
@@ -1,16 +1,16 @@
1
- import RPC from "bare-rpc";
2
- import spawn, {} from "bare-runtime/spawn";
3
- import { randomBytes } from "node:crypto";
4
- import { existsSync, unlinkSync } from "node:fs";
5
- import { createServer } from "node:net";
6
- import fs from "node:fs";
7
- import os from "node:os";
8
- import path from "node:path";
9
- import { fileURLToPath } from "node:url";
10
- import { initializeConfig } from "../init-hooks.js";
11
- import { resolveConfig } from "../config-loader/resolve-config.node.js";
12
- import { getClientLogger, getLogger, SDK_SERVER_NAMESPACE } from "../../logging/index.js";
13
- import { BareRuntimeBinaryNotFoundError, RPCInitTimeoutError, WorkerCrashedError, WorkerShutdownError, } from "../../utils/errors-client.js";
1
+ import RPC from 'bare-rpc';
2
+ import spawn, {} from 'bare-runtime/spawn';
3
+ import { randomBytes } from 'node:crypto';
4
+ import { existsSync, unlinkSync } from 'node:fs';
5
+ import { createServer } from 'node:net';
6
+ import fs from 'node:fs';
7
+ import os from 'node:os';
8
+ import path from 'node:path';
9
+ import { fileURLToPath } from 'node:url';
10
+ import { initializeConfig } from '../init-hooks.js';
11
+ import { resolveConfig } from '../config-loader/resolve-config.node.js';
12
+ import { getClientLogger, getLogger, SDK_SERVER_NAMESPACE } from '../../logging/index.js';
13
+ import { BareRuntimeBinaryNotFoundError, RPCInitTimeoutError, WorkerCrashedError, WorkerShutdownError } from '../../utils/errors-client.js';
14
14
  const RPC_INIT_TIMEOUT_MS = 30_000;
15
15
  const WORKER_STDERR_TAIL_CHARS = 16_384;
16
16
  const logger = getClientLogger();
@@ -36,7 +36,7 @@ function findProjectRootSync() {
36
36
  let dir = process.cwd();
37
37
  const root = path.parse(dir).root;
38
38
  while (dir !== root) {
39
- if (fs.existsSync(path.join(dir, "package.json"))) {
39
+ if (fs.existsSync(path.join(dir, 'package.json'))) {
40
40
  return dir;
41
41
  }
42
42
  dir = path.dirname(dir);
@@ -45,16 +45,16 @@ function findProjectRootSync() {
45
45
  }
46
46
  function getResourcesPathSync() {
47
47
  const { resourcesPath } = process;
48
- return typeof resourcesPath === "string" ? resourcesPath : undefined;
48
+ return typeof resourcesPath === 'string' ? resourcesPath : undefined;
49
49
  }
50
50
  function resolvePackagedWorkerPath() {
51
51
  const resourcesPath = getResourcesPathSync();
52
52
  if (!resourcesPath)
53
53
  return undefined;
54
54
  const candidates = [
55
- path.join(resourcesPath, "app.asar.unpacked", "qvac", "worker.entry.mjs"),
56
- path.join(resourcesPath, "app", "qvac", "worker.entry.mjs"),
57
- path.join(resourcesPath, "qvac", "worker.entry.mjs"),
55
+ path.join(resourcesPath, 'app.asar.unpacked', 'qvac', 'worker.entry.mjs'),
56
+ path.join(resourcesPath, 'app', 'qvac', 'worker.entry.mjs'),
57
+ path.join(resourcesPath, 'qvac', 'worker.entry.mjs')
58
58
  ];
59
59
  for (const candidate of candidates) {
60
60
  if (fs.existsSync(candidate))
@@ -72,17 +72,17 @@ function resolvePackagedWorkerPath() {
72
72
  * literals at the call site.
73
73
  */
74
74
  function getDefaultWorkerPath() {
75
- const hasAsset = typeof import.meta.asset === "function";
75
+ const hasAsset = typeof import.meta.asset === 'function';
76
76
  const packagedUrl = hasAsset
77
- ? new URL(import.meta.asset("../../server/worker.js"))
78
- : new URL("../../server/worker.js", import.meta.url);
77
+ ? new URL(import.meta.asset('../../server/worker.js'))
78
+ : new URL('../../server/worker.js', import.meta.url);
79
79
  const packaged = fileURLToPath(packagedUrl);
80
80
  if (fs.existsSync(packaged))
81
81
  return packaged;
82
82
  // Dev/source layout fallback
83
83
  const devUrl = hasAsset
84
- ? new URL(import.meta.asset("../../dist/server/worker.js"))
85
- : new URL("../../dist/server/worker.js", import.meta.url);
84
+ ? new URL(import.meta.asset('../../dist/server/worker.js'))
85
+ : new URL('../../dist/server/worker.js', import.meta.url);
86
86
  return fileURLToPath(devUrl);
87
87
  }
88
88
  /**
@@ -93,7 +93,7 @@ function getDefaultWorkerPath() {
93
93
  * 4. Default SDK worker
94
94
  */
95
95
  function resolveWorkerPath() {
96
- const envWorkerPath = process.env["QVAC_WORKER_PATH"];
96
+ const envWorkerPath = process.env['QVAC_WORKER_PATH'];
97
97
  if (envWorkerPath) {
98
98
  const normalized = path.resolve(envWorkerPath);
99
99
  if (fs.existsSync(normalized)) {
@@ -115,7 +115,7 @@ function resolveWorkerPath() {
115
115
  // load ES modules directly. The packed bundle is for mobile only.
116
116
  const projectRoot = findProjectRootSync();
117
117
  if (projectRoot) {
118
- const customEntry = path.join(projectRoot, "qvac", "worker.entry.mjs");
118
+ const customEntry = path.join(projectRoot, 'qvac', 'worker.entry.mjs');
119
119
  if (fs.existsSync(customEntry)) {
120
120
  logger.info(`🔧 Using custom worker entry: ${customEntry}`);
121
121
  return customEntry;
@@ -129,15 +129,15 @@ function resolveWorkerPath() {
129
129
  const WORKER_PATH = resolveWorkerPath();
130
130
  function createSocketPath() {
131
131
  const timestamp = Date.now().toString(36);
132
- const randomSuffix = randomBytes(2).toString("hex");
132
+ const randomSuffix = randomBytes(2).toString('hex');
133
133
  const socketName = `qvac-worker-${process.pid}-${timestamp}-${randomSuffix}`;
134
- return process.platform === "win32"
134
+ return process.platform === 'win32'
135
135
  ? `\\\\.\\pipe\\${socketName}`
136
136
  : path.join(os.tmpdir(), `${socketName}.sock`);
137
137
  }
138
138
  function bestEffortUnlinkSocket(socketPath) {
139
139
  // Windows named pipes are not filesystem paths, so unlink is Unix-only.
140
- if (!socketPath || process.platform === "win32")
140
+ if (!socketPath || process.platform === 'win32')
141
141
  return;
142
142
  try {
143
143
  if (existsSync(socketPath)) {
@@ -145,7 +145,7 @@ function bestEffortUnlinkSocket(socketPath) {
145
145
  }
146
146
  }
147
147
  catch (error) {
148
- logger.debug("Failed to unlink IPC socket path", { socketPath, error });
148
+ logger.debug('Failed to unlink IPC socket path', { socketPath, error });
149
149
  }
150
150
  }
151
151
  function appendWorkerStderrTail(current, chunk) {
@@ -182,10 +182,10 @@ function teardownFailedInit() {
182
182
  const { workerToClose, serverToClose, socketPathToClose } = snapshotAndResetState();
183
183
  if (workerToClose) {
184
184
  try {
185
- workerToClose.kill("SIGTERM");
185
+ workerToClose.kill('SIGTERM');
186
186
  }
187
187
  catch (error) {
188
- logger.debug("Failed to kill bare worker after init failure", { error });
188
+ logger.debug('Failed to kill bare worker after init failure', { error });
189
189
  }
190
190
  }
191
191
  if (serverToClose) {
@@ -193,7 +193,7 @@ function teardownFailedInit() {
193
193
  serverToClose.close();
194
194
  }
195
195
  catch (error) {
196
- logger.debug("Failed to close IPC server after init failure", { error });
196
+ logger.debug('Failed to close IPC server after init failure', { error });
197
197
  }
198
198
  }
199
199
  bestEffortUnlinkSocket(socketPathToClose);
@@ -201,6 +201,36 @@ function teardownFailedInit() {
201
201
  export function getWorkerLifeSignal() {
202
202
  return workerLifeController?.signal ?? null;
203
203
  }
204
+ // Called by the RPC layer when it detects the channel closed out from under
205
+ // an in-flight call (bare-rpc's own teardown beat the child `'exit'` event
206
+ // we normally rely on). Tears down immediately rather than waiting on that
207
+ // slower signal, so the next call respawns instead of reusing the dead
208
+ // connection. A no-op if the life signal already aborted — e.g. the real
209
+ // exit handler got there first, or a concurrent caller already tore down.
210
+ export function notifyChannelClosed() {
211
+ const controller = workerLifeController;
212
+ if (!controller || controller.signal.aborted)
213
+ return;
214
+ const { workerToClose, serverToClose, socketPathToClose } = snapshotAndResetState();
215
+ if (workerToClose) {
216
+ try {
217
+ workerToClose.kill('SIGTERM');
218
+ }
219
+ catch (error) {
220
+ logger.debug('Failed to kill bare worker after channel close', { error });
221
+ }
222
+ }
223
+ if (serverToClose) {
224
+ try {
225
+ serverToClose.close();
226
+ }
227
+ catch (error) {
228
+ logger.debug('Failed to close IPC server after channel close', { error });
229
+ }
230
+ }
231
+ bestEffortUnlinkSocket(socketPathToClose);
232
+ controller.abort(new WorkerCrashedError(null, null));
233
+ }
204
234
  function getWorkerStderr(proc) {
205
235
  return proc.stderr ?? null;
206
236
  }
@@ -233,7 +263,7 @@ function handlePostHandshakeExit(code, exitSignal, spawn) {
233
263
  spawn.server.close();
234
264
  }
235
265
  catch (err) {
236
- logger.debug("Failed to close IPC server after worker crash", { err });
266
+ logger.debug('Failed to close IPC server after worker crash', { err });
237
267
  }
238
268
  spawn.controller.abort(new WorkerCrashedError(code, exitSignal));
239
269
  bestEffortUnlinkSocket(spawn.socketPath);
@@ -244,10 +274,10 @@ function closeSyncForExit() {
244
274
  const { workerToClose, serverToClose, socketPathToClose } = snapshotAndResetState();
245
275
  if (workerToClose) {
246
276
  try {
247
- workerToClose.kill("SIGTERM");
277
+ workerToClose.kill('SIGTERM');
248
278
  }
249
279
  catch (error) {
250
- logger.debug("Failed to kill bare worker during process exit", { error });
280
+ logger.debug('Failed to kill bare worker during process exit', { error });
251
281
  }
252
282
  }
253
283
  if (serverToClose) {
@@ -255,7 +285,7 @@ function closeSyncForExit() {
255
285
  serverToClose.close();
256
286
  }
257
287
  catch (error) {
258
- logger.debug("Failed to close IPC server during process exit", { error });
288
+ logger.debug('Failed to close IPC server during process exit', { error });
259
289
  }
260
290
  }
261
291
  bestEffortUnlinkSocket(socketPathToClose);
@@ -275,13 +305,13 @@ async function ensureRPC() {
275
305
  workerLifeController = spawnController;
276
306
  rpcPromise = new Promise((resolve, reject) => {
277
307
  let settled = false;
278
- let workerStderrTail = "";
308
+ let workerStderrTail = '';
279
309
  const timer = setTimeout(() => {
280
310
  if (settled)
281
311
  return;
282
312
  settled = true;
283
313
  const cause = workerStderrTail
284
- ? createWorkerStartupError("Worker did not establish IPC before the RPC initialization timeout", workerStderrTail)
314
+ ? createWorkerStartupError('Worker did not establish IPC before the RPC initialization timeout', workerStderrTail)
285
315
  : undefined;
286
316
  teardownFailedInit();
287
317
  reject(new RPCInitTimeoutError(RPC_INIT_TIMEOUT_MS, cause));
@@ -294,7 +324,7 @@ async function ensureRPC() {
294
324
  rpcInstance = new RPC(socket, () => { });
295
325
  resolve(rpcInstance);
296
326
  });
297
- ipcServer.on("error", (error) => {
327
+ ipcServer.on('error', (error) => {
298
328
  if (settled)
299
329
  return;
300
330
  settled = true;
@@ -306,23 +336,23 @@ async function ensureRPC() {
306
336
  const spawnResources = {
307
337
  controller: spawnController,
308
338
  server: ipcServer,
309
- socketPath,
339
+ socketPath
310
340
  };
311
341
  try {
312
- bareWorkerProc = spawn("bare", {
342
+ bareWorkerProc = spawn('bare', {
313
343
  args: [
314
344
  WORKER_PATH,
315
345
  JSON.stringify({
316
346
  QVAC_IPC_SOCKET_PATH: socketPath,
317
347
  // Snap's HOME can be revision-scoped; SNAP_USER_COMMON is stable.
318
- HOME_DIR: process.env["SNAP_USER_COMMON"]
319
- ? String(process.env["SNAP_USER_COMMON"])
320
- : os.homedir(),
321
- }),
348
+ HOME_DIR: process.env['SNAP_USER_COMMON']
349
+ ? String(process.env['SNAP_USER_COMMON'])
350
+ : os.homedir()
351
+ })
322
352
  ],
323
353
  platform: process.platform,
324
354
  arch: process.arch,
325
- stdio: ["inherit", "inherit", "pipe"],
355
+ stdio: ['inherit', 'inherit', 'pipe']
326
356
  });
327
357
  }
328
358
  catch (error) {
@@ -339,15 +369,15 @@ async function ensureRPC() {
339
369
  return;
340
370
  }
341
371
  if (bareWorkerProc) {
342
- getWorkerStderr(bareWorkerProc)?.on("data", (chunk) => {
372
+ getWorkerStderr(bareWorkerProc)?.on('data', (chunk) => {
343
373
  const text = chunk.toString();
344
374
  workerStderrTail = appendWorkerStderrTail(workerStderrTail, text);
345
- for (const line of text.split("\n")) {
375
+ for (const line of text.split('\n')) {
346
376
  if (line.trim())
347
377
  workerLogger.debug(line);
348
378
  }
349
379
  });
350
- bareWorkerProc.on("exit", (code, exitSignal) => {
380
+ bareWorkerProc.on('exit', (code, exitSignal) => {
351
381
  if (settled) {
352
382
  handlePostHandshakeExit(code, exitSignal, spawnResources);
353
383
  return;
@@ -355,11 +385,11 @@ async function ensureRPC() {
355
385
  // Pre-handshake failures are rejected from "close" so stderr has
356
386
  // drained before we assemble the startup error cause.
357
387
  });
358
- bareWorkerProc.on("close", (...args) => {
388
+ bareWorkerProc.on('close', (...args) => {
359
389
  if (settled)
360
390
  return;
361
- const code = typeof args[0] === "number" ? args[0] : null;
362
- const exitSignal = typeof args[1] === "string" ? args[1] : null;
391
+ const code = typeof args[0] === 'number' ? args[0] : null;
392
+ const exitSignal = typeof args[1] === 'string' ? args[1] : null;
363
393
  // Worker died before handshake. Use close, not exit, so piped
364
394
  // stderr has drained before we build the error cause.
365
395
  settled = true;
@@ -372,26 +402,24 @@ async function ensureRPC() {
372
402
  });
373
403
  const rpc = await rpcPromise;
374
404
  const runtimeContext = {
375
- runtime: "node",
376
- platform: process.platform,
405
+ runtime: 'node',
406
+ platform: process.platform
377
407
  };
378
408
  // init-hooks calls bare-rpc directly, bypassing rpc-client's race.
379
409
  await Promise.race([
380
410
  initializeConfig(rpc, resolveConfig, runtimeContext),
381
- rejectOnAbort(spawnController.signal),
411
+ rejectOnAbort(spawnController.signal)
382
412
  ]);
383
413
  return rpc;
384
414
  }
385
415
  function rejectOnAbort(signal) {
386
416
  return new Promise((_, reject) => {
387
- const fail = () => reject(signal.reason instanceof Error
388
- ? signal.reason
389
- : new WorkerCrashedError(null, null));
417
+ const fail = () => reject(signal.reason instanceof Error ? signal.reason : new WorkerCrashedError(null, null));
390
418
  if (signal.aborted) {
391
419
  fail();
392
420
  return;
393
421
  }
394
- signal.addEventListener("abort", fail, { once: true });
422
+ signal.addEventListener('abort', fail, { once: true });
395
423
  });
396
424
  }
397
425
  export async function getRPC() {
@@ -401,25 +429,25 @@ export async function createDuplexSession(payload, commandId) {
401
429
  const rpc = await ensureRPC();
402
430
  const req = rpc.request(commandId);
403
431
  const requestStream = req.createRequestStream();
404
- const responseStream = req.createResponseStream({ encoding: "utf-8" });
405
- requestStream.write(payload, "utf-8");
432
+ const responseStream = req.createResponseStream({ encoding: 'utf-8' });
433
+ requestStream.write(payload, 'utf-8');
406
434
  // Destroy on worker death so consumers' for-await throws instead of hangs.
407
435
  const lifeSignal = workerLifeController?.signal;
408
436
  if (lifeSignal && !lifeSignal.aborted) {
409
437
  const onAbort = () => {
410
- const err = lifeSignal.reason instanceof Error
411
- ? lifeSignal.reason
412
- : new WorkerCrashedError(null, null);
438
+ const err = lifeSignal.reason instanceof Error ? lifeSignal.reason : new WorkerCrashedError(null, null);
413
439
  try {
440
+ ;
414
441
  requestStream.destroy?.(err);
415
442
  }
416
443
  catch { }
417
444
  try {
445
+ ;
418
446
  responseStream.destroy?.(err);
419
447
  }
420
448
  catch { }
421
449
  };
422
- lifeSignal.addEventListener("abort", onAbort, { once: true });
450
+ lifeSignal.addEventListener('abort', onAbort, { once: true });
423
451
  }
424
452
  return { requestStream, responseStream };
425
453
  }
@@ -430,29 +458,29 @@ export async function close() {
430
458
  }
431
459
  if (!rpcInstance && !rpcPromise && !bareWorkerProc && !ipcServer)
432
460
  return;
433
- logger.info("🧹 Closing RPC client");
461
+ logger.info('🧹 Closing RPC client');
434
462
  // Abort before kill: exit handler sees planned intent; any in-flight
435
463
  // caller (contract violators) rejects with WorkerShutdownError.
436
464
  workerLifeController?.abort(new WorkerShutdownError());
437
465
  const { workerToClose, serverToClose, socketPathToClose } = snapshotAndResetState();
438
466
  closePromise = (async () => {
439
467
  if (workerToClose) {
440
- logger.info("🐻🔫 Killing bare worker process");
468
+ logger.info('🐻🔫 Killing bare worker process');
441
469
  try {
442
- workerToClose.kill("SIGTERM");
470
+ workerToClose.kill('SIGTERM');
443
471
  }
444
472
  catch (error) {
445
- logger.debug("Failed to kill bare worker process", { error });
473
+ logger.debug('Failed to kill bare worker process', { error });
446
474
  }
447
475
  }
448
476
  if (serverToClose) {
449
- logger.info("🔌 Closing IPC server");
477
+ logger.info('🔌 Closing IPC server');
450
478
  await new Promise((resolve) => {
451
479
  try {
452
480
  serverToClose.close(() => resolve());
453
481
  }
454
482
  catch (error) {
455
- logger.debug("Failed to close IPC server", { error });
483
+ logger.debug('Failed to close IPC server', { error });
456
484
  resolve();
457
485
  }
458
486
  });
@@ -471,7 +499,7 @@ function handleTerminationSignal(signal) {
471
499
  closeSyncForExit();
472
500
  process.kill(process.pid, signal);
473
501
  }
474
- process.once("SIGINT", () => handleTerminationSignal("SIGINT"));
475
- process.once("SIGTERM", () => handleTerminationSignal("SIGTERM"));
476
- process.once("SIGHUP", () => handleTerminationSignal("SIGHUP"));
477
- process.once("exit", closeSyncForExit);
502
+ process.once('SIGINT', () => handleTerminationSignal('SIGINT'));
503
+ process.once('SIGTERM', () => handleTerminationSignal('SIGTERM'));
504
+ process.once('SIGHUP', () => handleTerminationSignal('SIGHUP'));
505
+ process.once('exit', closeSyncForExit);
@@ -1,2 +1,2 @@
1
- export * from "./profiler";
1
+ export * from './profiler';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- export * from "./profiler.js";
1
+ export * from './profiler.js';
@@ -1,5 +1,5 @@
1
- import { type BaseTimings } from "../../../profiling/index";
2
- import type { ProfilingResponseMeta } from "../../../schemas/index";
1
+ import { type BaseTimings } from '../../../profiling/index';
2
+ import type { ProfilingResponseMeta } from '../../../schemas/index';
3
3
  interface BaseClientTimings extends BaseTimings {
4
4
  requestZodValidationMs?: number;
5
5
  requestStringifyMs?: number;
@@ -1,20 +1,19 @@
1
- import { nowMs, record, recordPhase, recordServerBreakdownPhases, recordDelegationBreakdownPhases, } from "../../../profiling/index.js";
2
- import { getGlobalSingleton } from "../../../utils/global-singleton.js";
3
- const CONNECTION_TRACKING_STATE_KEY = Symbol.for("@qvac/sdk:rpc-connection-tracking-state");
1
+ import { nowMs, record, recordPhase, recordServerBreakdownPhases, recordDelegationBreakdownPhases } from '../../../profiling/index.js';
2
+ import { getGlobalSingleton } from '../../../utils/global-singleton.js';
3
+ const CONNECTION_TRACKING_STATE_KEY = Symbol.for('@qvac/sdk:rpc-connection-tracking-state');
4
4
  function getConnectionTrackingState() {
5
5
  return getGlobalSingleton(CONNECTION_TRACKING_STATE_KEY, () => {
6
6
  return {
7
7
  connectionTimeRecorded: false,
8
- pendingConnectionTimeMs: undefined,
8
+ pendingConnectionTimeMs: undefined
9
9
  };
10
10
  });
11
11
  }
12
12
  function recordRequestPhases(base, timings) {
13
- recordPhase(base, "request.zodValidation", timings.requestZodValidationMs);
14
- recordPhase(base, "request.stringify", timings.requestStringifyMs);
15
- if (timings.requestZodValidationMs !== undefined &&
16
- timings.requestStringifyMs !== undefined) {
17
- recordPhase(base, "request.totalSerialization", timings.requestZodValidationMs + timings.requestStringifyMs);
13
+ recordPhase(base, 'request.zodValidation', timings.requestZodValidationMs);
14
+ recordPhase(base, 'request.stringify', timings.requestStringifyMs);
15
+ if (timings.requestZodValidationMs !== undefined && timings.requestStringifyMs !== undefined) {
16
+ recordPhase(base, 'request.totalSerialization', timings.requestZodValidationMs + timings.requestStringifyMs);
18
17
  }
19
18
  }
20
19
  function createBaseTimings(profileId, requestType) {
@@ -45,10 +44,10 @@ export function flushConnectionTime() {
45
44
  state.connectionTimeRecorded = true;
46
45
  record({
47
46
  ts: nowMs(),
48
- op: "rpc",
49
- kind: "rpc",
50
- phase: "connection",
51
- ms: durationMs,
47
+ op: 'rpc',
48
+ kind: 'rpc',
49
+ phase: 'connection',
50
+ ms: durationMs
52
51
  });
53
52
  }
54
53
  export function recordClientEvents(timings, serverMeta) {
@@ -57,26 +56,24 @@ export function recordClientEvents(timings, serverMeta) {
57
56
  const base = {
58
57
  ts: now,
59
58
  op: timings.requestType,
60
- kind: "rpc",
61
- profileId: timings.profileId,
59
+ kind: 'rpc',
60
+ profileId: timings.profileId
62
61
  };
63
62
  recordRequestPhases(base, timings);
64
63
  // For unary requests, this measures send → full response received
65
- if (timings.sendStart !== undefined &&
66
- timings.firstResponseAt !== undefined) {
67
- recordPhase(base, "serverWait", timings.firstResponseAt - timings.sendStart);
64
+ if (timings.sendStart !== undefined && timings.firstResponseAt !== undefined) {
65
+ recordPhase(base, 'serverWait', timings.firstResponseAt - timings.sendStart);
68
66
  }
69
- recordPhase(base, "response.jsonParse", timings.responseJsonParseMs);
70
- recordPhase(base, "response.zodValidation", timings.responseZodValidationMs);
71
- if (timings.responseJsonParseMs !== undefined &&
72
- timings.responseZodValidationMs !== undefined) {
73
- recordPhase(base, "response.totalParsing", timings.responseJsonParseMs + timings.responseZodValidationMs);
67
+ recordPhase(base, 'response.jsonParse', timings.responseJsonParseMs);
68
+ recordPhase(base, 'response.zodValidation', timings.responseZodValidationMs);
69
+ if (timings.responseJsonParseMs !== undefined && timings.responseZodValidationMs !== undefined) {
70
+ recordPhase(base, 'response.totalParsing', timings.responseJsonParseMs + timings.responseZodValidationMs);
74
71
  }
75
- recordPhase(base, "totalClientTime", totalClientTime);
72
+ recordPhase(base, 'totalClientTime', totalClientTime);
76
73
  if (serverMeta?.server) {
77
- recordServerBreakdownPhases(base, serverMeta.server, "server");
74
+ recordServerBreakdownPhases(base, serverMeta.server, 'server');
78
75
  if (serverMeta.server.totalServerMs !== undefined) {
79
- recordPhase(base, "clientOverhead", Math.max(0, totalClientTime - serverMeta.server.totalServerMs));
76
+ recordPhase(base, 'clientOverhead', Math.max(0, totalClientTime - serverMeta.server.totalServerMs));
80
77
  }
81
78
  }
82
79
  if (serverMeta?.delegation) {
@@ -91,7 +88,7 @@ function recordOperationEvent(op) {
91
88
  ts: nowMs(),
92
89
  op: op.op,
93
90
  kind: op.kind,
94
- ms: op.ms,
91
+ ms: op.ms
95
92
  };
96
93
  if (op.profileId !== undefined)
97
94
  event.profileId = op.profileId;
@@ -109,21 +106,21 @@ export function recordClientStreamEvents(timings, serverMeta) {
109
106
  const base = {
110
107
  ts: now,
111
108
  op: timings.requestType,
112
- kind: "rpc",
113
- profileId: timings.profileId,
109
+ kind: 'rpc',
110
+ profileId: timings.profileId
114
111
  };
115
112
  recordRequestPhases(base, timings);
116
113
  if (timings.sendStart !== undefined && timings.firstChunkAt !== undefined) {
117
- recordPhase(base, "ttfb", timings.firstChunkAt - timings.sendStart);
114
+ recordPhase(base, 'ttfb', timings.firstChunkAt - timings.sendStart);
118
115
  }
119
116
  if (timings.firstChunkAt !== undefined && timings.lastChunkAt !== undefined) {
120
- recordPhase(base, "streamDuration", timings.lastChunkAt - timings.firstChunkAt);
117
+ recordPhase(base, 'streamDuration', timings.lastChunkAt - timings.firstChunkAt);
121
118
  }
122
- recordPhase(base, "totalClientTime", totalClientTime, {
123
- count: timings.chunkCount,
119
+ recordPhase(base, 'totalClientTime', totalClientTime, {
120
+ count: timings.chunkCount
124
121
  });
125
122
  if (serverMeta?.server) {
126
- recordServerBreakdownPhases(base, serverMeta.server, "server");
123
+ recordServerBreakdownPhases(base, serverMeta.server, 'server');
127
124
  }
128
125
  if (serverMeta?.delegation) {
129
126
  recordDelegationBreakdownPhases(base, serverMeta.delegation);
@@ -1,5 +1,5 @@
1
- import type RPC from "bare-rpc";
2
- import { type Request, type Response, type RPCOptions } from "../../schemas/index";
1
+ import type RPC from 'bare-rpc';
2
+ import { type Request, type Response, type RPCOptions } from '../../schemas/index';
3
3
  export declare function send<T extends Request>(request: T, options?: RPCOptions, rpc?: RPC): Promise<Response>;
4
4
  export declare function stream<T extends Request>(request: T, options?: RPCOptions, rpc?: RPC): AsyncGenerator<Response>;
5
5
  export interface DuplexWritable {